-
Sql学习第二天——SQLDML与CTE概述
DML(DataManipulationLanguage)与CTE(CommonTableExpression)今天看书时遇到的两个缩写,不知道其含义,于是就百度了一下,特地在此记录下来,以便于下次复习使用。关于DML(DataManipulationLanguage):数据操纵语言,用户能够查询数据库以及操作已有数据库中的数据的计算机语言...
数据库操作教程 2022-09-23 17:07:07 -
SQLServer误区30日谈第2天DBCCCHECKDB会导致阻塞
误区#2:DBCCCHECKDB会引起阻塞,因为这个命令默认会加锁这是错误的! 在SQLServer7.0以及之前的版本中,DBCCCHECKDB命令的本质是C语言实现的一个不断嵌套循环的代码并对表加表锁(循环嵌套算法时间复杂度是嵌套次数的N次方,作为程序员的你懂得),这种方式并不和谐,并且….. 在SQLServer2000时代,一个叫SteveLindell的哥们(现在仍然在SQLServerTeam)使用分析事务日志的方法来检查数据库的一致性的方式重写了DBCCCHECKDB命令。DBCCCHECKDB会阻止截断日志...
数据库操作教程 2022-09-23 17:04:37 -
SQLServer误区30日谈第27天使用BACKUPWITHCHECKSUM可以替代DBCCCheckDB
误区#27:使用BACKUP...WITHCHECKSUM可以替代DBCCCheckDB错误 乍一看,由于BACKUPWITHCHECKSUM会检测所有分配出去的页的校验和的值,这个误区貌似是这么回事,但实际上并不是这么回事,原因如下: 由SQLServer2000或是更早版本升上来的数据库pagechecksums必须开启,在开启后,并不是数据库中所有的页都会被叫上页校验和,当页损坏发生时,IO系统可不会区分损坏的页是有页校验和还是没有校验和的。所以使用BACKUP...WITHCHECKSUM就有可能导致一些损坏页不被发现,造成的后果…… 除此之外,还有一个问题是完整备份的时间间隔相对比较长,假如说一个月,而相对于DBCCCheckDB的最佳实践是一个礼拜,这导致WITHCHECKSUM不能替代CHECKDB...
数据库操作教程 2022-09-23 17:03:22 -
SQLServerXML数据的五种基本操作
1.xml.exist输入为XQuery表达式,返回0,1或是Null。0表示不存在,1表示存在,Null表示输入为空2.xml.value输入为XQuery表达式,返回一个SQLServer标量值3.xml.query输入为XQuery表达式,返回一个SQLServerXML类型流4.xml.nodes输入为XQuery表达式,返回一个XML格式文档的一列行集5.xml.modify使用XQuery表达式对XML的节点进行insert,update和delete操作...
数据库操作教程 2022-09-23 17:00:31 -
sqlconvert函数使用小结
CONVERT(data_type,expression[,style])convert(varchar(10),字段名,转换格式)说明:此样式一般在时间类型(datetime,smalldatetime)与字符串类型(nchar,nvarchar,char,varchar)相互转换的时候才用到.语句结果SELECTCONVERT(varchar(100),GETDATE(),0)071520094:06PMSELECTCONVERT(varchar(100),GETDATE(),1)07/15/09SELECTCONVERT(varchar(100),GETDATE(),2)09.07.15SELECTCONVERT(varchar(100),GETDATE(),3)15/07/09SELECTCONVERT(varchar(100),GETDATE(),4)15.07.09SELECTCONVERT(varchar(100),GETDATE(),5)15-07-09SELECTCONVERT(varchar(100),GETDATE(),6)150709SELECTCONVERT(...
数据库操作教程 2022-09-23 16:55:58 -
SQLServerXML查询快速入门(18句话)
sqlxml入门:--byjinjazz1、xml:能认识元素、属性和值2、xpath:寻址语言,类似windows目录的查找(没用过dir命令的话就去面壁)语法格式,这些语法可以组合为条件:"."表示自己,"...
数据库操作教程 2022-09-23 16:55:22 -
sqlcast,convert,QUOTENAME,exec函数学习记录
语法使用CAST:CAST(expressionASdata_type)使用CONVERT:CONVERT(data_type[(length)],expression[,style])参数expression是任何有效的MicrosoftSQLServer"表达式。有关更多信息,请参见表达式...
数据库操作教程 2022-09-23 16:54:49 -
DBCCCHECKIDENT重置数据库标识列从某一数值开始
DBCCCHECKIDENT(N'dbo.Orders',RESEED,0);DBCCCHECKIDENT语法DBCCCHECKIDENT(table_name[,{NORESEED|{RESEED[,new_reseed_value]}}])[WITHNO_INFOMSGS]参数table_name是要对其当前标识值进行检查的表名。指定的表必须包含标识列...
数据库操作教程 2022-09-23 16:54:38 -
SQLServer数据修复命令DBCC一览
1.DBCCCHECKDB 重启服务器后,在没有进行任何操作的情况下,在SQL查询分析器中执行以下SQL进行数据库的修复,修复数据库存在的一致性错误与分配错误。usemasterdeclare@databasenamevarchar(255)set@databasename='需要修复的数据库实体的名称'execsp_dboption@databasename,N'single',N'true'--将目标数据库置为单用户状态dbcccheckdb(@databasename,REPAIR_ALLOW_DATA_LOSS)dbcccheckdb(@databasename,REPAIR_REBUILD)execsp_dboption@databasename,N'single',N'false'--将目标数据库置为多用户状态然后执行DBCCCHECKDB('需要修复的数据库实体的名称')检查数据库是否仍旧存在错误...
数据库操作教程 2022-09-23 16:54:12 -
浅谈mssqlaccess数据库top分页方法
但是有利也有弊,它要求排序字段必须构成唯一记录,且select后的字段列表中,不允许出现与排序字段同名的字段。虽然sql2k5及以上版本已经提供了rownum()来进行分页处理,但是使用sql2k进行开发的还是较多的复制代码代码如下:uusingsystem.collections.generic;singsystem;usingsystem.text;///<summary>///构造分页后的sql语句///</summary>publicstaticclasspaginghelper{ ///<summary> ///获取分页sql语句,排序字段需要构成唯一记录 ///</summary> ///<paramname="_recordcount">记录总数</param> ///<paramname="_pagesize">每页记录...
数据库操作教程 2022-09-23 16:47:10 -
SQLcursor用法实例
复制代码代码如下:DECLARE@OldIdvarchar(50) DECLARE@CustomerIDvarchar(50) DECLAREMy_CursorCURSOR--定义游标 FOR(selectCustomerID,oldidfromCustomerwhereArea='bj')--查出需要的集合放到游标中 OPENMy_Cursor;--打开游标 FETCHNEXTFROMMy_CursorINTO@CustomerID,@OldId;--读取第一行数据 WHILE@@FETCH_STATUS=0 BEGIN DECLARE@OtherProVARCHAR(500)  ...
数据库操作教程 2022-09-23 16:46:50 -
在SQLServer中将数据导出为XML和Json的方法
有时候需要一次性将SQLServer中的数据导出给其他部门的也许进行关联或分析,这种需求对于SSIS来说当然是非常简单,但很多时候仅仅需要一次性导出这些数据而建立一个SSIS包就显得小题大做,而SQLServer的导入导出工具其中BUG还是蛮多的,最简单的办法是BCP。 数据导出为XML 在SQLServer2005之后提供了一个forxml子句在关系数据库中原生支持XML...
数据库操作教程 2022-09-23 16:45:14