import pymysql
db = pymysql.connect(host='localhost', user='root', password='123', port=3306)
cursor = db.cursor()
cursor.execute('SELECT VERSION()')
data = cursor.fetchone()
print('Database Vsersion: ',data)
cursor.execute('CREATE DATABASE spiders DEFAULT CHARACTER set utf8')
db.close()
db = pymysql.connect(host='localhost',user='root',password='123',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()
id='002'
name='liyun'
age=20
db = pymysql.connect(host='localhost',user='root',password='123',port=3306,db='spiders')
sql = 'INSERT INTO students(id,name,age) values (%s,%s,%s)'
cursor = db.cursor()
try:
cursor.execute(sql,(id,name,age))
db.commit()
except:
db.rollback()
db.close()
db = pymysql.connect(host='localhost',user='root',password='123',port=3306,db='spiders')
cursor = db.cursor()
data={
'id':'003',
'name':'liyun',
'age':20
}
table = 'students'
keys = ','.join(data.keys())
print(data.keys())
print(keys)
values = ','.join(['%s']*len(data))
print(values)
sql= 'INSERT INTO {table}({keys}) values({values}) '.format(table=table,keys=keys,values=values)
try:
if cursor.execute(sql,tuple(data.values())):
print('success')
db.commit()
except Exception as e:
print(e)
db.rollback()
db.close()
db = pymysql.connect(host = 'localhost',user='root',password='123',port=3306,db='spiders')
cursor = db.cursor()
data = {'id':'004',
'name':'zhangyun',
'age':22
}
table = 'students'
keys = ','.join(data.keys())
values = ','.join(['%s']*len(data))
sql = 'INSERT INTO {table}({keys}) values({values}) ON DUPLICATE KEY UPDATE '\
.format(table=table,keys=keys,values=values)
update = ','.join("{key}=%s".format(key=key) for key in data)
sql += update
try:
cursor.execute(sql,tuple(data.values())*2)
print('successful')
db.commit()
except Exception as e:
print(e)
db.rollback()
db.close()
db = pymysql.connect(host='localhost',user='root',password='123',port=3306,db='spiders')
cursor = db.cursor()
table='students'
name='NANA'
condition = 'name="%s"'%name
sql = 'DELETE FROM {table} where {condition}'.format(table=table,condition=condition)
try:
cursor.execute(sql)
print('successful')
db.commit()
except Exception as e:
print(e)
db.rollback()
db.close()
db = pymysql.connect(host='localhost',user='root',password='123',port=3306,db='spiders')
cursor = db.cursor()
table = 'students'
condition = 'age>1'
sql = 'SELECT * FROM {table} where {condition}'.format(table=table,condition=condition)
try:
cursor.execute(sql)
row = cursor.fetchone()
while row:
print('Row : ',row)
row = cursor.fetchone()
except Exception as e:
print(e)
db.close()