目录
定义
以下所有sql语句中的字段含义:
data_base_name
:数据库名称
table_name
:表名
data_type
:数据类型
columnn_definition
:字段定义
column_name
:列名
view_name
:视图名
proc_name
:存储过程名
index_name
:索引名
where
:条件参数
数据库
创建数据库
CREATE DATABASE data_base_name
GO
删除数据库
DROP DATABASE data_base_name
GO
数据表
表
创建表
CREATE TABLE table_name
(
column_name1 data_type columnn_definition COMMENT '字段1备注',
column_name2 data_type columnn_definition COMMENT '字段2备注'
)
GO
删除表
DROP TABLE table_name
GO
删除表数据
DELETE table_name
GO
添加表注释
EXECUTE sys.sp_addextendedproperty @name=N'MS_Description', @value=N'表注释' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'表名'
修改表注释
EXECUTE sp_updateextendedproperty @name=N'MS_Description', @value=N'表注释' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'表名'
列
添加列
ALTER TABLE table_name
ADD column_name data_type
GO
修改列
ALTER TABLE table_name
ALTER COLUMN column_name data_type
GO
删除列
ALTER TABLE table_name
DROP COLUMN column_name
GO
设置列默认值
ALTER TABLE table_name
ALTER column_name SET DEFAULT 默认值
GO
移除列默认值
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 sys.sp_addextendedproperty @name=N'MS_Description', @value=N'字段注释' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'表名', @level2type=N'COLUMN',@level2name=N'字段名'
修改列注释
EXECUTE sp_updateextendedproperty @name=N'MS_Description', @value=N'字段注释' , @level0type=N'SCHEMA',@level0name=N'dbo', @level1type=N'TABLE',@level1name=N'表名', @level2type=N'COLUMN',@level2name=N'字段名'
键
添加主键
ALTER TABLE table_name
ADD PRIMARY KEY column_name
GO
删除主键
ALTER TABLE table_name
DROP PRIMARY KEY column_name
GO
添加外键
ALTER TABLE table_name
ADD FOREIGN KEY column_name
GO
删除外键
ALTER TABLE table_name
DROP FOREIGN KEY column_name
GO
视图
创建视图
CREATE VIEW view_name AS
--要执行的sql语句(查)
SELECT column_name FROM table_name
GO
更新视图
注
:视图总是显示最新的数据!每当用户查询视图时,数据库引擎通过使用视图的 SQL 语句重建数据。
ALTER VIEW view_name AS
SELECT column_name FROM table_name
GO
删除视图
DROP VIEW view_name
GO
存储过程
普通存储过程
创建
CREATE PROCEDURE proc_name
AS
BEGIN
--要执行的sql语句(增删改查)
SELECT * FROM table_name
END
GO
执行
EXEC proc_name
GO
带参数存储过程
创建
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
GO
执行
EXEC proc_name @where1='',@where2=''
GO
修改存储过程
ALTER PROCEDURE proc_name
AS
BEGIN
--要执行的sql语句(增删改查)
SELECT * FROM table_name
END
GO
删除存储过程
DROP PROCEDURE IF EXISTS proc_name
GO
事务
--开始事务
BEGIN TRANSACTION
--
--要执行的sql语句(增删改)
--
--提交事务(开启事务后,必须提交事务,数据才会更新)
COMMIT TRANSACTION
--回滚事务(回滚则将数据还原到sql操作之前)
ROLLBACK TRANSACTION
总结
以上就是关于SQL Server的基本语法了,感谢支持!