MD5和SHA1是一种单向加密算法,常用于密码的验证等需要加密操作的场合,在一般情况下,开发人员可以通过Delphi或PHP这类语言自己编写相关函数或者使用自带的函数,然后将加密过的结果根据需要存储到数据库中。但在某些情况下,可能需要在数据库端计算MD5和SHA1哈希值,比如说在存储过程或自定义函数内部。开源数据库MySQL就提供类似这样的内置函数,以下语句就可以分别显示字符串“12345”的MD5和SHA1值,返回结果为字符串型:SELECTmd5('1
系统 2019-08-12 01:53:25 2361
原文:XEvent–SQLServerLog文件对磁盘的写操作大小是多少本篇是上一篇SQLServerLog文件对磁盘的写操作大小是多少的续,使用XEvent收集SQLServerData文件和Log文件的写大小,脚本如下:DECLARE@DBNAMEVARCHAR(256)SET@DBNAME='myDB'DECLARE@sqlcmdNVARCHAR(MAX)='IFEXISTS(SELECT*FROMsys.server_event_sessionsW
系统 2019-08-12 01:33:02 2361
在SQLServer2005Express上附加从另外一台电脑Copy过来的数据库后,数据库为“只读”。解决办法:打开开始→程序→MicrosoftSQLServer2005→配置工具→SQLServer配置管理器,打开SQLServerSQLEXPRESS的属性.在内置帐号处,把“网络服务”改成“本地系统”,重新启动SQLServer2005Express后,再附加数据库一切正常。总结:之所以附加上的数据库为“只读”,是因为启动SQLServer的默认的
系统 2019-08-29 23:40:51 2360
最近遇到一个问题严重的问题:.net1.1的网站使用sqlserver存储session,出错,提示找不到dbo.TempGetID的存储过程。经过一番学习,发现原来这个还是个bug。在.net早期版本中,sqlserver存储只能放在一个aspstate的数据库里,并且访问数据库的架构只能是dbo。如果不符合上述条件,都会导致运行出错。微软对此问题相关修正:http://support.microsoft.com/kb/836680/zh-cn,FIX:
系统 2019-08-12 01:53:18 2360
在低版本的PowerDesigner中,很多人会使用以下脚本生成SQLServer的表注释和列注释信息:----表级的注释代码是:EXECUTEsp_addextendedpropertyNMS_Description,N%COMMENT%,Nuser,N%OWNER%,Ntable,N%TABLE%,NULL,NULL----列级的注释代码是EXECUTEsp_addextendedpropertyNMS_Description,N%COMMENT%,N
系统 2019-08-29 23:09:52 2357
【IT168技术文档】本篇来聊聊如何书写漂亮、整洁、优雅的SQL脚本,下面这些是我个人总结、整理出来的。姑且做个抛砖引玉吧,呵呵,欢迎大家一起来讨论。我们首先来看看一段创建数据表的脚本(如下所示),你是否觉得有什么不妥或是不足呢?如果是你,你怎样书写呢?#div_codeimg{border:0px;}
1、insertintostuInfo(name,stuId)values('李洁','19291727')insertintostuInfo(name,stuId)values('李康','19291728')insertintostuInfo(name,stuId)values('何洁','19291729')insertintostuInfo(name,stuId)values('何宇','19291730')go2、insertintostuInf
系统 2019-08-12 01:53:02 2355
1.使用ifelse语句①在学生表中,查找名字为王刚的同学,如果存在,显示该同学的信息,否则显示查无此人ifexists(selectsnofromstudentwheresname='王刚')elseprint'查无此人'go②查看有无选修00008号课程的记录,如果有,则显示有,并查询选修00008号课程的人数ifexists(select*fromscwherecno='00008')beginprint'有'selectcno,count(cno)
系统 2019-08-12 01:54:38 2354
declare@mouthint--declare@startdatetime--declare@enddatetimedeclare@startnvarchar(20)declare@endnvarchar(20)declare@strnvarchar(3000)declare@sqlnvarchar(3000)set@mouth=1while@mouth<=12beginif@mouth=12beginset@start='2011-'+STR(@mo
系统 2019-08-12 01:32:52 2354
SQLServer时间日期函数详解,SQLServer,时间日期,1.当前系统日期、时间selectgetdate()2.dateadd在向指定日期加上一段时间的基础上,返回新的datetime值例如:向日期加上2天selectdateadd(day,2,'2004-10-15')--返回:2004-10-1700:00:00.0003.datediff返回跨两个指定日期的日期和时间边界数。selectdatediff(day,'2004-09-01','
系统 2019-08-12 01:54:39 2353
我们在在使用SQLServer时都会遇到使用SQLServerManagementStudio无法连接远程数据库实例的问题,错误描述信息摘录如下:Anerrorhasoccurredwhileestablishingaconnectiontotheserver.(provider:NamedPipesProvider,error:40–CouldnotopenaconnectiontoSQLServer)(MicrosoftSQLServer,Error:
系统 2019-08-12 01:53:32 2353
TRY...CATCH是SqlServer2005/2008令人印象深刻的新特性.提高了开发人员异常处理能力.没有理由不尝试一下Try..Catch功能.*TRY块-包含可能产生异常的代码或脚本*CATCH块-如果TRY块出现异常,代码处理流将被路由到CATCH块.在这里你可以处理异常,记录日志等.SqlServer中的TryCatch和C#,JAVA等语言的处理方式一脉相承.这种一致性才是最大的创新之处.SQLSERVER2000中异常处理:CREATE
系统 2019-08-12 01:52:30 2353
通常,你需要获得当前日期和计算一些其他的日期,例如,你的程序可能需要判断一个月的第一天或者最后一天。你们大部分人大概都知道怎样把日期进行分割(年、月、日等),然后仅仅用分割出来的年、月、日等放在几个函数中计算出自己所需要的日期!在这篇文章里,我将告诉你如何使用DATEADD和DATEDIFF函数来计算出在你的程序中可能你要用到的一些不同日期。在使用本文中的例子之前,你必须注意以下的问题。大部分可能不是所有例子在不同的机器上执行的结果可能不一样,这完全由哪一
系统 2019-08-12 01:51:27 2353
原文:SQLServer2008技术内幕——T-SQL查询笔记1、SQL编程有许多独特之处,如:面向集合的思维方式、查询元素的逻辑处理顺序、三值逻辑。如果不掌握这些知识就开始用SQL编程,得到的将是冗余的、性能低下的代码,而且难以维护。2、在SQLServer中负责生成实际工作计划(执行计划)的组件是:查询优化器(queryoptimizer)。只有在确保结果集正确的前提下,优化器才会走捷径。明确区分查询的逻辑处理和物理处理是非常重要的。3、逻辑查询的各个
系统 2019-08-12 01:54:50 2352
查了好多资料,发现还是不全,干脆自己整理吧,至少保证在我的做法正确的,以免误导读者,也是给自己做个记载吧!一、数据库提要1、系统数据库(1)master①述描:记载全部SQLServer系统级信息。(2)model①述描:这是一个模板数据库。当建创户用数据库时,系统动自把该数据库的全部信息复制到户用新建的数据中。(3)msdb①述描:这是与SQLServerAgent服务有关的数据库。(4)tempdb①述描:这个一个临时数据库。2、数据库文件提要(1)数
系统 2019-08-12 01:52:43 2352