因为工作需要,所以对数据库的操作都要用sql语句,所以我会陆续把一些常用的sql语句总结下来,方便以后使用,正好也复习一下基础知识

1.   增,删,改字段

-----------------------------------------------------

增加字段

alter table 表名 add 字段名 字段类型 是否可为空

示例: alter table student add sid int not null

更新字段

alter table 表名 alter column 字段名 字段类型 是否为空

示例: alter table student alter column sid varchar(20) null

删除字段

alter table 表名 drop column 字段名

示例: alter table student drop column sid

---------------------------------------------------------------

2. 判断是否有某个表或存储过程或字段,然后删除之

-----------------------------------------------------------

表:

IF EXISTS (SELECT * FROM dbo.sysobjects WHERE id = OBJECT_ID(N'[dbo].[表名]') AND OBJECTPROPERTY(id, N'IsUserTable') = 1)
DROP TABLE [dbo].[表名]

存储过程:

IF EXISTS (SELECT * FROM DBO.SYSOBJECTS WHERE ID = OBJECT_ID(N'[dbo].[存储过程名]') and OBJECTPROPERTY(ID, N'IsProcedure') = 1)
DROP PROCEDURE [dbo].[存储过程名]

字段:

if Exists(select * from syscolumns where id=object_id('表名') and name='字段名')

alter table 表名 drop column 字段名

------------------------------------------------------------

3.  多条件语句,类似swich语句

示例:

declare @sumdays [int]

declare @grade [int]

select @grade =
case
when @sumdays=40 then 1
when @sumdays>40 then 2

end

4. 备份还原语句

下面俩个例子,分别说明了备份和还原

备份:

BACKUP DATABASE [QPShopDB] TO  DISK = N'D:\数据库备份\100209\QPShopDB.bak' WITH NOFORMAT, NOINIT,  NAME = N'QPShopDB-完整 数据库 备份', SKIP, NOREWIND, NOUNLOAD,  STATS = 10

还原:

RESTORE DATABASE [News] FROM  DISK = N'D:\数据库备份\100209\QPShopDB.bak' WITH  FILE = 1,  NOUNLOAD,  STATS = 10

,replace,move 'test' to 'D:\database\test.mdf',move 'test_log' to 'D:\database\test.ldf'

注意:with后面跟相关参数要用逗号隔开,可以设置是覆盖还原,以及还原路径等参数,具体参数查看msdn

5. 给表建立索引

如下:给ErrReport表的Version列建立Version_Indexf索引:

CREATE NONCLUSTERED INDEX [Version_Index] ON [dbo].[ErrReport] ([Version] ASC )

如果是聚集索引将NONCLUSTERED改成CLUSTERED即可

 6. sql创建文件夹--通过调用doc来建立,这个命令涉及到安全问题,用完一定要关闭

EXEC sp_configure 'show advanced options', 1

GO

RECONFIGURE

GO

EXEC sp_configure 'xp_cmdshell', 1  --开启cmdshell

RECONFIGURE

GO

set @path = 'mkdir D:\数据库备份\'+@dateTime

exec xp_cmdshell @path,NO_OUTPUT

EXEC sp_configure 'xp_cmdshell',0  --关闭cmdshell

7. 遇到 关于sql server 代理(已禁用代理xp)

打上下面几段sql搞定

sp_configure 'show advanced options', 1;  
GO  
RECONFIGURE WITH OVERRIDE;   --加上WITH OVERRIDE  
GO  
sp_configure 'Agent XPs', 1;  
GO  
RECONFIGURE WITH OVERRIDE     --加上WITH OVERRIDE  
GO

8. 挂起操作 
在安装Sql或sp补丁的时候系统提示之前有挂起的安装操作,要求重启,这里往往重启无用,解决办法: 
到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager 
删除PendingFileRenameOperations

9. 收缩数据库 
--重建索引 
DBCC REINDEX 
DBCC INDEXDEFRAG 
--收缩数据和日志 
DBCC SHRINKDB 
DBCC SHRINKFILE

10. 压缩数据库 
dbcc shrinkdatabase(dbname)

11. 转移数据库给新用户以已存在用户权限 
exec sp_change_users_login 'update_one','newname','oldname' 
go

12. 检查备份集 
RESTORE VERIFYONLY from disk='E:\dvbbs.bak'

13. 修复数据库 
ALTER DATABASE [dvbbs] SET SINGLE_USER 
GO 
DBCC CHECKDB('dvbbs',repair_allow_data_loss) WITH TABLOCK 
GO 
ALTER DATABASE [dvbbs] SET MULTI_USER 
GO

14. 查询最大连接数

1、获取SQL Server允许同时用户连接的最大数

SELECT @@MAX_CONNECTIONS

2、获取当前指定数据库的连接信息

SELECT * FROM master.dbo.sysprocesses WHERE dbid IN (   SELECT dbid FROM master.dbo.sysdatabases   WHERE NAME='YourDataBaseName')--根据需要更改YourDataBaseName

SELECT * FROM master.dbo.sysprocesses WHERE DB_NAME(dbid) = 'YourDataBaseName'

3、获取当前SQL服务器所有的连接详细信息

SELECT * FROM sysprocesses

以上查询结果包含了:系统进程和用户进程。

