SQL语法大全

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

目录

1 基本概念

2 使用方法

3 基本术语

4 其他资料

展开

1 基本概念

2 使用方法

2.1 1=1,1=2的使用

2.2 收缩数据库

2.3 压缩数据库

2.4 检查备份集

2.5 修复数据库

2.6 日志清除

2.7 更改某个表

2.8 存储更改全部表

2.9 SERVER中循环写入数据

3 基本术语

3.1 创建数据库

3.2 删除数据库

3.3 备份sql server

3.4 创建新表

3.5 创建序列

3.6 删除新表

3.7 增加一个列

3.8 删除一个列

3.9 添加主键

3.10 创建索引

3.11 创建视图

3.12 简单基本的sql语句

3.13 几个高级查询运算词

3.14 使用外连接

4 其他资料

4.1 判断对象是否存在

4.2 判断数据库是否存在

4.3 判断表是否存在

4.4 判断存储过程是否存在

4.5 判断临时表是否存在

4.6 判断视图是否存在

4.7 判断函数是否存在

4.8 获取创建信息

4.9 判断列是否存在

4.10 判断列是否自增列

4.11 判断表中是否存在索引

4.12 查看数据库中对象

4.13 提升

4.14 复制表

4.15 拷贝表

4.16 跨数据库之间表的拷贝

4.17 子查询

4.18 显示文章最后时间

4.19 外连接查询

4.20 在线视图查询

4.21 between的用法

4.22 in 的使用方法

4.23 删除主表没有的信息

4.24 四表联查问题

4.25 日程安排提前五分钟

4.26 一条sql 搞定数据库页

4.27 前10条记录

4.28 选择排名

4.29 派生结果表

4.30 随机取出10条数据

4.31 随机选择记录

4.32 删除重复记录

4.33 列出数据库里的表名

4.34 列出表里的所有的

4.35 列示排列

4.36 初始化表table1

4.37 选择从10到15的记录

4.38 数据类型转换

1 基本概念编辑本段

本词条从基础知识、判断对象和应用技巧等方面,介绍了SQL(Structured Query Language)结构化查询语言的应用方法。

2 使用方法编辑本段

2.1 1=1,1=2的使用

在SQL语句组合时用的较多

“where 1=1”是表示选择全部“where 1=2”全部不选,

如:

if @strWhere !='

begin

set @strSQL = 'select count(*) as Total from [' + @tblName + '] where ' + @strWhere

end

else

begin

set @strSQL = 'select count(*) as Total from [' + @tblName + ']' end

我们可以直接写成

set @strSQL = 'select count(*) as Total from [' + @tblName + '] where 1=1 and '+ @strWhere

2.2 收缩数据库

--重建索引

DBCC REINDEX

DBCC INDEXDEFRAG

--收缩数据和日志

DBCC SHRINKDB

DBCC SHRINKFILE

2.3 压缩数据库

dbcc shrinkdatabase(dbname)

转移数据库给新用户以已存在用户权限

exec sp_change_users_login 'update_one','newname','oldname'

go

2.4 检查备份集

RESTORE VERIFYONLY from disk='E:\dvbbs.bak'

2.5 修复数据库

Alter DATABASE [dvbbs] SET SINGLE_USER

GO

DBCC CHECKDB('dvbbs',repair_allow_data_loss) WITH TABLOCK

GO

Alter DATABASE [dvbbs] SET MULTI_USER

GO

2.6 日志清除

SET NOCOUNT ON

DECLARE @LogicalFileName sysname,

@MaxMinutes INT,

@NewSize INT

USE tablename -- 要操作的数据库名

Select @LogicalFileName = 'tablename_log', -- 日志文件名

@MaxMinutes = 10, -- Limit on time allowed to wrap log.

@NewSize = 1 -- 你想设定的日志文件的大小(M)

-- Setup / initialize

DECLARE @OriginalSize int

Select @OriginalSize = size

FROM sysfiles

Where name = @LogicalFileName

Select 'Original Size of ' + db_name() + ' LOG is ' +

CONVERT(VARCHAR(30),@OriginalSize) + ' 8K pages or ' +

CONVERT(VARCHAR(30),(@OriginalSize*8/1024)) + 'MB'

FROM sysfiles

Where name = @LogicalFileName

Create TABLE DummyTrans

(DummyColumn char (8000) not null)

DECLARE @Counter INT,

@StartTime DATETIME,

@TruncLog VARCHAR(255)

Select @StartTime = GETDATE(),

@TruncLog = 'BACKUP LOG ' + db_name() + ' WITH TRUNCATE_ONLY'

DBCC SHRINKFILE (@LogicalFileName, @NewSize)

EXEC (@TruncLog)

-- Wrap the log if necessary.

WHILE @MaxMinutes > DATEDIFF (mi, @StartTime, GETDATE()) -- time has not expired

AND @OriginalSize = (Select size FROM sysfiles Where name =

@LogicalFileName)

AND (@OriginalSize * 8 /1024) > @NewSize

BEGIN -- Outer loop.

Select @Counter = 0

WHILE ((@Counter < @OriginalSize / 16) AND (@Counter < 50000))

BEGIN -- update

Insert DummyTrans VALUES ('Fill Log')

Delete DummyTrans

Select @Counter = @Counter + 1

END

EXEC (@TruncLog)

END

Select 'Final Size of ' + db_name() + ' LOG is ' +

相关文档
最新文档