仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1429|回复: 8
打印 上一主题 下一主题

[学习教程] MSSQL网站制作之怎样有前提的分步删除数据表中的纪录

[复制链接]
透明 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:39:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
对于insert和delete,event中包含了插入/删除的记录的所有字段的值(太爽了。。)数据|前提怎样有前提的分步删除数据表中的纪录作者:eygle出处:http://blog.eygle.com日期:February22,2005
«本人下手,人给家足|Blog首页
偶然候我们必要分派删除数据表的一些纪录,分批提交以削减关于Undo的利用,本文供应一个复杂的存储历程用于完成该逻辑。
你能够依据你的必要举行得当调剂,本例仅供参考:


SQL>createtabletestasselect*fromdba_objects;Tablecreated.SQL>createorreplaceproceduredeleteTab2/**3**Usage:runthescripttocreatetheprocdeleteTab4**inSQL*PLUS,type"execdeleteTab(Foo,ID>=1000000,3000);"5**todeletetherecordsinthetable"Foo",commitper3000records.6**7**/8(9p_TableNameinvarchar2,--TheTableNamewhichyouwanttodeletefrom10p_Conditioninvarchar2,--Deletecondition,suchas"id>=100000"11p_Countinvarchar2--CommitafterdeleteHowmanyrecords12)13as14pragmaautonomous_transaction;15n_deletenumber:=0;16begin17while1=1loop18EXECUTEIMMEDIATE19deletefrom||p_TableName||where||p_Condition||andrownum<=:rn20USINGp_Count;21ifSQL%NOTFOUNDthen22exit;23else24n_delete:=n_delete+SQL%ROWCOUNT;25endif;26commit;27endloop;28commit;29DBMS_OUTPUT.PUT_LINE(Finished!);30DBMS_OUTPUT.PUT_LINE(Totally||to_char(n_delete)||recordsdeleted!);31end;32/Procedurecreated.SQL>insertintotestselect*fromdba_objects;6374rowscreated.SQL>/6374rowscreated.SQL>/6374rowscreated.SQL>commit;Commitcomplete.SQL>execdeleteTab(TEST,object_id>0,3000)Finished!Totally19107recordsdeleted!PL/SQLproceduresuccessfullycompleted.

很复杂,可是想来也有人能够用到。
mysql使用内部操作字符集gbk来进行操作,即执行"SELECT*FROMtestWHEREname=xxxor1=1/*LIMIT1";从而注入成功
小魔女 该用户已被删除
沙发
发表于 2015-1-19 20:54:05 | 只看该作者
比如日志传送、比如集群。。。
蒙在股里 该用户已被删除
板凳
发表于 2015-1-28 10:35:53 | 只看该作者
多走走一此相关论坛,多看一些实例开发,多交流0经验,没什么的,我也是刚学没多久!加油
飘灵儿 该用户已被删除
地板
发表于 2015-2-5 18:31:59 | 只看该作者
如果,某一版本可以提供强大的并发响应,但是没有Oracle的相应版本稳定,或者价格较贵,那么,它就是不适合的。
再现理想 该用户已被删除
5#
发表于 2015-2-13 05:50:13 | 只看该作者
多走走一此相关论坛,多看一些实例开发,多交流0经验,没什么的,我也是刚学没多久!加油
灵魂腐蚀 该用户已被删除
6#
发表于 2015-3-3 15:41:10 | 只看该作者
呵呵,这就是偶想说的
变相怪杰 该用户已被删除
7#
发表于 2015-3-11 11:51:26 | 只看该作者
每天坚持做不一样的是,认真做笔录,定时复习。一个月你就可以有一定的收获。当然如果你想在sql方面有一定的造诣,你少不了需要看很多很多的书籍了。
兰色精灵 该用户已被删除
8#
发表于 2015-3-18 10:25:53 | 只看该作者
varchar(max)\\\\nvarchar(max)类型的引入大大的提高了编程的效率,可以使用字符串函数对CLOB类型进行操作,这是一个亮点。
愤怒的大鸟 该用户已被删除
9#
发表于 2015-3-25 17:35:59 | 只看该作者
可能有的朋友会抱怨集成的orderby,其实如果使用ranking函数,Orderby是少不了的。如果担心Orderby会影响效率,可以为orderby的字段建立聚集索引,查询计划会忽略orderby操作(因为本来就是排序的嘛)。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-22 18:22

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表