1.定义模式[例3.1]为用户WANG定义一个“学生选课”模式S-C-SCCREATE SCHEMA"S-C-SC"AUTHORIZATION WANGT例3.21CREATESCHEMAAUTHORIZATIONWANG该语句没有指定<模式名>,<模式名>隐含为用户名WANG
1. 定义模式 [例3.1] 为用户WANG定义一个“学生选课”模式S-C-SC CREATE SCHEMA “S-C-SC” AUTHORIZATION WANG; [例3.2] CREATE SCHEMA AUTHORIZATION WANG; 该语句没有指定<模式名>,<模式名>隐含为 用户名WANG
定义模式(续)×定义模式实际上定义了一个命名空间×在这个空间中可以定义该模式包含的数据库对象,例如基本表、视图、索引等。X在CREATESCHEMA中可以接受CREATETABLECREATEVIEW和GRANT子句。CREATESCHEMA<模式名>AUTHORIZATION<用户名><表定义子句><视图定义子句><授权定义子句>
定义模式(续) 定义模式实际上定义了一个命名空间。 在这个空间中可以定义该模式包含的数据库 对象,例如基本表、视图、索引等。 在CREATE SCHEMA中可以接受CREATE TABLE, CREATE VIEW和GRANT子句。 CREATE SCHEMA <模式名> AUTHORIZATION <用 户名>[<表定义子句>|<视图定义子句>|<授权定 义子句>]
定义模式(续)【例3.3】为用户ZHANG创建一个模式Test,并且在其中定义一个表Tab1。CREATE SCHEMA Test AUTHORIZATIONZhangCREATETABLETab1(CoI1SMALLINTCol2 INT,Co13CHAR(2O)Col4NUMERIC(1O,3)Co5DECIMAL(52));
定义模式(续) [例3.3] 为用户ZHANG创建一个模式Test,并且在其中 定义一个表Tab1。 CREATE SCHEMA Test AUTHORIZATION Zhang CREATE TABLE Tab1(Col1 SMALLINT, Col2 INT, Col3 CHAR(20), Col4 NUMERIC(10,3), Col5 DECIMAL(5,2) );
2.删除模式DROPSCHEMA<模式名>X<CASCADEIRESTRICT>+CASCADE(级联)删除模式的同时把该模式中所有的数据库对象全部删除+RESTRICT(限制)如果该模式中定义了数据库对象(如表、视图等),则拒绝该删除语句的执行。+仅当该模式中没有任何下属的对象时才能执行
2. 删除模式 DROP SCHEMA <模式名> <CASCADE|RESTRICT> CASCADE(级联) 删除模式的同时把该模式中所有的数据库对 象全部删除 RESTRICT(限制) 如果该模式中定义了数据库对象(如表、视 图等),则拒绝该删除语句的执行。 仅当该模式中没有任何下属的对象 时才能执行
删除模式(续)[例3.4]DROPSCHEMATest CASCADE;删除模式Test该模式中定义的表Tab1也被删除
删除模式(续) [例3.4] DROP SCHEMA Test CASCADE; 删除模式Test 该模式中定义的表Tab1也被删除