-
sp_executesql使用复杂的Unicode表达式错误的解决方法
Msg102,Level15,State1,Line3Incorrectsyntaxnear'+'.当你尝试执行下面这段代码时,会得到如上这个错误提示。复制代码代码如下:DECLARE@MyNameNVARCHAR(100)DECLARE@FieldNameSYSNAME=N'Name'EXECUTEsp_executesqlN'SELECTTOP1@OutputName=['+@FieldName+']FROM[dbo].[Member]',N'@OutputNameNVARCHAR(100)OUTPUT',@MyNameOUTPUT;SELECT@MyName问题出于不允许使用更复杂的Unicode表达式(例如使用+运算符连接两个字符串)...
数据库操作教程 2022-09-23 17:28:34 -
MSSQL段落还原脚本,SQLSERVER段落脚本
段落还原保持进行检查,以便确保数据库在结束时将是一致的。在还原顺序结束后,如果恢复的文件有效并且与数据库一致,则恢复的文件将直接变为联机状态...
数据库操作教程 2022-09-23 17:26:18 -
sqlserver的updatefrom语句的深究
一般来说update一个表,使用where语句即可:复制代码代码如下:UPDATETtestSET statusInd='ACTIVE' WHERE id=123注意:update语句后面的table名称,是不可以启用别名的。那么此时的id字段,就是来自Ttest表的(无可厚非)但是,如果update,还有额外的jointable条件约束,语句如下:复制代码代码如下:UPDATETtestSET statusInd='ACTIVE'FROM TparentparentWHERE Ttest.id=123ANDTtest.parentId=parent.idANDparent.statusInd='ACTIVE'注意:update后面的Ttest不能使用别名那么定位到,要修改的Ttest记录,就必须这样写:Ttest.id=123如果直接写id=123,会分不清是Ttest表还是Tparent表的 i...
数据库操作教程 2022-09-23 17:26:09 -
sqlserver中Selectcount(*)和Count(1)的区别和执行方式
在SQLServer中Count(*)或者Count(1)或者Count([列])或许是最常用的聚合函数。很多人其实对这三者之间是区分不清的...
数据库操作教程 2022-09-23 17:25:26 -
SQL事务用法begintran,committran和rollbacktran的用法
具体用法如下:复制代码代码如下:--=============================================--Author:cynimoon--Createdate:2009-10-09--Description:示例存储过程--=============================================--EXECTEST_PROC'文综','包括历史,地理,政治','政治','文综的一门'CREATEPROCEDURE[dbo].[TEST_PROC]@A_NameNVARCHAR(20),--A表姓名@A_RemarkNVARCHAR(4000),--A表备注@B_NameNVARCHAR(20),--B表姓名@B_RemarkNVARCHAR(4000)--B表备注ASBEGINTRYBEGINTRAN--在A表中插入数据INSERTINTO[dbo].[A]([A_Name],[A_Remark])VALUES(@A_Name,@A_Remark)--在B表中插入数据INSERTINTO[dbo].[B]([A_ID],[B_Name],[B...
数据库操作教程 2022-09-23 17:25:24 -
总结下sqlservergroupby的用法
今天用实例总结一下groupby的用法。归纳一下:groupby:ALL,Cube,RollUP,Compute,Computeby创建数据脚本CreateTableSalesInfo(Ctiynvarchar(50),OrderDatedatetime,OrderIDint)insertintoSalesInfoselectN'北京','2014-06-09',1001unionallselectN'北京','2014-08-09',1002unionallselectN'北京','2013-10-09',1009unionallselectN'大连','2013-08-09',4001unionallselectN'大连','2013-10-09',4002unionallselectN'大连','2013-05-12',4003unionallselectN'大连','2014-11-11',4004unionallselectN'大连','2014-12-11',4005首先执行以下脚本:selectCtiy,count(OrderID)asOrderCountfromSale...
数据库操作教程 2022-09-23 17:24:35 -
探讨SQLcomputeby的使用分析
GROUPBY子句有个缺点,就是返回的结果集中只有合计数据,而没有原始的详细记录。如果想在SQLSERVER中完成这项工作,可以使用COMPUTEBY子句...
数据库操作教程 2022-09-23 17:24:24 -
MSSQL将截断字符串或二进制数据问题的解决方法
地图数据存放在sqlserver2008中,使用mapxtreme7开发时,使用Feature.Update()方法时出错的提示包含“MSSQL将截断字符串或二进制数据”主要原因就是给某个字段赋值时,内容大于字段的长度或类型不符造成的解决方法:一个是修改数据库字段大小;再一就是是加强数据强壮性,严格的输入判断。防止添加的信息类型或者长度与数据库表中字段所对应的类型不符合...
数据库操作教程 2022-09-23 17:24:18 -
OBJECTPROPERTY与sp_rename更改对象名称的介绍
相关的OBJECTPROPERTY可参考:http://msdn.microsoft.com/en-us/library/ms176105.aspx开发过程中,错误免不了。为了纠正错误与规范化...
数据库操作教程 2022-09-23 17:23:16 -
深入SQLCursor基本用法的详细介绍
由于这个游标执行一下就相当于SELECT一下其效率不敢恭维也没做深入研究。复制代码代码如下: table1结构如下 id int name varchar(50) declare@idint declare@namevarchar(50) declarecursor1cursorfor --定义游标cursor1 select*fromtable1 --使用游标的对象(跟据需要填入select文) opencursor1 ...
数据库操作教程 2022-09-23 17:21:32 -
MSSQL2005/2008日志压缩清理方法小结
适用于SQLServer2005的方法---------------------------------------------复制代码代码如下:USEDNNameGO1,清理日志复制代码代码如下:BackupLogDNNameWITHno_logGO2,截断事务日志复制代码代码如下:DUMPTRANSACTIONDNNameWITHno_logGO3,收缩两种方式: 1):压缩数据库 DBCCSHRINKDATABASE(库名) GO 2):指定数据文件,可以通过这个语句查询到:select*fromsysfiles 此方式也可以通过操作:右键你要压缩的数据库--所有任务--收缩数据库--收缩文件,分别选择数据和日志的文件要压缩的大小来执行 DBCCSHRINKFILE(文件名) GO4.为了最大化的缩小日志文件(如果是sql7.0,这步只能在查询分析器中进行)下面的示例分离pubs,然后将pubs中的一个文件附加到当前服务器。a.分离EXECsp_detach_db@dbname='库名'b.删除日志LOG文件c.再附加复制代码代码如下:EX...
数据库操作教程 2022-09-23 17:21:23 -
MSSQL数据库排序规则如何更改
1.sp_helpsortSELECTSERVERPROPERTY('Collation')查看你的排序规则.不过你的这个应该和字符集有关.2.更改服务器排序规则更改SQLServer2005实例的默认排序规则的操作可能会比较复杂,包括以下步骤:确保具有重新创建用户数据库及这些数据库中的所有对象所需的全部信息或脚本。使用工具(例如大容量复制)导出所有数据...
数据库操作教程 2022-09-23 17:21:18