--1 创建数据库
1 DROP DATABASE mydb1 2 CREATE DATABASE mydb1 ON ( NAME =‘mydb1‘,FILENAME=‘D:\mydb1.mdf‘) 3 LOG ON (NAME=‘mydb1_log‘ ,FILENAME=‘D:\mydb1_log.ldf‘)
--示例
1 CREATE DATABASE 高校管理系统数据库 ON ( NAME =‘mydb1‘,FILENAME=‘D:\高校管理系统数据库.mdf‘,SIZE=5MB, 2 MAXSIZE =UNLIMITED,FILEGROWTH=1MB) 3 LOG ON (NAME=‘mydb1_log‘ ,FILENAME=‘D:\高校管理系统数据库_log.ldf‘,SIZE=1MB,MAXSIZE=2GB,FILEGROWTH=10%)
--2 自定义函数
1 create function 函数名(形参名 as 数据类型) 2 returns 返回类型 3 as 4 begin 5 --函数体 6 return 表达式 7 end
--示例
1 CREATE DATABASE Demo数据库 ON ( NAME =‘mydb1‘,FILENAME=‘D:\Demo数据库.mdf‘,SIZE=5MB, 2 MAXSIZE =UNLIMITED,FILEGROWTH=1MB) 3 LOG ON (NAME=‘mydb1_log‘ ,FILENAME=‘D:\Demo数据库_log.ldf‘,SIZE=1MB,MAXSIZE=2GB,FILEGROWTH=10%)
--3 创建表的同时指定所有的约束
1 CREATE TABLE TestTable 2 ( 3 id INT PRIMARY KEY NOT NULL,--主键 4 id_identity INT IDENTITY(1,1) NOT NULL,--自增长列 5 id_GUID UNIQUEIDENTIFIER ROWGUIDCOL NOT NULL DEFAULT (NEWID()) ,--全球唯一标识符 6 id_unquel INT UNIQUE,--唯一约束 7 stuid INT NOT NULL FOREIGN KEY REFERENCES stu(id),--外键 8 CHECK(id >=18 AND id<=50) --约束检查 9 )
--4 删除某个约束的方法
1 ALTER TABLE 表名 DROP CONSTRAINT 约束名
--5 添加主键
ALTER TABLE 表名 ADD CONSTRAINT 主键名 primary key(列名)
--6 查询语法
SELECT[ALL | DISTINCT ] [TOP n [PERCENT] ] select_list
FROM{<表资源>}[,…n]
[WHERE]<搜索条件>
[GROUP BY]{<分组表达式>}[,…n][HAVING]<搜索条件>
[ORDER BY]{<字段名[ASC|DESC]>}[,…n]
--7 创建视图语法
CREATE VIEW 视图名 AS SELECT 语句 GO
1 --创建 2 CREATE VIEW TestView 3 AS 4 SELECT * FROM dbo.test 5 GO 6 --调用(像查询表一样) 7 SELECT * FROM TestView 8 --修改 9 ALTER VIEW TestView 10 AS 11 SELECT * FROM dbo.test 12 GO 13 --删除 14 DROP VIEW TestView
--8 创建存储过程语法
1 CREATE PROC 储存过程名 2 @参数in 数据类型=默认值, 3 @参数out 数据类型 OUT 4 AS 5 SQL 语句 6 GO
1 --创建 2 CREATE PROC TestProc 3 @stuId INT,--输入参数 4 @count INT OUT ,--输出参数 5 @name NVARCHAR(20)=‘zhangsan‘ --输入参数带默认值 6 AS 7 BEGIN 8 SELECT * FROM dbo.Students WHERE stuid =@stuId AND name=@name 9 SELECT @count =COUNT(@stuId) FROM Students 10 END 11 GO 12 13 --调用 14 DECLARE @cou INT 15 EXEC TestProc @stuid=2,@count=@cou OUTPUT,@name=‘zhangsan‘ 16 PRINT @cou 17 GO 18 --修改删除同试图
--9 创建触发器
1 CREATE TRIGGER 触发器名 ON {TABLE|view} [WITH <dml_trigger_option>[,....n]] 2 {for|after|INSTEAD of}[delete,insert,update] 3 AS 4 SQL 语句 5 GO
--10 事务
--T-SQL 定义事务的语句有
--开始事务 Begin Tran
--提交事务 Commit Tran
--回滚事务 Rollback Tran
--示例
1 --开始事务 2 BEGIN TRANSACTION 3 PRINT ‘转账事务前的余额:‘ 4 SELECT * FROM back 5 GO 6 --定义变量,用于累计事务执行过程中的错误 7 DECLARE @errors INT 8 SET @errors=0 9 --转账 10 UPDATE back SET currentMoney=currentMoney-1000 WHERE currentName=‘张三‘ 11 --累计错误 12 SET @errors=@errors+@@ERROR 13 PRINT ‘转账事务过程中的余额‘ 14 SELECT * FROM back 15 16 --判断是否有错误 17 IF @errors <>0--有错误 18 BEGIN PRINT ‘交易失败‘ 19 ROLLBACK TRANSACTION 20 END 21 ELSE 22 BEGIN 23 PRINT‘交易成功‘ 24 COMMIT TRANSACTION 25 END 26 GO
时间: 2024-10-13 11:11:00