Transact-SQL数据库基本操作

发表于:2013-8-08 10:00

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:phunxm    来源:51Testing软件测试网采编

  一.创建、修改、删除数据库(database)

/*创建数据库*/
create database USER_INFO
/*
ON(可选):指定存放数据库的数据文件信息;
LOG ON(可选):指明事务日志文件的明确定义。
FILENAME用于指定数据库文件存储目录,否则默认存放在
%Program Files%Microsoft SQLServer\MSSQL\Data
*/
ON
(
NAME = USER_INFO_Data,
FILENAME ='d:\My Documents\
SQL Server 2000-DB\USER_INFO.mdf'
)
LOG ON
(
NAME = USER_INFO_log,
FILENAME ='d:\My Documents\
SQL Server 2000-DB\USER_INFO.ldf'
)
/*修改数据库名称*/
sp_renamedb 'USER_INFO','ExamSystem';
/*删除数据库*/
drop database USER_INFO

  二.创建、修改、删除数据表(table)

/*创建部门表*/
create table DEPARTMENT
(DEPT_ID         int            NOT NULL,
DEPT_NAME       varchar(20)  NOT NULL,
PARENT_DEPT_ID  int          default NULL,
primary key (DEPT_ID)
)
/*创建用户信息表*/
create table USER_INFO
(
/*字段名   数据类型       能否为空 */
USER_NO  CHAR(6)      NOT NULL,
NAME     VARCHAR(20)  NOT NULL,
DEPT_ID  INTEGER      NOT NULL,
JOB_ID   INTEGER      NOT NULL,
GRADE    TINYINT      NOT NULL,
STATE    TINYINT      NOT NULL
primary key (USER_NO)/*定义主键*/
foreign key (DEPT_ID)/*指定外键*/
references DEPARTMENT
on delete set null
)
/*references DEPARTMENT on delete[restrict|cascade|set null]*/
1.restrict:表示当表DEPTMENT中的某DEPT_ID被表USER_INFO引用时,禁止删除表DEPTMENT中的DEPT_ID=USER_INFO.DEPT_ID的部门记录。
2.cascade: 表示当表DEPTMENT中的某DEPT_ID被表USER_INFO引用时,若删除表DEPTMENT中的DEPT_ID=USER_INFO.DEPT_ID的部门记录,则表USER_INFO中的该条记录也被删除。
3.set null: 表示当表DEPTMENT中的某DEPT_ID被表USER_INFO引用时,若删除表DEPTMENT中的DEPT_ID=USER_INFO.DEPT_ID的部门记录,则表USER_INFO中的该条记录的DEPT_ID相应更改为null。
/*修改数据表名称*/
sp_rename 'USER_INFO','USER_DETAILS';
/*删除表*/
drop table USER_INFO

21/212>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号