Python操作MySQL

1, 连接MySQL


import pyMySQL

连接MySQL

参数1:表示主机或IP地址

参数2: 表示MySQL 的用户名

参数3: 表示MySQL 的密码

参数4: 表示MySQL 的数据库名

conn= pymysql.connect('localhost','root','root','mydb2')

conn=pymysql .connect('10.36.132.6','root','root','mydb2')

# 创建游标对象,可以执行sql语句

cursor=conn.cursor()

sql 语句

sql='select version()'

执行sql语句

cursor .execute(sql)

res = cursort.fetchone()

print(res)

# 关闭游标对象 

cursor.close()

# 关闭MySQL的连接

conn,close()

2.插入数据


import pymysql

conn=pymysql.connect('localhost','root','root','mydb2')

cursor = conn.cursor()

# 插入数据

sql = 'insert into person (name,age) values('aa',20)'

try:

    cursor.execute(sql)

# 提交事务

conn.commit()

except:

    # 回滚

conn,rollback()

cursor.close()

conn.close()

3.删除数据

import pymysql

conn=pymysql.connect('localhost','root','root','mydb2')

cursor = conn.cursor()

删除数据

sql='delete from person where id= 18'

try:

cursor.execute(sql)

#提交事务

conn.commit()

except:

# 回滚

conn.rollback()

cursor.close()

conn.close()


4.更新数据

import pymysql

conn= pymysql.connect('localhos','root','root','mydb2')

cursor= conn.cursor()

更新数据

sql='update person set age=30 where id = 20 '

try:

    cursor.execute(sql)

# 提交事务

conn.commit()

except:

# 回滚

conn.rollback()

cursor,close()

conn.close()


5.查询数据

import pymysql 

conn=pymysql.connect('localhost','root','root','mydb2',charset='utf8')

cursor =conn.cursor()

# 查询数据

sql='select * from person'

执行sql

cursor.execute(sql)

# fetchone()  :每次查询下一条数据

#res = cursor.fetchone()

# print (res)

res=cursor.fetchone()

print(res)

res=cursor.fetchone()

print(res)

fetchall()  # 所有数据

res== cursor.fetchall()

res=cursor.fetchmany(3)  # 前3条数据

for row in res:

print(row)

print(cursor.rowcount)  # 总的数据条数

cursor.close()

conn.close()

练习,使用python操作MySQL数据库

1.创建表格

create table tb_dept(

dno  int not null comment '编号',

dname varchar(10) not null comment '名称',

dloc varchar(20) not null comment '所在地',

priamry key(dno)

);

insert into tb_dept values

(10,'会计部','北京')

(20,'研发部','成都')

(30,'销售部','重庆')

(40,'运维部','深圳')

create tb_emp

(

eno  int not null comment '员工编号',

ename varchar(20) not null comment '员工姓名',

job varchar(20) not  null comment '员工职位',

mgr int comment '主管编号',

sal int not null comment '员工月薪',

comm int comment '每月补贴',

dno int comment '所在部门编号',

priamry key (eno)

);

alter  table tb_emp add constraint fk_emp_dno foreign key (dno)

references tb_dept(dno);

insert into tb_emp values

(7800, '张三丰', '总裁', null, 9000, 1200, 20),

(2056, '乔峰', '分析师', 7800, 5000, 1500, 20),

(3088, '李莫愁', '设计师', 2056, 3500, 800, 20),

(3211, '张无忌', '程序员', 2056, 3200, null, 20),

(3233, '丘处机', '程序员', 2056, 3400, null, 20),

(3251, '张翠山', '程序员', 2056, 4000, null, 20),

(5566, '宋远桥', '会计师', 7800, 4000, 1000, 10),

(5234, '郭靖', '出纳', 5566, 2000, null, 10),

(3344, '黄蓉', '销售主管', 7800, 3000, 800, 30),

(1359, '胡一刀', '销售员', 3344, 1800, 200, 30),

(4466, '苗人凤', '销售员', 3344, 2500, null, 30),

(3244, '欧阳锋', '程序员', 3088, 3200, null, 20),

(3577, '杨过', '会计', 5566, 2200, null, 10),

(3588, '朱九真', '会计', 5566, 2500, null, 10);

2.添加一个部门

import pymysql

def main():

no = int(inport('编号:'))

name= inport('名字')

loc=inport ('所在地:')

# 创建数据库连接对象

con= pymysql . connect(host='localhost',port=3306),

database='hrs',charset='utf8',

user = 'yourname',password='yourpass')

try:

    # 通过连接对象获取游标

with con,cursor() as cursor:

    # 3.通过游标执行sql并获得执行结果

result= cursor.execute(

insert into tb_dept values (%s,%s,%s)'',

(no,name,loc)

)

if result==1:

prrint('添加成功')

        # 操作成功提交事务

con.commit()

你可能感兴趣的:(Python操作MySQL)