9. 查询备份还原数据库的进度。

select command
,percent_complete
,est_time_to_go=convert(varchar,(estimated_completion_time/3600000))+' hour, '
+convert(varchar,(estimated_completion_time)/60000)+' min, '
+convert(varchar,(estimated_completion_time)/1000)+' sec'
,start_time=convert(char(16),start_time,120)
,est_completion_time=convert(char(16),dateadd(second,estimated_completion_time/1000,getdate()),120)
,running_time=convert(varchar,((datediff(s,start_time,getdate()))/3600))+' hour, '
+convert(varchar,(datediff(s,start_time,getdate()))/60)+' min, '
+convert(varchar,(datediff(s,start_time,getdate())))+' sec'
,s.text
from sys.dm_exec_requests r
cross apply sys.dm_exec_sql_text(r.sql_handle) s
where r.command in ('BACKUP DATABASE','RESTORE DATABASE','BACKUP LOG','RESTORE LOG','DbccFilesCompact','DbccSpaceReclaim')

10. 删除指定表内的某个统计信息(例如,有时候,我们在AlwaysOn可用性组的副库上执行某个查询,会提示某个统计信息缺失)。

报错信息

消息 2767,级别 16,状态 1,过程 sp_table_statistics2_rowset,第 105 行
无法在系统目录中找到统计信息 'XXXXXX'。

语法

DROP STATISTICS table.statistics_name | view.statistics_name [ ,...n ]

这个命令在副库上执行,如果提示 无法对 统计信息 '‘XXXXXXX’' 执行 删除,因为它不存在,或者您没有所需的权限。

此时 可转到主库上尝试执行。

11. SQL Server 2012 关于序列 的基本操作【在对应DB下执行】。

SELECT * FROM sys.sequences

-- 获取下一个值
SELECT NEXT VALUE FOR [dbo].[自定义的序列名称];

-- 重置为1
ALTER SEQUENCE [dbo].[自定义的序列名称] RESTART WITH 1 ;

12. 自增列(IDENTITY(1,1))的数据导入。

2个表都有自增列(IDENTITY(1,1)),怎么才能导入数据呢?
例如,我想将含有IDENTITY(1,1)列的大表QQ_CampTask_T1,Rename成一张旧表QQ_CampTask,接下来还要把其中部分数据导入到新建的QQ_CampTask_T1 中,新产生的表还是有IDENTITY(1,1),此时导入数据,这个列就会报错。
消息 8101,级别 16,状态 1,第 1 行
仅当使用了列列表并且 IDENTITY_INSERT 为 ON 时,才能为表QQ_CampTask_T1'中的标识列指定显式值。

解决方案
SET IDENTITY_INSERT QQ_CampTask_T1【表名】 on
此效用就在同一个回话中有效,其它不行。另外 还需要特别注意的是:一定要写明 列名。

例如:

SET IDENTITY_INSERT QQ_CampTask_T1 on
insert into QQ_CampTask_T1 ([ID],[CreateTime])
select [ID],[CreateTime] from QQ_CampTask

13. 修Table的改列名。

EXEC sp_rename '表名.[原列名]', '新列名', 'column'

14. 赋予指定账户查看执行计划的权限。

GRANT SHOWPLAN TO [XXX_test] ---账号是XXX_test;在指定数据库下执行

15. SQL语句执行耗费资源统计分析。

set statistics profile on
set statistics io on
set statistics time on
go
--写SQL语句的地方

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

go
set statistics profile off
set statistics io off
set statistics time off

16. 增加约束:如果表的某一列没有约束,而要在此列增加约束。

类似命令 如下:
ALTER TABLE [dbo].[表明] ADD DEFAULT ((默认值)) FOR [列名]

17. sqlserver 服务器更改主机名后,需要做一些操作,不然维护计划 以及订阅发布都会有问题。有时修改计算机名后,执行select @@servername仍返回原来的计算机名,表示"实例"并没有随着修改。

USE master;
GO
IF SERVERPROPERTY('servername')<>@@SERVERNAME
BEGIN
DECLARE @server sysname;
SET @server=@@SERVERNAME;
EXEC sp_dropserver @server=@server;
SET @server=CAST(SERVERPROPERTY('servername')AS sysname );
EXEC sp_addserver @server=@server,@local='LOCAL';
END
GO

(我们重启一下服务.OK)

18. 出现性能瓶颈时,执行以下代码,检查瓶颈代码。

sp_lock
DBCC INPUTBUFFER(XXX) ---XXX 出现多次的spid

19查询表的大小

sp_spaceused 'Rel_OrderItem'

20. 字符与ASCII码相互转化,有的时候要对数据清理,所以有必要了解一下。

例如 Char("9") tab(水平制表符)
Char("10") 换行
Char("11") tab(垂直制表符)
Char("12") 换页
Char("13") 回车 chr(13)&chr(10) 回车和换行的组合
Char("32") 空格 SPACE

