在 sql server 下创建表的时候哦,每次都是默认创建在 dbo
模式下,使用以下代码可将表创建在指定模式下。
1. 创建模式
-- 用户名要提前创建好并赋予相应权限,否则会报错
CREATE SCHEMA <模式名> AUTHORIZATION <用户名>;
2. 在该模式下创建表
CREATE TABLE <模式名>.<表名>(
<列名> <数据类型> [列级完整约束性条件],
<列名> <数据类型> [列级完整约束性条件],
...
[表级完整约束性条件]
);
注意:若表级完整约束性条件中出现了表名,则表名前也要加上
<模式名>
。
示例:
-- 在 TEST 数据库下创建 TEST 模式(用户为已创建好的 CHEN)
USE TEST;
CREATE SCHEMA TEST AUTHORIZATION CHEN;
-- 在 TEST 模式下创建表
CREATE TABLE TEST.Course(
Cno CHAR(4) PRIMARY KEY,
Cname CHAR(40) NOT NULL,
Cpno CHAR(4),
Ccredit SMALLINT,
FOREIGN KEY (Cpno) REFERENCES TEST.Course(Cno)
-- 注意 TEST.Course
);
创建成功,如下所示: