Python连接数据库需要先导入pymysql模块:import pymysql
连接数据库步骤:1、连接数据库;2、创建游标对象;3、对数据库进行增删改查;4、关闭游标;5、关闭连接。
DBUtil.py
# 1. 连接数据库,
import pymysql
conn = pymysql.connect(
host='localhost',
user='root',
password='123456',
db='sensitivedata',
charset='utf8',
# autocommit=True, # 如果插入数据,, 是否自动提交? 和conn.commit()功能一致。
)
# ****python, 必须有一个游标对象, 用来给数据库发送sql语句, 并执行的.
# 2. 创建游标对象,
cur = conn.cursor()
# 3. 对于数据库进行增删改查
# 1). ************************创建数据表**********************************
try:
sql1 = "create table hello (id int, name varchar(30));"
cur.execute(sql1)
except Exception as e:
print("创建数据表失败:", e)
else:
print("创建数据表成功;")
# 2). *********************插入数据****************************
try:
sql2 = "insert into news_sensitive(ncontext,nword,nsenwordnum,nsensitivity,nsensitiveword,nsensitivewordremove,nsensitivewordkindmap,nsensitivekind) values('你好', '1','1','100','你好','你好','你好=1','其他');"
cur.execute(sql2)
except Exception as e:
print("插入数据失败:", e)
else:
# 如果是插入数据, 一定要提交数据, 不然数据库中找不到要插入的数据;
conn.commit()
print("插入数据成功;")
# 3). **************************查询数据*****************************
sql3 = "select * from news_sensitive;"
result = cur.execute(sql3) # 默认不返回查询结果集, 返回数据记录数。
print(result)
print(cur.fetchone()) # 1). 获取下一个查询结果集;
print(cur.fetchmany(4)) # 2). 获取制定个数个查询结果集;
info = cur.fetchall() # 3). 获取所有的查询结果
print(info)
print(len(info))
print(cur.rowcount) # 4). 返回执行sql语句影响的行数
# 4. 关闭游标
cur.close()
# 5. 关闭连接
conn.close()