如果只是想查用户进程的话则需采用下面的方法

4、获取自上次启动SQL Server服务 以来连接或试图连接的次数

SELECT @@CONNECTIONS

这个刚开始会有点误解,认为是当前SQL Server服务器当前所有的SQL Server连接数。需要重点注意。

15.设置数据库为多用户模式或单用户模式

ALTERDATABASE [dbname] SET SINGLE_USER

ALTERDATABASE [dbname] SET MULTI_USER

16.获取当前时间的小时或分钟或秒钟部分

DATEPART(datepart,date)
datepart 缩写
yy, yyyy
季度 qq, q
mm, m
年中的日 dy, y
dd, d
wk, ww
星期 dw, w
小时 hh
分钟 mi, n
ss, s
毫秒 ms
微妙 mcs
纳秒 ns

 

 

转载于:https://www.cnblogs.com/songzibin/archive/2012/03/20/1606660.html

sql常用语句集合(工作总结)相关推荐

  1. 数据库 SQL常用语句

    数据库 SQL常用语句 文章目录 数据库 SQL常用语句 一.前言 二.相关知识点实用性介绍 1.常用查询格式 2.WHERE子句常用的查询条件 3.多表连接查询 4.嵌套查询 5.字符匹配查询 6. ...

  2. mongodb常用语句(集合操作)

    mongodb常用语句(集合操作) 查看集合帮助 db.songs.help(); 查看集合总数据量 db.songs.count(); 查看表空间大小 db.songs.dataSize(); 查看 ...

  3. SQL常用语句一览(增删改查Easy)

    SQL常用语句一览 (1)数据记录筛选: sql="select*from数据表where字段名=字段值orderby字段名[desc]" sql="select*fro ...

  4. 【SQL常用语句或函数】

    SQL常用语句或函数 –查询字符串的长度 select length('北京市东城区王府井大街1188799号') from dual; –查询当前时间 values current date –查询 ...

  5. SQL常用语句(基础篇)

    SQL常用语句(基础篇) 说明:创建数据库 CREATE DATABASE database-name 说明:删除数据库 drop database dbname 说明:备份sql server -创 ...

  6. Teradata sql 常用语句总结

    工作使用TD数据库,转载常用语句方便查看 从参考文章中截取工作中经常的语句,不定时更新 参考文章1:https://blog.csdn.net/u010020099/article/details/8 ...

  7. SQL常用语句 笔记

    https://github.com/QInzhengk/Math-Model-and-Machine-Learning SQL笔记 1.常用MySQL命令 2.语法规范 3.语句分类 MySQL索引 ...

  8. 10个必须掌握的SQL常用语句

    世界上70%的相关性数据可以被储存为表格数据,即类似Excel,Csv类型的数据,如何去查询和分析相关性的数据?对于少量数据,我们可以使用Excel,更多一点数据,我们可以使用Python, pand ...

  9. ORACLE数据库 常用命令和Sql常用语句

    ORACLE 账号相关 如何获取表及权限 1.COPY表空间 backup scott exp 登录管理员账号system 2.创建用户 create user han identified(认证) ...

  10. sql常用语句使用方法

    一.root用户密码丢失或重新设置 方法1: 用SET PASSWORD命令 首先登录MySQL. 格式:mysql> set password for 用户名@localhost = pass ...

最新文章

  1. Spring AOP与IOC以及自定义注解
  2. Java SE 6.0编程指南_Java SE 6.0 编程指南(附光盘)
  3. ios nslinkattributename 自定义url_iOS音视频播放指南(二)
  4. NuGet 无法连接到远程服务器-解决方法(转)
  5. socket网络编程udp
  6. 四宫格效果 css_【深度教研】智力游戏“九宫格” 集体教研活动纪实
  7. Dedecms 最新版漏洞收集并复现学习
  8. jquery 是通过id 还是name
  9. Jmeter如何将返回值作为下一接口的参数?
  10. SQL Server 按某一字段分组取最大(小)值所在行的数据
  11. 对结构体数组进行冒泡排序(根据名字大小)
  12. 2010年JNCIA-FWV、JNCIS-FWV教学视频
  13. 隔壁老王都找我要的33款开源爬虫框架,《记得收藏哦!不然看着看着就不见了》
  14. pdf会签_图纸会签规定
  15. [安卓按键精灵]彩色图片转黑白图(二值化)
  16. Btree 数据结构
  17. EditPlus下载安装及使用
  18. OpenMV与PID控制
  19. SqlServer geometry 转 geography
  20. 苹果 iPhone 14 Pro/Max 手机最新细节曝光,终于盼来 USB-C 接口

热门文章

  1. mysql innodb 分区_MySQL 表分区详解MyiSam引擎和InnoDb 区别(实测)
  2. Python classmethod()
  3. Laravel跨数据库事务的实现
  4. MySQL如何把A表查询出来的某个字段的数据插入到新增的字段的下面
  5. 大数据学习总结(5)参考elk技术架构
  6. MySql存储过程的操作
  7. Drawable解析1——ColorDrawable、BitmapDrawable、ClipDrawabl和ScaleDrawable
  8. Android开发笔记(成长轨迹)
  9. Google 网站打不开
  10. 从并行 SCSI 到串行 SCSI