Python3创建mysql数据表结构和插入数据

Author: 陌小雨Date: 2018-04-27View: 76

上一篇文章,我们已经成功通过python3连接到了数据库并新建了spiders数据库,今天我们就继续来学习python3如何创建mysql数据表及插入数据。

import pymysql

db = pymysql.connect(host='localhost', user='root', password='root', port=3306, db='spiders')
cursor = db.cursor()
sql = 'CREATE TABLE IF NOT EXISTS students (id VARCHAR(255) NOT NULL, name VARCHAR(255) NOT NULL, age INT NOT NULL, PRIMARY KEY (id))'
cursor.execute(sql)
db.close()

执行后看不到啥东西

但是数据库spiders中的students数据表已经创建好了

接下来我们试着利用python3插入一条数据:

import pymysql

id = '20180001'
user = 'Bob'
age = 20

db = pymysql.connect(host='localhost', user='root', password='root', port=3306, db='spiders')
cursor = db.cursor()
sql = 'INSERT INTO students(id, name, age) values(%s, %s, %s)'
try:
    cursor.execute(sql, (id, user, age))
    db.commit()
except:
    db.rollback()
db.close()

执行后数据就被插入到数据库中了

值得注意的是,需要执行db对象的commit()方法才可实现数据插入,这个方法才是真正将语句提交到数据库执行的方法。对于数据插入、更新、删除操作,都需要调用该方法才能生效。