小编Tim*_*ick的帖子

SqlConnection忽略用户的默认架构

道歉这么长,但我看到了太多的问题,其中包含的信息太少...如果有人在前几行中看到我的错误,我会很高兴...

我有一个SQL Server 2008 R2数据库,并且在通过C#SqlConnection连接时无法获得我认为应该是正确的行为。

我有两个使用Visual C#2010 Express构建的C#应用​​程序:

  • 一种用于数据导入/导出/报告和浏览
  • 一种用于做一些复杂的处理

这一切都在Windows 7上,具有所有更新等...

这两个应用程序中的每个应用程序使用的某些表是共享的公用表,而其他表则需要保持分开。由于我需要能够在双方之间转换和传输数据,因此我希望将所有这些都保存在一个数据库中。

为了保持一定程度的分离,我创建了两个模式,两个用户,两个角色和两个登录名,例如:

CREATE LOGIN [Import_User] WITH PASSWORD=N'*****'
CREATE LOGIN [Engine_User] WITH PASSWORD=N'*****'

CREATE USER [Import_User] FOR LOGIN [Import_User] WITH DEFAULT_SCHEMA=[Import_Schema]
CREATE USER [Engine_User] FOR LOGIN [Engine_User] WITH DEFAULT_SCHEMA=[Engine_Schema]

CREATE ROLE [Import_Role] AUTHORIZATION [dbo]
CREATE ROLE [Engine_Role] AUTHORIZATION [dbo]

EXEC('CREATE SCHEMA [Import_Schema] AUTHORIZATION [Import_User]')
EXEC('CREATE SCHEMA [Engine_Schema] AUTHORIZATION [Engine_User]')

-- Import role permissions on the Import schema
GRANT EXECUTE, DELETE, INSERT, SELECT, UPDATE, REFERENCES ON SCHEMA::[Import_Schema] TO [Import_Role]

-- …
Run Code Online (Sandbox Code Playgroud)

c# schema default sqlconnection

5
推荐指数
1
解决办法
1371
查看次数

标签 统计

c# ×1

default ×1

schema ×1

sqlconnection ×1