环境准备:
安装MySQLClient (https://pypi.org/project/mysqlclient/)
Python的MySQL驱动MySQLClient : pip install MySQLClient
编码:
1.建立数据库连接
1)相关参数说明
host | String | MySQL的服务器地址 |
port | int | MySQL的端口号 |
user | String | 用户名 |
passwd | String | 密码 |
db | String | 使用的数据库 |
charset | String | 连接字符集 |
2)建立连接的代码
import MySQLdb
conn = MySQLdb.connect(host='127.0.0.1', port=3306, user='root', passwd='xx', db='acechinese', charset='utf8')
print("连接建立成功")
conn.close()
2.操作数据库
最基本的DML操作实例:
import MySQLdb
conn = MySQLdb.connect(host='127.0.0.1', port=3306, user='root', passwd='xx', db='acechinese', charset='utf8') #建立数据库连接
cur = conn.cursor() #返回一个指针对象,用于访问和操作数据库中的数据
cur.execute(sqltemp) # DML SQL sqltemp ,执行数据库查询
conn.commit() #conn.commit()和conn.rollback()方法分别表示事务提交和回退。
cur.close() #cur.close()方法关闭指针并释放相关资源。
conn.close() #关闭数据库连接,并释放相关资源。
最基本的Select操作实例:
cursor.fetchall() :将返回所有结果,返回二维元组,如(('firstcolumnvalue','secondcolumnvalue'),('xx','yy'),....),
cur.execute("select fid,content from sgmfiles")
alldata = cur.fetchall() #获取所有的数据
for temp in alldata:
fid = temp[0]
content = temp[1]
print(fid,content)
cursor.fetchone():将只取最上面的第一条结果,返回单个元组如('id','name')
cur.execute("select fid,content from sgmfiles")
alldata = cur.fetchone() #获取所有的数据
fid = alldata[0]
content = alldata[1]
print(fid,content)
如果希望多次重复相同的操作推荐使用executemany,该方法需要2个参数,sql语句模型,以及数据以元组形式提供
cur.executemany("insert into segtosentence values(%s,%s,%s)",tuple(insertSentSql)) //insertSentSql = (('aa','bb','cc'),('aa','bb','cc')...)