我是一个完整的SQL Server新手,但我有Oracle和MySQL的经验。我正在使用SQL Server Management Studio。
我有一个现有的数据库,我想创建视图,但我希望这些视图驻留在另一个数据库(模式?)中,可以通过可以通过JDBC连接的单独用户帐户访问。
我可以轻松地创建数据库,右键单击“数据库”并选择“新数据库”。从那里我迷失了。
1)如何将一个数据库的选择/更新/删除权限(创建和更新视图)授予新数据库?
2)如何创建新用户?
3)如何为用户授予权限?
提前致谢。
答案 0 :(得分:1)
就像马丁所说,你需要一个新的架构而不是数据库。
CREATE SCHEMA [SchemaName] AUTHORIZATION dbo;
然后在新模式名称下创建视图,
创建登录[LoginName] {FROM WINDOWS}(如果您使用的是AD组)
USE [DatabaseName];
CREATE USER [LoginName / Username]; (它们可以是相同的)
GRANT EXECUTE,SELECT,INSERT,DELETE,查看Schema :: [NewSchemaName] TO [LoginName / Username];
的定义如果您想拥有一个角色,请在数据库下创建角色,并使UserName成为角色的成员,并授予该角色的权限。