.创建数据库的语法
create database 数据库名
(
name=逻辑名称,
filename='物理名称'
size=初始大小,
maxsize=最大容量, --unlimited, --无限大
filegrowth=增长比例
)
.判断数据库或者表或者索引等是否存在
if exists(查询数据库名或者表名或者索引名等的查询语句)
数据库名在:sysdatabases表中
表名/存储过程在:sysobjects表中
索引名在:sysindexes表中
.创建表的语法
create table 表名
(
列名 数据类型 是否为空 约束类型
)
.定义变量
declare @变量名 数据类型
变量赋值
set @变量名=值
select @变量名=列名 from 表名 //返回单个值或者要在查询中保存结果到变量
变量的输出
print
.创建索引
create [nonclustered] index 索引名 //中括号内的参数可选
on 表名(列名)
with fillfactor=值 --值为1-100之间的数,通常为70左右
.创建试图
create view 视图名
as
sql语句
.创建存储过程
create procedure 存储过程名[@输入参数 数据类型=默认值,@输出参数 数据类型 output=默认值]
//可以创建带参和不带参的,也可以指定是否带默认值,参数可以有输入参数和输出参数,输出参数后面跟output
.使用存储过程
使用exec 存储过程名 [输入参数,输出参数 output]
如果带有输出参数必须先定义变量 使用变量接受输出参数
即:
declare @变量名 数据类型
exec 存储过程名 输入参数值,@变量名 output
.删除数据库/表/索引
drop database 数据库名
drop table 表名
drop index 表名.索引名
drop procedure 存储方法名
drop view 视图名
.创建约束
alter table 表名 add constraint 约束名 约束类型
主键约束:primary key(列名)
外键约束:foregin key(列名) references 主表名(主键名)
唯一约束:unique(列名)
默认约束:default(默认值) for 列名
check约束:check(条件)
//标识列可以在创建列的时候,使用identity(1,1)
.逻辑控制语句
begin-end --相当于{},既if,while内带多条语句的时候需要使用begin-end包含起来
if-else --和C#内的用法一样
whlie --使用方法和C#内一样,另不固定的循环次数可以使用(1=1)
case when-then end --列名=case when(如果)..then(那么)..
.子查询
如果返回单个值直接用=号连接括号里的子查询
如果结果返回多个值就用in连接括号后面的子查询
.在磁盘中创建文件夹的语法
exec xp_cmdshell 'mkdir 要创建的文件夹路径'
.分页查询
row_number() over (order by 列名)
例:
DECLARE @pageIndex INT --第一页
DECLARE @pageSize INT --每页显示几行
set @pageIndex=第几页
set @pageIndex=每页显示几行
select * from (select 行=row_number() over(oredr by 列名) ,*from 表名) as 别名
where 行 between (@pageIndex-1)*@pageSize+1 and @pageIndex*@pagesize
.去掉重复的
distinct(列名)
.异常处理
raiserror('输出文字%d(%s)',1-16的值,1,int类型变量(字符串类型变量))
.随机数的产生
例:产生一个5位编号,头两位是'DF',后3位使用随机产生的数.
DECLARE @rand NUMERIC(4,3),@num VARCHAR(5)
SET @rand=rand()
SET @num='DF'+substring(CONVERT(VARCHAR(5),@rand),3,3)
PRINT @num
.往一个表中添加新的列
alter table 表名 add 列名 数据类型
.删除约束
alter table 表名 drop constraint 约束名
.查看数据库属性
exec sp_helpdb 数据库名
.修改列数据类型:
alter table 表名 alter column 列名 数据类型 列状态
.删除表中指定列:
alter table 表名 drop column 列名
.默认值对象
//创建
create default 默认值对象名 as 默认值
//绑定
exec sp_bindefault 默认值对象名,'表名.列名'
//取消绑定
exec sp_unbindefault 默认值对象名,'表名.列名'
//删除默认值对象
drop default 默认值对象名
.规则约束对象
//创建
create rule 规则约束对象名 as 约束
//绑定
exec sp_binrule 规则约束对象名,'表名.列名'
//取消绑定
exec sp_unbinrule 规则约束对象名,'表名'
//删除规则约束对象
drop rule 规则约束对象名