仓酷云

标题: MSSQL网页设计摹拟字符串处置函数 stuff 的存储历程,... [打印本页]

作者: 若天明    时间: 2015-1-16 22:24
标题: MSSQL网页设计摹拟字符串处置函数 stuff 的存储历程,...
有了数据以后,我们就要想一个比较统一的方法来闪回。上面我们说了对于DML操作,可以通过反向执行所有逆操作来实现,对于语句里面的DDL,只能直接跳过。原因是一个DDL不一定有直接的逆操作。存储历程|函数|字符串ifexists(select*fromdbo.sysobjectswhereid=object_id(N[dbo].[p_stuff])andOBJECTPROPERTY(id,NIsProcedure)=1)
dropprocedure[dbo].[p_stuff]
GO/*--Ntext字段处置
摹拟字符串处置函数stuff
完成表中ntext字段的stuff处置
注重,表中必要有列名为:id的主键(或标识字段),数据范例为int
假如没有这个主键字段,大概是其他范例,则对应的必要修正存储历程
--邹建2004.07--*/
/*--挪用示例
--测试数据
createtabletb(idintidentity(1,1),contentntext)
inserttbselecta;sd
unionallselecta;sdfkjas2qasdfdfsg45yhjhdfg45645a
--挪用存储历程,将第8~9的字符交换成中国
execp_stufftb,content,8,2,中国,
select*fromtb
droptabletb
--*/
createprocp_stuff
@tbnamesysname,--要处置的表名
@fdnamesysname,--text/ntext字段名
@startint=null,--入手下手地位,NULL暗示追加数据
@lengthint=null,--交换的长度
@strnvarchar(4000),--要拔出的字符串
@wherenvarchar(1000)=--要处置的纪录的前提
as
if@strisnullreturn
declare@snvarchar(4000)
set@s=
declare@idint,@ptrvarbinary(16),@start1int
declaretbcursorlocalfor
selectid,start=datalength([+@fdname+])/2
from[+@tbname+]
+caseisnull(@where,)whenthen
elsewhere+@whereend+
opentb
fetchtbinto@id,@start1
while@@fetch_status=0
begin
select@ptr=textptr(content)
from[+@tbname+]
whereid=@id
if@startisnullor@start1<@start
updatetext[+@tbname+].[+@fdname+]@ptrnullnull@str
else
begin
set@start1=@start-1
updatetext[+@tbname+].[+@fdname+]@ptr@start1@length@str
end
fetchtbinto@id,@start1
end
closetb
deallocatetb

execsp_executesql@s
,N@startint,@lengthint,@strnvarchar(4000)
,@start,@length,@str
go

这章描述如何检查和处理在MySQL数据库中的数据损坏。如果你的表损坏很多,你应该尝试找出其原因!见G.1调试一个MySQL服务器。
作者: 乐观    时间: 2015-1-19 10:42
从项目平台的选择上讲,我们关心的,应该是一款产品能不能满足任务需求,而不是网上怎么说。
作者: 若天明    时间: 2015-1-28 05:58
对于微软系列的东西除了一遍遍尝试还真没有太好的办法
作者: 简单生活    时间: 2015-2-5 18:16
微软对CLR作了大篇幅的宣传,这是因为数据库产品终于融入.net体系中。最开始我们也是狂喜,感觉对象数据库的一些概念可以实现了。
作者: 再现理想    时间: 2015-2-13 05:46
可以动态传入参数,省却了动态SQL的拼写。
作者: 小魔女    时间: 2015-3-3 16:13
连做梦都在想页面结构是怎么样的,绝非虚言
作者: 山那边是海    时间: 2015-3-11 12:17
我个人认为就是孜孜不懈的学习
作者: 冷月葬花魂    时间: 2015-3-18 12:43
XML字段类型更好的解决了XML数据的操作。XQuery确实不错,但是个人对其没好感。(CSDN的开发者应该是相当的熟了!)
作者: 透明    时间: 2015-3-25 23:18
光写几个SQL实在叫无知。




欢迎光临 仓酷云 (http://ckuyun.com/) Powered by Discuz! X3.2