#!/usr/bin/python3.3
import re
def main():
#先得到要分割的文件的起始和结束位置所在行数并放入列表x中
count,total,j,l = 0, 0, 0, 0
x = [0,]
fin = open('cdu.sql','r')
for line in fin:
total += 1
if re.search('-- -----*',line): #以此判断表的数量
count += 1
if count % 10 == 0:#每到10张表时将分割的行数写入x列表中
#print(count,total)
x.append(total)
x.append(len(open('cdu.sql').readlines())+1) #将最后一行也放入x中
for i in x:
print(i,end = ' ')
print()
cnt=1
#读取x中的行数,起始和结束位置将文件内容复制到新文件中
for i,j in enumerate(open('cdu.sql','r')):
if i<=x[cnt]:
with open('%dcdu.sql'%cnt,'a+') as f:
f.write(j)
else:
cnt+=1
print("wirte file"+str(cnt))
print("ok")
if __name__=='__main__':main()
python分割sql文件的更多相关文章
python分割txt文件
a=open('A.txt','r').readlines() n=3 #份数 qty=len(a)//n if len(a)%n==0 else len(a)//n+1 #每一份的行数 for i ...
python代码执行SQL文件(逐句执行)
一.简介 关于Python如何连接数据库并执行SQL语句,几乎所有的Python教程都会讲,教程里基本只介绍了执行单条SQL语句的方法,但是实际生产过程中可不只是执行一两条语句,动辄几十条甚至上百条的 ...
python将json格式的数据转换成文本格式的数据或sql文件
python如何将json格式的数据快速的转化成指定格式的数据呢?或者转换成sql文件? 下面的例子是将json格式的数据准换成以#_#分割的文本数据,也可用于生成sql文件. [root@bogon ...
使用Python批量修改数据库执行Sql文件
由于上篇文章中批量修改了文件,有的时候数据库也需要批量修改一下,之前的做法是使用宝塔的phpMyAdmin导出一个已经修改好了的sql文件,然后依次去其他数据库里导入,效率不说极低,也算低了,且都是些 ...
python学习——大文件分割与合并
在平常的生活中,我们会遇到下面这样的情况: 你下载了一个比较大型的游戏(假设有10G),现在想跟你的同学一起玩,你需要把这个游戏拷贝给他. 然后现在有一个问题是文件太大(我们不考虑你有移动硬盘什么的情 ...
用python合并N个不同字符集编码的sql文件的实践
背景:我有一项工作任务是将svn某文件夹日常更新的sql文件(归类到日期命名的文件夹中)拿到数据库中运行. 一开始,我是先把sql文件update下来,用notepad++打开,拷贝每个文本的sql语 ...
可以在SQL语句中使用“?”占位符。比如:dn=1
dn1=2
dn3=8999
con = dt.connect("data.db")
cur = con.cursor()
sql="update plcandsql set tosql1=?,tosql1=? where id=1"
cur.execute(sql, (dn,dn1))
你可以访问Python数据库接口及API查看详细的支持数据库列表。不同的数据库你需要下载不同的DB API模块,例如你需要访问Oracle数据库和Mysql数据,你需要下载Oracle和MySQL数据库模块。DB-API 是一个规范. 它定义了一系列必须的对象和数据库存取方式, 以便为各种各样的底层数据库系统和多种多样的数据库接口程序提供一致的访问接口 。
Python的DB-API,为大多数的数据库实现了接口,使用它连接各数据库后,就可以用相同的方式 *** 作各数据库。
Python DB-API使用流程:
引入 API 模块。
获取与数据库的连接。
执行SQL语句和存储过程。
关闭数据库连接。
什么是MySQLdb?
MySQLdb 是用于Python链接Mysql数据库的接口,它实现了 Python 数据库 API 规范 V2.0,基于 MySQL C API 上建立的。
如何安装MySQLdb?
为了用DB-API编写MySQL脚本,必须确保已经安装了MySQL。复制以下代码,并执行:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
import MySQLdb
如果执行后的输出结果如下所示,意味着你没有安装 MySQLdb 模块:
Traceback (most recent call last):
File "test.py", line 3, in <module>
import MySQLdb
ImportError: No module named MySQLdb
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)