1.问题描述: 我桌面上有一个“账号密码.db”文件,我现在想知道里面有几张表格table、表格的名字、表头结构。
2.使用SQL语句”””select name from sqlite_master where type=’table’ order by name”””,查找表格的名字。实例代码如下:
代码语言:javascript复制# coding:utf-8
import sqlite3
conn = sqlite3.connect("C:UsersAdministratorDesktop密码账号.db")
cursor = conn.cursor()
sql = """select name from sqlite_master where type='table' order by name"""
cursor.execute(sql)
result = cursor.fetchall()
print result
print type(result)
conn.close()
输出结果为:
代码语言:javascript复制D:Python3python27python.exe D:/PyCharm/dytt_spider/mongo.py
[(u'students',)]
<type 'list'
Process finished with exit code 0
可以看出,“密码账号.db”文件中有1张表格,表格名字为“students”。
3.使用SQL语句”””PRAGMA table_info(students)”””,查找“students”表格中的表头结构。
代码语言:javascript复制# coding:utf-8
import sqlite3
conn = sqlite3.connect("C:UsersAdministratorDesktop密码账号.db")
cursor = conn.cursor()
sql = """pragma table_info(students)"""
cursor.execute(sql)
result = cursor.fetchall()
print result
print type(result)
conn.close()
输出结果为:
代码语言:javascript复制D:Python3python27python.exe D:/PyCharm/dytt_spider/mongo.py
[(0, u'name', u'text', 0, None, 0), (1, u'usename', u'text', 0, None, 0), (2, u'id', u'int', 0, None, 0)]
<type 'list'
Process finished with exit code 0
可以看出“students”表中有“name”、“username”、id 三列。
补充知识:python中sqlite3模块查询数据一条或多条
我就废话不多说了,大家还是直接看代码吧~
代码语言:javascript复制#导入模块
import sqlite3
#创建链接
con = sqlite3.connect('C:python_learnDBASQLite3demosqlite3demo.db')
#创建游标对象
cur = con.cursor()
#编写sql语句
sql = "select * from t_person "
#执行语句
try:
cur.execute(sql)
#获取结果集
person_all = cur.fetchall() #获取所有数据
# person_all = cur.fetchone() #获取一条数据
for person in person_all:
print(person)
print("查询数据成功")
except Exception as e:
print(e)
print("查询数据失败")
finally:
cur.close()
con.close()
以上这篇python中查看.db文件中表格的名字及表格中的字段操作就是小编分享给大家的全部内容了,希望能给大家一个参考。