1.当很多在共用你自己的数据时,时不时的会报这种错误“已超过了锁请求超时时段”
直接把下在面的存储过程 放到你的Master数据库执行一下就可以了
set ANSI_NULLS ONset QUOTED_IDENTIFIER ONgoALTER Proc[dbo].[Sp_KillAllProcessInDB] @DbName VarChar(100)asif db_id(@DbName) =Null beginPrint 'DataBase dose not Exist'endelseBeginDeclare @spId Varchar(30)DECLARE TmpCursor CURSOR FORSelect 'Kill '+convert(Varchar, spid) as spIdfrom master..SysProcesseswhere db_Name(dbID) =@DbNameand spId <>@@SpIdand dbID <>0OPEN TmpCursorFETCH NEXT FROM TmpCursorINTO @spId WHILE @@FETCH_STATUS=0BEGINExec (@spId)FETCH NEXT FROM TmpCursorINTO @spId END CLOSE TmpCursorDEALLOCATE TmpCursorend
复制代码
这个时候如果再有这种情况 出现只要你执行一下存储过程就行了如例子
exec Sp_KillAllProcessInDB '要访问的数据库'
2.如果修改数据的架构
?
--'guest.Table_1'架构名+(表名,视频,存储过程),新架构名, EXEC SP_ChangeObjectOwner 'guest.Table_1' , 'dbo' |
3.如果安装时选择的windows验证方法,怎么修改为Windows验证和登录用户验证模式?
/* 标题:更改登录用户验证方式 作者:苏飞 时间:2011-09-25 地点:郑州 *//* 登录用户的验证方式一般是在 SQL Server 2005 安装时被确定的。如果需要改变登录用 户的验证方式,只可以通过 SQL Server Configuration Manager 改变服务器的验证方式。改 变登录用户的验证方式的步骤如下:1、通过"开始"/"程序"/"Microsoft SQL Server 2005"/"SQL Server Management Studio"菜单 打开SQL Server Management Studio 工具。2、通过"连接到服务器"对话框连接到需要改变登录用户验证方式的 SQL Server 2005 服务器。3、连接正确后,SQL Server Management Studio 中的"对象资源管理器"版面将出现连接的服务 器。选中这个服务器,单击鼠标右键,选择"属性"菜单命令。4、选择"服务器属性"对话框中的"选择页"版面内的"安全性"页面。5、在"服务器身份验证"框架内,重新选择登录用户的验证方式。选择完成后单击"确定"按钮, 这时会弹出"SQL Server Management Studio"提示框,提示重新启动 SQL Server后做作的更改 才会生效。6、单击"SQL Server Management Studio"提示框中的"确定"按钮,重新启动 SQL Server,即可 更改登录用户的验证方式。*/
4.SQl中如何处理Nvarchar数字排序问题
select top 10 * from 表名 order by cast(Ltrim(字段名) as int ) desc
5.时间格式转化
--日期转换参数select CONVERT(varchar,getdate(),120)--2009-03-15 15:10:02select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-',''),' ',''),':','')--20090315151201select CONVERT(varchar(12) , getdate(), 111)--2009/03/15select CONVERT(varchar(12) , getdate(), 112)--20090315select CONVERT(varchar(12) , getdate(), 102)--2009.03.15select CONVERT(varchar(12) , getdate(), 108)--15:13:26其它我不常用的日期格式转换方法:select CONVERT(varchar(12) , getdate(), 101 )--03/15/2009select CONVERT(varchar(12) , getdate(), 103 )--15/03/2009select CONVERT(varchar(12) , getdate(), 104 )--15.03.2009select CONVERT(varchar(12) , getdate(), 105 )--15-03-2009select CONVERT(varchar(12) , getdate(), 106 )--15 03 2009select CONVERT(varchar(12) , getdate(), 107 )-- 15, 2009select CONVERT(varchar(12) , getdate(), 109 )--03 15 2009 select CONVERT(varchar(12) , getdate(), 110 )--03-15-2009select CONVERT(varchar(11) , getdate(), 113 )--15 03 2009 select CONVERT(varchar(12) , getdate(), 114)--15:15:55:717
6.两个时间的运算
DATEDIFF( minute , 时间,getdate())
第一个参数可以是下列任意一个
年 yy, yyyy 季度 qq, q 月 mm, m 年中的日 dy, y 日 dd, d 周 wk, ww 星期 dw, w 小时 hh 分钟 mi, n 秒 ss, s 毫秒 ms 微妙 mcs 纳秒 ns
复制代码