文章分类 - SQLSERVER
摘要:笔记36 sql server 表的权限控制问题不同的角色不同建立不同的用户名 1 --sql server 表的权限控制问题不同的角色不同建立不同的用户名 2 --根据每个开发人员或者售后人员的角色不同建立不同的用户名 3 --让他们用不同的用户名登录SQL 4 5 --db_accessadmin 6 --db_backupoperator 7 --db_datareader 8 --db_datawriter 9 --db_ddladmin10 --db_denydatareader11 --db_denydatawriter12 --db_owner13 --db_securitya.
阅读全文
摘要:笔记35 SQL Server 2008 R2 跟踪标志汇总 1 --SQL Server 2008 R2 跟踪标志汇总 2 3 --跟踪标志用于临时设置特定服务器的特征或关闭特定行为。例如,如果启动 SQL Server 的一个实例时设置了跟踪标志 3205,将禁用磁带机的硬件压缩。跟踪标志经常用于诊断性能问题,或调试存储过程或复杂的计算机系统。 4 --下表列出了 SQL Server 中可用的跟踪标志,并进行了说明。 5 --260 6 -- 打印有关扩展存储过程动态链接库 (DLL) 的版本控制信息。有关 __GetXpVersion() 的详细信息,请参阅创建扩展存储过程。 7 -.
阅读全文
摘要:笔记34 SQL code动态sql语句基本语法 1 --SQL code动态sql语句基本语法 2 --1 :普通SQL语句可以用Exec执行 3 -- 4 --eg: Select * from tableName 5 -- Exec('select * from tableName') 6 -- Exec sp_executesql N'select * from tableName' -- 请注意字符串前一定要加N 7 -- 8 --2:字段名,表名,数据库名之类作为变量时,必须用动态SQL 9 --10 --eg: 11 --declare @fnam
阅读全文
摘要:笔记33 sp_spaceused的使用查询表跟数据库已使用空间1 --sp_spaceused的使用查询表跟数据库已使用空间2 --查数据库已使用空间3 USE GPOSDB4 EXEC sys.sp_spaceused --@objname = N'dbo.SystemPara' -- nvarchar(776)5 6 --查表已使用空间7 USE GPOSDB8 EXEC sys.sp_spaceused @objname = N'dbo.SystemPara' -- nvarchar(776)
阅读全文
摘要:笔记32 SQL2005 查询表结构 1 --SQL2005 查询表结构 2 SELECT 3 (case when a.colorder=1 then d.name else '' end) as 表名,--如果表名相同就返回空 syscolumns(表字段信息表) a sysobjects d 4 a.colorder as 字段序号, 5 a.name as 字段名, 6 (case when COLUMNPROPERTY( a.id,a.name, 'IsIdentity' )=1 then '√' else '' end
阅读全文
摘要:笔记31 sp_monitor监控sqlserver1 --sp_monitor监控sqlserver2 EXEC sys.sp_monitor
阅读全文
摘要:笔记30 like语句的sql并接 1 --like语句的sql并接 2 declare @CdtSQL varchar(max) 3 SET @CdtSQL = @CdtSQL + 'and CT_OuterCard.VC_OC_Company like ''%' 4 print @CdtSQL -- 因为@CdtSQL没给初始值会是null,所以null + 'and CT_OuterCard.VC_OC_Company like ''%',得到的结果还是null 5 SET @CdtSQL = '' -- 设
阅读全文
摘要:笔记29 MDX查询语句示例(Northwind数据库 数据仓库名叫Northwind) 1 --MDX查询语句示例(Northwind数据库 数据仓库名叫Northwind) 2 --查询意大利和德国货轮运送的货物总量 3 //select {([measures].[quantity])} on columns, 4 //{([ship country].[germany]),([ship country].[italy])} on rows 5 //from [Northwind] 6 --查询意大利和德国货轮运送的货物总量,使用 axis(0)代替on columns\on rows
阅读全文
摘要:笔记28 mssql的update :from语法 1 --mssql的update :from语法 2 --a表 b表 结构分别 id ,name , id,memo 3 4 5 --b表的memo需要对照a表 关键ID相同就可以更新,语句如下 6 7 8 update b 9 set memo = a.name10 from a,b11 where a.id = b.id 12 --这个就是只更新from内的b结果集,等效于下面的sql:13 update b set memo=(select max(a.name) from a where a.id=b.id)14 wher...
阅读全文
摘要:笔记27 MSSQL锁的种类 1 --MSSQL锁的种类 2 --如果双方都在等待对方释放排他锁,SQL在确保另一个进程得以执行的情况下,自动牺牲第二个进程 3 --7种基本的锁:共享锁、排他锁、更新锁、意向锁、架构锁、大容量更新锁、键范围锁 4 --1、共享锁(S锁 share lock):只读(
阅读全文
摘要:笔记26 MSSQL系统常用全局变量 2013-1-10 1 -- MSSQL系统常用全局变量 2013-1-10 2 ----------全局变量 3 select @@version as '版本';---------------------------返回当前数据库的版本信息 4 5 select APP_NAME ( ) as '当前会话应用程序';------------返回当前会话的应用程序信息 6 7 select @@ERROR as '错误ID';---------------------------返回上一次TSQL的错误ID
阅读全文
摘要:笔记25 SQLCMD 命令提示工具(以前为 OLESQL)1 SQLCMD 命令提示工具(以前为 OLESQL)
阅读全文
摘要:笔记24 pivot的使用+动态SQL 1 --pivot的使用+动态SQL 2 declare @sql varchar(8000) 3 select @sql = isnull(@sql + '],[' , '') +ltrim(id) from 4 ( 5 select *,row_number() over (partition by [A] order by (select 1)) as id from dbo.testpivot 6 ) t group by id 7 set @sql = '[' + @sql + ']
阅读全文
摘要:笔记23 row_number over()分页存储过程 1 --row_number over()分页存储过程 2 DECLARE @pageSize INT 3 DECLARE @pageindex INT 4 SELECT @pageSize=5 ,@pageindex=2 5 ; 6 with 7 id as( 8 select 9 row_id = row_number() over(order by RecordNo asc),10 RecordNo -- 主键列名11 from dbo.SystemPara12...
阅读全文
摘要:笔记22 service broker例子 1 --service broker例子 2 --http://www.builder.com.cn/2007/0302/379424.shtml 3 USE master 4 5 GO 6 7 IF EXISTS ( SELECT * 8 FROM sys.databases 9 WHERE name = 'SB' ) 10 DROP DATABASE SB 11 12 GO 13 14 CREATE DATABASE SB 15 16 GO 17 1...
阅读全文
摘要:笔记20 kill 进程名1 kill 进程名2 EXEC sys.sp_who @loginame = NULL -- sysname3 KILL 56
阅读全文
摘要:笔记19 Full 模式下数据库事务日志无故自动截断的查找原因方法1 --Full 模式下数据库事务日志无故自动截断的查找原因方法2 USE [GPOSDB]3 SELECT * FROM [sys].[fn_dblog](NULL,NULL)4 SELECT [End Time] FROM [sys].[fn_dblog](NULL,NULL)5 SELECT [database_name],[backup_finish_date],[recovery_model] FROM [msdb].[dbo].[backupset] ORDER BY [database_name] DESC6 7.
阅读全文
摘要:笔记18 exec与sp_exectesql的区别1 exec与sp_exectesql的区别2 USE GPOSDB3 4 DECLARE @statement NVARCHAR( 4000)5 SET @statement ='select * from systempara'6 EXEC sys.sp_executesql @statement7 8 EXEC('select * from systempara')
阅读全文
摘要:笔记17 DBCC IND()非常详细解释加dbcc page([GPOSDB],1,119,3)非常详细解释 2013-1-20 1 --DBCC IND()非常详细解释加dbcc page([GPOSDB],1,119,3)非常详细解释 2013-1-20 2 3 --在构建例子之前我们首先需要创建一个把地址转换为具体页码的函数。 4 USE [pratice] 5 GO 6 CREATE FUNCTION [dbo].f_get_page(@page_num BINARY(6)) 7 RETURNS VARCHAR(11) 8 AS 9 BEGIN 10 RETURN...
阅读全文
摘要:笔记16 DBCC DROPCLEANBUFFERS与DBCC freeproccache的区别 注意:清除了缓存,不会释放SQL Server所占用的内存,所以需要通过修改SQL Server内存或重启SQL Server服务器来释放内存。 --DBCC DROPCLEANBUFFERS与DBCC
阅读全文