(1)获取字符的ASCII码 ASCII
ASCII码是对字符的标准编码。要获取字符的ASCII码可以通过ASCII函数来实现。
语法:ASCII(espression)--这里的expression是一个返回char或varchar数据类型的表达式,ASCII函数仅对表达式最左侧的字符返回ASCII码值。
例如:select ASCII('f') --输出 102
(2)获取ASCII码对应的字符 Char
语法:char(integer_expression)
例如:select char(102) -- 输出f

SQL Server 数据库部分常用语句小结(二)的更多相关文章

  1. SQL Server 数据库部分常用语句小结(三)

    21.SQL运行Log的读取 .EXEC xp_readerrorlog 0,1,null,null,'开始时间','结束时间' 22. Alwayson 状况及传输情况监控 SELECT ar.re ...

  2. SQL Server 数据库部分常用语句小结(一)

    1. 查询某存储过程的访问情况 SELECT TOP 1000 db_name(d.database_id) as DBName, s.name as 存储名字, s.type_desc as 存储类 ...

  3. 在 SQL Server 数据库的 WHERE 语句中使用子查询

    这是关于子查询语句的一系列文章中的第三篇.在这篇文章中我们将讨论WHERE语句中的子查询语句.其他的文章讨论了其他语句中的子查询语句. 本次课程中的所有例子都是基于Microsoft SQL Serv ...

  4. SQL Server性能监控常用语句

    .查找目前SQL Server所执行的SQL语法,并展示资源情况: SELECT s2.dbid , DB_NAME(s2.dbid) AS [数据库名] , --s1.sql_handle , ( ...

  5. 查询SQL SERVER 数据库版本号脚本语句

    数据库直接执行此语句即可select @@version 示例: Microsoft SQL Server 2014 - 12.0.2000.8 (X64)   Feb 20 2014 20:04:2 ...

  6. SQL Server数据库存在判断语句及系统表简介 转

    Transact-SQL Exists Sentences--判断数据库是否存在IF EXISTS(SELECT * FROM master.sysdatabases WHERE name=N'库名' ...

  7. SQL Server数据库存在判断语句及系统表简介

    Transact-SQL Exists Sentences--判断数据库是否存在IF EXISTS(SELECT * FROM master.sysdatabases WHERE name=N'库名' ...

  8. Sql Server 数据库用Transact-SQL语句创建链接服务器

    1.在查询编辑器中,输入以下 Transact-SQL 命令以便链接到名为 SRVR002\ACCTG 的 SQL Server 实例: USE [master] GO EXEC master.dbo ...

  9. SQL SERVER数据库中DDL语句

    一 修改表列名 EXEC sp_rename 'table_name.[字段旧名]', '字段新名' , 'COLUMN'; 二 修改列类型 ALTER TABLE table_name  ALTER ...

随机推荐

  1. Java 子类 instanceof 父类

    1.结论: 子类 instanceof 父类 == true 父类 instanceof 子类 == false 2.测试代码 @Test public void testInstanceof() { ...

  2. Mac下 .bash_profile 和 .zshrc 两者之间的区别

    这是我碰到的需要 source 之后才能使用环境变量的问题,我就不细究了,说说我的看法. .bash_profile 中修改环境变量只对当前窗口有效,而且需要 source ~/.bash_profi ...

  3. Python内置函数(20)——exec

    英文文档: exec(object[, globals[, locals]]) This function supports dynamic execution of Python code. obj ...

  4. tensorflow 1.0 学习:十图详解tensorflow数据读取机制

    本文转自:https://zhuanlan.zhihu.com/p/27238630 在学习tensorflow的过程中,有很多小伙伴反映读取数据这一块很难理解.确实这一块官方的教程比较简略,网上也找 ...

  5. .NET Core实战项目之CMS 第九章 设计篇-白话架构设计

    前面两篇文章给大家介绍了我们实战的CMS系统的数据库设计,源码也已经上传到服务器上了.今天我们就好聊聊架构设计,在开始之前先给大家分享一下这几天我一直在听的<从零开始学架构>里面关于架构设 ...

  6. Javascript基本类型回顾

    本文是学习和总结ECMAScript5.1规范形成的.是对规范中所提及的Javascript类型进行剖析后的个人观点的表达(如有Bug望各位道友指正).主要是各类型的实例方法,不包含任务构造函数的方法 ...

  7. ASP.NET MVC one view bind many model

    一.自定义视图模型 model.cs public class AorBvm { public List<Role> GetRole { get; set; } public List&l ...

  8. Shader 入门笔记(一) 如何学习shader

    本笔记,是根据自己学习shader的笔记,主要是参照冯乐乐的<Shader 入门精要> 和游戏蛮牛shaderLad视频 和网上一些博客. 为啥要学习这个呐? 自己其实之前学过一段时间的s ...

  9. ASP.NET页面之间的几种传值方法

    首先是QueryString方法传值: QueryString是一种非常简单的传值方式,他可以将传送的值显示在浏览器的地址栏中.如果是传递一个或多个安全性要求不高或是结构简单的数值时,可以使用这个方法 ...

  10. k8s运行容器之deployment(三)--技术流ken

    deployment 我们已经知道k8s是通过各种controller来管理pod的生命周期.为了满足不同业务场景,k8s开发了Deployment.ReplicaSet.DaemonSet.Stat ...