SQL Server常用SQL语句整理

来源:互联网 发布:亚马逊广告关键词优化 编辑:程序博客网 时间:2024/05/18 21:38

--查询出所有的库名--
select * from master.dbo.sysdatabases WHERE name LIKE '%aa%' ; 
--列出所有表1
SELECT * FROM INFORMATION_SCHEMA.tables  WHERE TABLE_TYPE='BASE TABLE';
--列出所有表2
select * from sysobjects where type='U' and status>=0 ;
--查看与某一个表相关的视图、存储过程、函数
select a.* from sysobjects a, syscomments b where a.id = b.id and b.text like '%course%';
--查看当前数据库中所有存储过程
select name as 存储过程名称 from sysobjects where xtype='P'

--列出所有触发器
select * from sysobjects where xtype='TR';
--查看单个触发器
exec sp_helptext 'UpdateEndDate'

--查询表的列名
select  name  from  syscolumns where id=object_id('TABLE_NAME');
--表结构修改--
 ALTER TABLE dbo.TABLE_NAME ADD test VARCHAR(20) DEFAULT(0) WITH VALUES ;  --为表增加列并写默认值--

 ALTER TABLE TABLE_NAME DROP column payTypeID  ;  --删除payTypeID字段--
 ALTER TABLE TABLE_NAME ADD CONSTRAINT DF_ORDER_Money  DEFAULT(0) FOR orderMoney;   --为orderMoney字段加缺省值--
 ALTER TABLE TABLE_NAME drop constraint PK_OP_CART ;   --删除cartID主键约束--
 sp_rename 'TABLE_NAME.amount', 'wareNum', 'COLUMN' ;  --amount字段重命名
 ALTER TABLE TABLE_NAME add constraint PK_OP_CART primary key (userID,wareID) ; --增加联合主键约束
--导数据--
 INSERT INTO db1.dbo.test_Course SELECT * FROM tmp_db.dbo.Course;  --跨库批量insert--
 SELECT * INTO db1.dbo.test_Course FROM tmp_db.dbo.Course;  --跨库复制表数据(同时建表)--
 
--字段自增1-- 
UPDATE tset_table  SET downloadNum = (downloadnum+1) WHERE courseid=#courseid#
--去掉表中某一字段单引号
UPDATE  TABLE_NAME SET jobNumber=replace(jobNumber, '''', '') ;
--查看某个字段是否包含大写字母:
SELECT * FROM TABLE_NAME WHERE email collate Chinese_PRC_CS_AS_WS LIKE '%G%'
--查询课程码以a、b、r结尾的课程
SELECT * FROM TABLE_NAME WHERE Courseid LIKE '%[abr]'
--case when 用法 --
SELECT (CASE WHEN Courseid LIKE '%a' THEN 'a' WHEN Courseid LIKE '%b' THEN 'b' END)AS test FROM TABLE_NAME

--取得系统管理员权限
ALTER LOGIN sa WITH PASSWORD='pswd';

--分页sql--
SELECT * FROM (SELECT *,ROW_NUMBER() OVER(ORDER BY clientId) AS rowNUM FROM TABLE_NAME) AS mt
WHERE rowNUM BETWEEN 10 AND 20

原创粉丝点击