一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第4天,点击查看活动详情。 放假就一直拖延,没有行动力,非得是接近十点了才开始学习开始写文章,可恶有点控制不住自己了.
关系型数据库MySql
以前学习Java的时候接触过它,是一个小型的关系型的数据库,有主键外键.关系型数据库数据的存储方式,是表,表中有列,每一个列代表一个字段,,每一行代表一条记录
连接数据库并创建表
import pymysql
db = pymysql.connect(host='我用的阿里云的云数据库.mysql.rds.aliyuncs.com',user='username', password='password', port=3306)
cursor = db.cursor()
cursor.execute('SELECT VERSION()')
data = cursor.fetchone()
print('Database version:', data)
cursor.execute("CREATE DATABASE spiders DEFAULT CHARACTER SET utf8")
db.close()
并且我们创建了一个名为spiders的数据库
连接spiders数据库并创建表
原有的数据库链接不变,添加新的参数,`db='新建的数据库名字'
import pymysql
db = pymysql.connect(host='URL地址',user='user你的名字', password='password', 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()
好的我们去数据库看一看执行的结果:
可以看到 我们成功地在新建的数据库中创建了一个student表.
尝试在新建的表中插入数据
其实就是写好SQL 然后去执行它,举个例子:
import pymysql
id = '20210404'
user = 'flynt'
age = 20
db = pymysql.connect(host='URL地址',user='user你的名字', password='password', 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()
如果顺利的话,应该在student表中会看到一天数据,ID=20210404,名字为flynt ok,让我们去表中查看一下:
基本用法就是先定义SQL然后再执行.学好写SQL这些问题就迎刃而解了