目录
- 定义
- 数据库
- 创建数据库
- 删除数据库
- 数据表
- 表
- 创建表
- 删除表
- 删除表数据
- 表添加注释
- 列
- 添加列
- 修改列
- 删除列
- 设置列默认值
- 移除列默认值
- 列添加注释
- 键
- 添加主键
- 删除主键
- 添加外键
- 删除外键
- 视图
- 创建视图
- 更新视图
- 删除视图
- 存储过程
- 普通存储过程
- 创建
- 执行
- 带参数存储过程
- 创建
- 执行
- 修改存储过程
- 删除存储过程
- 事务
- 总结
定义
以下所有sql语句中的字段含义:
data_base_name
:数据库名称
table_name
:表名
data_type
:数据类型
columnn_definition
:字段定义
column_name
:列名
view_name
:视图名
proc_name
:存储过程名
index_name
:索引名
where
:条件参数
数据库
创建数据库
CREATE DATABASE
删除数据库
DROP DATABASE
数据表
表
创建表
CREATE TABLE table_name
(
column_name1 data_type columnn_definition COMMENT '字段1备注',
column_name2 data_type columnn_definition COMMENT '字段2备注'
)
删除表
DROP TABLE
删除表数据
DELETE
表添加注释
EXECUTE sp_addextendedproperty N'MS_Description','表注释',N'user',N'dbo',N'table',N'表名'
列
添加列
ALTER TABLE table_name
ADD
修改列
ALTER TABLE table_name
ALTER COLUMN
删除列
ALTER TABLE table_name
DROP COLUMN
设置列默认值
ALTER TABLE table_name
ALTER column_name SET DEFAULT
移除列默认值
DECLARE @table_name VARCHAR(100), @column_name VARCHAR(100), @tab VARCHAR(100)
SET @table_name='表名'
SET @column_name='字段名'
declare @defname varchar(100)
declare @cmd varchar(100)
select @defname = name FROM sysobjects A JOIN sysconstraints sc ON A.id = sc.constid WHERE object_name(A.parent_obj) = @table_name AND A.xtype = 'D'AND sc.colid =(SELECT colid FROM syscolumns WHERE id = object_id(@table_name) AND name = @column_name)
select @cmd='alter table '+ @table_name+ ' drop constraint '+ @defname if @cmd is null print 'No default constraint to drop'exec (@cmd)
列添加注释
EXECUTE sp_addextendedproperty N'MS_Description','字段注释',N'user',N'dbo',N'table',N'表名',N'column',N'字段名'
键
添加主键
ALTER TABLE table_name
ADD PRIMARY KEY
删除主键
ALTER TABLE table_name
DROP PRIMARY KEY
添加外键
ALTER TABLE table_name
ADD FOREIGN KEY
删除外键
ALTER TABLE table_name
DROP FOREIGN KEY
视图
创建视图
CREATE VIEW view_name AS
--要执行的sql语句(查)
SELECT column_name FROM
更新视图
注
:视图总是显示最新的数据!每当用户查询视图时,数据库引擎通过使用视图的 SQL 语句重建数据。
ALTER VIEW view_name AS
SELECT column_name FROM
删除视图
DROP VIEW
存储过程
普通存储过程
创建
CREATE PROCEDURE proc_name
AS
BEGIN
--要执行的sql语句(增删改查)
SELECT * FROM table_name
END
执行
EXEC
带参数存储过程
创建
CREATE PROCEDURE proc_name @where1 data_type,@where2 data_type
AS
BEGIN
--要执行的sql语句(增删改查)
SELECT * FROM table_name
WHERE column_name = @where1
AND column_name = @where2
END
执行
EXEC proc_name @where1='',@where2=''
修改存储过程
ALTER PROCEDURE proc_name
AS
BEGIN
--要执行的sql语句(增删改查)
SELECT * FROM table_name
END
删除存储过程
DROP PROCEDURE IF EXISTS
事务
--开始事务
BEGIN TRANSACTION
--
--要执行的sql语句(增删改)
--
--提交事务(开启事务后,必须提交事务,数据才会更新)
COMMIT TRANSACTION
--回滚事务(回滚则将数据还原到sql操作之前)
ROLLBACK TRANSACTION
总结
以上就是关于SQL Server的基本语法了,感谢支持!