之前没有一点儿操作数据库的实际经验,python也没有实现过完整的程序。几乎是走一步搜一步,学到的倒也挺多,对数据库没有那么陌生了。遇到的最大问题却是编码问题……
2、安装SQL Server,采用的2005。计算机为Win7.
3、安装pymssql模块。使用的Python2.7,windows下没有官方发布的针对python2.7的pymssql,从这里得到的 猛点。
最好使用pyodbc,因为pymssql有中文编码问题。
① 可以在SQL Server Management Studio中手动添加。数据库--右键附加--添加--选择MDF。会自动添加LDF信息,因为没有LDF,需要手动将其删除,不然会报错。
② 采用SQL语句批量附加:EXEC sp_attach_db DBName, FilePath
如 EXEC sp_attach_db "GroupData1", "H:\QQ数据库\QunData\GroupData1_Data.MDF"
每个GroupData数据库包含100个表,格式相同,存有QQ号与QQ群的对应关系,以及年龄昵称等信息。每个QQInfo数据库包含10张表,包含QQ群的标题,描述等信息。
--------------------------------------------------------------------------------------
一、准备
1、下载泄漏的QQ数据库。7z格式压缩24.5G,解压后100G。包含11个GroupData.MDF与11个QQInfo.MDF。2、安装SQL Server,采用的2005。计算机为Win7.
3、安装pymssql模块。使用的Python2.7,windows下没有官方发布的针对python2.7的pymssql,从这里得到的 猛点。
最好使用pyodbc,因为pymssql有中文编码问题。
二、添加数据库
只有MDF,没有LDF。MDF是数据库主文件,LDF是日志文件。① 可以在SQL Server Management Studio中手动添加。数据库--右键附加--添加--选择MDF。会自动添加LDF信息,因为没有LDF,需要手动将其删除,不然会报错。
② 采用SQL语句批量附加:EXEC sp_attach_db DBName, FilePath
如 EXEC sp_attach_db "GroupData1", "H:\QQ数据库\QunData\GroupData1_Data.MDF"
每个GroupData数据库包含100个表,格式相同,存有QQ号与QQ群的对应关系,以及年龄昵称等信息。每个QQInfo数据库包含10张表,包含QQ群的标题,描述等信息。
三、Python连接数据库
# 采用pyssql:
conn = pymssql.connect(host='localhost', user='user', password='passwd', database='dbname')
# 采用pydobc:
conn = pyodbc.connect("DRIVER={SQL Server}; SERVER=127.0.0.1; DATABASE=dbname; UID=user; PWD=passwd")
cur = conn.cursor()
cur.execute("select QQNum from Group1 where QunNum = 100010")
rows = cur.

本文介绍了如何使用Python连接和操作QQ群数据库,包括数据库连接、人机交互的cmd模块、中文编码问题的解决,以及数据库的优化方法如建立索引和改变数据类型。在处理中文编码时,通过指定charset参数为'utf8'来避免乱码问题。在遇到困难时,将数据类型从varchar转换为nvarchar也能有效防止乱码。文章还提及了日志减小的策略。
最低0.47元/天 解锁文章

959

被折叠的 条评论
为什么被折叠?



