绿色排版工具|热门专题|网站地图|移动官网|微信编辑器
您的当前位置:网站首页 > 电脑教程 > 数据库 > 正文

MySQL遭遇DELETE误操作的回滚 (2)

来源:[db:来源] 编辑:小蚂蚁站长 时间:2018-01-12 14:53:12 阅读:
  • if lines.strip()[0:3] == '###':
  • lines=lines.split(' ',3)
  • if lines[1] == 'DELETE' and lines[2] =='FROM': #该部分替换Delete为Insert
  • lines[1] = "INSERT"
  • lines[2] = 'INTO'
  • lines[-1] = lines[-1].strip()
  • if lines[1].strip() == 'WHERE':
  • lines[1] = 'VALUES ('
  • if ''.join(lines).find('@') <> -1 and lines[3].split('=',1)[0] <> num: #num为列数,要是小于最大的列数,后面均加,
  • lines[3] = lines[3].split('=',1)[-1].strip()
  • if lines[3].strip('/'').strip().find('/'') <> -1:
  • lines[3] = lines[3].split('/*')[0].strip('/'').strip().strip('/'').replace('//','').replace('/'','///'') #这里过滤掉转义的字符串
  • lines[3] = '/'' + lines[3] + '/','
  • elif lines[3].find('INT meta') <> -1: #过滤Int类型的字段为负数后带的(),正数不受影响
  • lines[3] = lines[3].split('/*')[0].strip()
  • lines[3] = lines[3].split()[0] + ','
  • elif lines[3].find('NULL') <> -1:
  • lines[3] = lines[3].split('/*')[0].strip()
  • lines[3] = lines[3] + ','
  • else:
  • lines[3] = lines[3].split('/*')[0].strip('/'').strip().strip('/'').replace('//','').replace('/'','///'') #这里过滤掉转义的字符串
  • lines[3] = '/'' + lines[3].strip('/''' ') + '/','
  • if ''.join(lines).find('@') <> -1 and lines[3].split('=',1)[0] == num: #num为列数,要是小于最大的列数,后面均加);
  • lines[3] = lines[3].split('=',1)[-1].strip()
  • if lines[3].find('/'') <> -1:
  • lines[3] = lines[3].split('/*')[0].strip('/'').strip().strip('/'').replace('//','').replace('/'','///'') #同上
  • lines[3] = '/'' + lines[3] + '/');'
  • elif lines[3].find('INT meta') <> -1: #同上
  • lines[3] = lines[3].split('/*')[0].strip()
  • lines[3] = lines[3].split(' ')[0] + ');'
  • elif lines[3].find('NULL') <> -1:
  • lines[3] = lines[3].split('/*')[0].strip()
  • lines[3] = lines[3] + ');'
  • else:
  • lines[3] = lines[3].split('/*')[0].strip('/'').strip().strip('/'').replace('//','').replace('/'','///'') #同上
  • lines[3] = '/'' + lines[3].strip('/''' ') + '/');'
  • print ' '.join(lines[1:])
  • if lines == '':
  • break
  • if __name__ == '__main__':
  • import sys
  • 相关文章推荐:

    热门阅读推荐:

    图文精选:

    Copyright©2012-2030小蚂蚁信息网版权所有 站长QQ:1614558876 粤ICP备14061018号-1


    郑重声明:本网站资源、信息来源于网络,完全免费共享,仅供学习和研究使用,版权和著作权归原作者所有,如有不愿意被转载的情况,请通知我们QQ1614558876删除已转载的信息。

    Top