SQL语句
一.数据定义语句DDL
1.CREATE
CREATE DATABASE test ON PRIMARY --建立主数据文件 (NAME=‘test‘, FILENAME=‘E:\MSSQL_DATA\test.mdf‘, SIZE=5, MAXSIZE=5, FILEGROWTH=1) LOG ON ( NAME=test_log, FILENAME=‘E:\MSSQL_LOG\test_log.ldf‘, SIZE=1, MAXSIZE=2, FILEGROWTH=1 )
use test create table teacher( ID int Identity(1,1) not null, --identity表示自增,从1开始每次自增1 Name varchar(20) not null, Sex char(2) null, Phone varchar(20) not null, Sallary smallmoney null, Address varchar(100) null, Email varchar(30) null) --可变长度,最大为255个字符
2.DROP
DROP DATABASE test DROP TABLE teacher --注意和delete的区别,delete teacher是删除表teacher中的所有数据,DROP是删除表
3.ALTER
add、remove、modify
ALTER DATABASE test modify name=test_t ALTER TABLE teacher add Subject varchar(30) null ALTER TABLE teacher --每次修改之前都要加一句ALTER,不能连续写2行 DROP COLUMN price
--加入组 ALTER DATABASE test ADD FILEGROUP test_group --连续加入2个次数据文件 ALTER DATABASE test ADD FILE (NAME=test1, FILENAME=‘E:\MSSQL_DATA\test1.ndf‘, SIZE=5, MAXSIZE=5, FILEGROWTH=1), ( NAME=test2, FILENAME=‘E:\MSSQL_DATA\test2.ndf‘, SIZE=5, MAXSIZE=5, FILEGROWTH=1 ) to filegroup test_group GO ALTER DATABASE test ADD LOG FILE( NAME=testlog1, FILENAME=‘E:\MSSQL_LOG\testlog1.ldf‘, SIZE=1, MAXSIZE=3, FILEGROWTH=1) GO --删除数据文件和组 ALTER DATABASE test remove file test2 ALTER DATABASE test remove filegroup tesst_group
二.数据操作语句DML
1.INSERT
- identity
在 insert into 该 table 时, 不能指定该 identity 栏位值.
identity 由资料库维护, 所以一般要在 insert 后取得该 identity 栏位值, 利用全局变量 @@identity 来取得最后影响的 insert 后产生的 identity 值.
显示地插入identity值后,不能update,只能插入。并且插入之后,不改变原来的identity的最大值,仍然在前一次自动插入的值的基础上加1.
查询目前的最大identity值,修改最大值,都用命令dbcc。只有当之前设置的identity比目前的值小,恢复时才会恢复到以前的比较大的identity值,否则不会改变。
--显示插入以及identity值的引用 set identity_insert teacher on insert into teacher(ID,Name,Sex,Phone,Sallary) values(@@IDENTITY+1,‘wangying‘,‘nv‘,‘1812‘,10000) select * from teacher set identity_insert teacher off set identity_insert teacher on insert into teacher(ID,Name,Sex,Phone,Sallary) values(1,‘wangying‘,‘nv‘,‘1812‘,10000) select * from teacher set identity_insert teacher off --在insert into该table时,不能指定该identity栏位的值 insert into teacher(Name,Sex,Phone,Sallary) values(‘wangying‘,‘nv‘,‘1812‘,10000) select * from teacher insert into teacher values(‘wangying‘,‘nv‘,‘1812‘,10000,null,null,null) select * from teacher --查询目前identity的最大值 dbcc checkident(‘teacher‘,NORESEED) --修改目前identity的最大值以及重设该值 dbcc checkident(‘teacher‘,RESEED,100) dbcc checkident(‘teacher‘,RESEED)
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。