常用SQL语句

  我们在写sql语句过程中,有些sql是经常需要使用的,比较通用。为此我专门将它们整理出来,以供需要时查询,SQL代码如下。

  1 -------------------------一,数据库操作-----------------------------
  2 ------------1,创建数据库------------------
  3 IF DB_ID(TestDB) IS NOT NULL DROP DATABASE TestDB;
  4 
  5 CREATE DATABASE TestDB ON 
  6 (
  7     NAME=TestDB,
  8     FILENAME=d:\mcgrady\db\TestDB.mdf,
  9     SIZE=4,
 10     MAXSIZE=10,
 11     FILEGROWTH=1
 12 );
 13 
 14 ------------2,备份数据库------------------
 15 BACKUP DATABASE TestDB TO DISK=d:\mcgrady\db\bak\TestDB.bak;
 16 
 17 ------------4,删除数据库------------------
 18 --IF DB_ID(‘TestDB‘) IS NOT NULL DROP DATABASE TestDB;
 19 
 20 ------------5,删除数据库日志文件------------------
 21 --DBCC ERRORLOG
 22 --GO 6
 23 
 24 -------------------------二,数据表操作-----------------------------
 25 USE TestDB;
 26 GO
 27 ------------1,创建数据表------------------
 28 IF OBJECT_ID(dbo.SM_User) IS NOT NULL DROP TABLE dbo.SM_User;
 29 
 30 CREATE TABLE SM_User
 31 (
 32     ID INT NOT NULL IDENTITY,
 33     UserId NVARCHAR(20) NOT NULL,
 34     PASSWORD NVARCHAR(20) NOT NULL,
 35     NAME NVARCHAR(20) NOT NULL,
 36     Gender TINYINT NULL
 37         CONSTRAINT DFT_User_Gender DEFAULT(0),
 38     CreateTime DATETIME NULL
 39         CONSTRAINT DFT_User_CreateTime DEFAULT(GETDATE()),
 40     DESCRIPTION NVARCHAR(max) NULL,
 41     CONSTRAINT PK_SM_User PRIMARY KEY(ID)
 42 );
 43 
 44 ------------2,删除数据表------------------
 45 --IF OBJECT_ID(‘dbo.SM_User‘) IS NOT NULL DROP TABLE dbo.SM_User; -- 也可以使用TRUNCATE TABLE
 46 
 47 -------------------------三,字段操作-----------------------------
 48 ------------1,添加字段------------------
 49 ALTER TABLE dbo.SM_User ADD Item1 NVARCHAR(MAX) NULL;
 50 
 51 ------------2,修改字段------------------
 52 ALTER TABLE dbo.SM_User ALTER COLUMN Item1 NVARCHAR(50);
 53 
 54 ------------3,删除字段------------------
 55 ALTER TABLE dbo.SM_User DROP COLUMN Item1;
 56 
 57 ------------4,添加约束------------------
 58 ALTER TABLE dbo.SM_User ADD CONSTRAINT chk_user_createtime CHECK(CreateTime<=GETDATE());
 59 
 60 ------------5,删除约束------------------
 61 ALTER TABLE dbo.SM_User DROP CONSTRAINT chk_user_createtime;
 62 
 63 ------------6,添加默认值----------------
 64 ALTER TABLE dbo.SM_User ADD CONSTRAINT DFT_User_Password DEFAULT 123 FOR PASSWORD;
 65 
 66 ------------7,删除默认值----------------
 67 ALTER TABLE dbo.SM_User DROP CONSTRAINT DFT_User_Password;
 68 
 69 ------------8,数据表和字段描述信息操作----------------
 70 --为表添加描述信息  
 71 EXEC sp_addextendedproperty NMS_Description , N人员信息表 , NSCHEMA , Ndbo , NTABLE , N表名 , NULL , NULL  
 72   
 73 --为字段XingMing添加描述信息  
 74 EXEC sp_addextendedproperty NMS_Description , N姓名 , NSCHEMA , Ndbo , NTABLE , N表名 , NCOLUMN , NXingMing  
 75   
 76 --更新表中列XingMing的描述属性:  
 77 EXEC sp_updateextendedproperty NMS_Description , N真实姓名 , NSCHEMA , Ndbo , TABLE , 表名 , COLUMN , NXingMing  
 78   
 79 --删除表中列XingMing的描述属性:  
 80 EXEC sp_dropextendedproperty NMS_Description , NSCHEMA , Ndbo , TABLE , 表名 , COLUMN , NXingMing 
 81 
 82 -------------------------四,其它操作-----------------------------
 83 ------------1,清除查询缓存----------------
 84 DBCC FREEPROCCACHE
 85 DBCC DROPCLEANBUFFERS
 86 ------------2,随机取10条数据--------------
 87 SELECT TOP 10 * FROM [表名] ORDER BY NEWID();
 88 
 89 ------------3,以逗号连接结果集所有行,使之变为一行----------------
 90 DECLARE @result NVARCHAR(MAX)  
 91 SET @result = N‘‘  
 92 SELECT @result = @result + N, + Name FROM @Student  
 93   
 94 SELECT RIGHT(@result,LEN(@result) - 1);
 95 
 96 ------------4,向数据库中添加n条数据----------------
 97 DECLARE @i int  
 98 SET @i=1  
 99 WHILE @i<=5000  
100 BEGIN  
101   INSERT INTO users(userid,username) VALUES (@i,username convert(varchar(255),@i));
102   SET @i=@i+1  
103 END

 参考文章

1,柳永法常用SQL语句备忘

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。