笔记263 SQLSERVER2005中的架构
笔记263 SQLSERVER2005中的架构
1 --SQLSERVER2005中的架构 2 3 --AUTHORIZATION dbo:指定“将拥有架构的数据库主体的名称”。此主体还可以拥有其他架构 4 --并且可以不使用当前架构作为其默认架构 5 6 --将创建一个架构sales,架构的拥有者是数据库用户dbo,在创建架构的同时在架构中创建表 7 --Products。此语句向数据库用户James授予select权限,而对tom拒绝授予select权限 8 USE [AdventureWorks] 9 GO 10 CREATE SCHEMA sales AUTHORIZATION dbo 11 CREATE TABLE Products(product INT,productname VARCHAR(200)) 12 GRANT SELECT TO james 13 DENY SELECT TO tom 14 15 --设置数据对象的架构 16 --每个数据库中的用户都有默认架构。当用户在数据库中创建对象(如数据表)时, 17 --数据库对象存储在用户的默认架构中 18 --例程:4.11 在AdventureWorks数据库中有一个用户叫“Litao”,他的默认架构是dbo 19 --当这个用户执行以下SQL语句,创建名为Employees表的时候,Employees表默认 20 --存储在dbo架构中。注意,用户必须是数据库db_ddladmin角色的成员或者拥有 21 --创建对象的权限 22 USE [AdventureWorks] 23 GO 24 CREATE TABLE Employees 25 ( 26 EmployeeID INT NOT NULL, 27 LastName VARCHAR(50) NOT NULL, 28 FirstName VARCHAR(50) NOT NULL 29 ) 30 31 --如果“Litao”要在Finance架构中创建Employees表,则他需要在Create Table 32 --语句中增加架构的限定 33 USE [AdventureWorks] 34 GO 35 CREATE TABLE Finance.Employees --架构限定 36 ( 37 EmployeeID INT NOT NULL, 38 LastName VARCHAR(50) NOT NULL, 39 FirstName VARCHAR(50) NOT NULL 40 ) 41 42 43 --SSMS里要修改表的架构可以在右键-》设计 ,打开设计表窗口,然后在属性窗口修改表的架构