-
sql2005HashBytes加密函数
有关函数HashBytes请参考:http://msdn.microsoft.com/en-us/library/ms174415.aspx 在做项目的时候,在sql中使用了hashbytes函数,运用md5算法去加密一密码。代码如下 DECLARE@pswnvarchar(20) SET@psw='admin' SELECThashbytes('md5',@psw) 输出结果:0x19A2854144B63A8F7617A6F225019B12前面的0x是16进制的意思...
数据库操作教程 2022-09-23 16:55:22 -
sqlserver日志恢复方法(搞定drop和truncate)
--1usemasterbackupdatabaselogTesttodisk='D:ProgramFilesMicrosoftSQLServerMSSQL10.MSSQLSERVERMSSQLBackuplogTest...
数据库操作教程 2022-09-23 16:55:03 -
executesql存储过程
复制代码代码如下:declare@ttvarchar(20)set@tt='monisubbouns'declare@intintdeclare@sqlnvarchar(500)set@sql='select@int=count(*)from'+@ttexecsp_executesql@sql,N'@intintoutput'...
数据库操作教程 2022-09-23 16:54:51 -
sqlcast,convert,QUOTENAME,exec函数学习记录
语法使用CAST:CAST(expressionASdata_type)使用CONVERT:CONVERT(data_type[(length)],expression[,style])参数expression是任何有效的MicrosoftSQLServer"表达式。有关更多信息,请参见表达式...
数据库操作教程 2022-09-23 16:54:49 -
drop,truncate与delete的区别
注意:这里说的delete是指不带where子句的delete语句相同点truncate和不带where子句的delete,以及drop都会删除表内的数据不同点:1.truncate和delete只删除数据不删除表的结构(定义)drop语句将删除表的结构被依赖的约束(constrain),触发器(trigger),索引(index);依赖于该表的存储过程/函数将保留,但是变为invalid状态.2.delete语句是dml,这个操作会放到rollbacksegement中,事务提交之后才生效;如果有相应的trigger,执行的时候将被触发.truncate,drop是ddl,操作立即生效,原数据不放到rollbacksegment中,不能回滚.操作不触发trigger.3.delete语句不影响表所占用的extent,高水线(highwatermark)保持原位置不动显然drop语句将表所占用的空间全部释放truncate语句缺省情况下将空间释放到minextents个extent,除非使用reusestorage;truncate会将高水线复位(回到最开始).4.速度,一般来说:dr...
数据库操作教程 2022-09-23 16:54:06 -
SQLSERVER中datetime和smalldatetime类型分析说明
datetime和smalldatetime代表日期和一天内的时间的日期和时间数据类型。MicrosoftSQLServer用两个4字节的整数内部存储datetime数据类型的值...
数据库操作教程 2022-09-23 16:53:58 -
sqlserverexists,notexists的用法
学生表:createtablestudent( idnumber(8)primarykey, namevarchar2(10),deptmentnumber(8))选课表:createtableselect_course( ID NUMBER(8)primarykey, STUDENT_IDNUMBER(8)foreignkey(COURSE_ID)referencescourse(ID), COURSE_ID NUMBER(8)foreignkey(STUDENT_ID)referencesstudent(ID))课程表:createtableCOURSE( ID NUMBER(8)notnull, C_NAMEVARCHAR2(20), C_NO VARCHAR2(10))student表的数据: &...
数据库操作教程 2022-09-23 16:52:55 -
deletefrom表名与truncatetable表名区别
1.delete不能使自动编号返回为起始值。但是truncate能使自动增长的列的值返回为默认的种子2.truncate只能一次清空,不能按条件删除...
数据库操作教程 2022-09-23 16:49:22 -
SQL性能优化之定位网络性能问题的方法(DEMO)
最近项目组同事跟我说遇到一个SQL性能问题,他说全表只有69条记录,客户端执行耗费了两分多钟,很不科学。我帮了分析出了原因并得到解决...
数据库操作教程 2022-09-23 16:44:27 -
sqlserver使用公用表表达式CTE通过递归方式编写通用函数自动生成连续数字和日期
问题:在数据库脚本开发中,有时需要生成一堆连续数字或者日期,例如yearlyreport就需要连续数字做年份,例如dailyreport就需要生成一定时间范围内的每一天日期。而自带的系统表master..spt_values存在一定的局限性,只是从0到2047(验证脚本:select*frommaster..spt_valuesbwhereb.type='P'),也不能直接生成连续日期...
数据库操作教程 2022-09-23 16:42:36 -
sqlserver之datepart和datediff应用查找当天上午和下午的数据
DATEPART()函数用于返回日期/时间的单独部分,比如年、月、日、小时、分钟等等。DATEDIFF()函数返回两个日期之间的时间差...
数据库操作教程 2022-09-23 16:42:30 -
SqlServer中批量update语句
现在我有两张表分别是S_PERSON,S_USERS_PERSON S_USER我现在想把S_USER表中的ACCOUNT批量修改成S_PERSON的ACCOUNT我们可以发现S_USER表中有个跟S_PERSON表关联的字段那就是PERSON_ID这也是我们要update的条件找到这个关系以后我们就不难写sql了updateS_USER setaccount=p.accountfromS_PERSON pwherep.id=S_USER.person_id;结果为:sqlserveras语法举例1、使用表名称别名有两个表分别是:"Persons"和"Product_Orders"。分别为它们指定别名"p"和"po"...
数据库操作教程 2022-09-23 16:42:12