SQL中模式的定义和删除

以下代码sqlserver2012
定义模式

creat schema <模式名> authorization <用户名>


例:
--模式的创建和删除
--为用户sa定义一个学生-课程模式S-T
create schema test authorization U1

--然后在test模式在建立相应的表
create table test.TAB1 
(
COL1 smallint,
COL2 int,
COL3 char(20),
COL4 numeric(10,3),
COL5 decimal(5,2)
)
insert into test.TAB1 values (1, 11, 'hello', '12.323', '12.12')
select * from test.TAB1

删除模式
–删除模式

--删除模式
drop schema <模式名> <cascade|restrict>
cascade(级联)表示在删除模式的同时把该模式中所有的数据库对象全部删除
restrict(限制)表示如果该模式中已经定义了下属的数据库对象,如表或视图等,则拒绝该删除语句的执行。

--cascade(级联),   restrict(限制),(不过sqlserver 并没有这两个选项),需要手动先删除模式下的数据库对象(表,视图...)
drop table test.TAB1
drop schema test

模式的结构
1.模式 create schema… , drop schema..
2.表 create table … , drop table …
3.视图 create view … , drop view….
4.索引 create index, drop index

数据库->模式->表,视图…

SQL模式一般默认是dbo,但是在项目开发中,有可能会用到自己定义的模式

你可能感兴趣的:(数据库)