道歉这么长,但我看到了太多的问题,其中包含的信息太少...如果有人在前几行中看到我的错误,我会很高兴...
我有一个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)