python连接mysql创建表、库,插入、查询数据

 目标:

1.创建wang123的数据库

2.使用wang123数据库创建student表

3.student表格含有id(为主键),name(不能为空),sex,grade(默认数值为60),并插入三行数据

4.查询id为2的数据

5.表中可以插入数据,并显示表中其他所有数据

import pymysql
# 连接数据库
conn = pymysql.connect('192.168.1.101', user="wsy", passwd='123456')
# 创建游标对象
cur = conn.cursor()
try:
    # 建库wang123
    cur.execute("create database wang123 character set utf8;")
except:
    print('此数据库已存在')
# 进入wang123数据库
cur.execute("use wang123 ")
try:
    #创建表格设置字段属性
    cur.execute('CREATE TABLE student (id int PRIMARY KEY , name  VARCHAR(20) NOT NULL , sex VARCHAR(2), grade int DEFAULT 60 )')
except:
    print('此表名已存在')
    conn.rollback() # 失败则回滚数据


def ins1():
    try:
        # 插入三行数据
        query = "insert into student(id,name,sex) VALUES(1,'wang','男'),(2,'zhang','女'),(3,'liu','男')"
        cur.execute(query)
        # 提交数据
        conn.commit()
        print("插入了三组数据")
    except Exception as ex:
        conn.rollback()
ins1()
# 查询id为2 的数据
cur.execute("select * from student WHERE id = '2'")
cont = cur.fetchall()  # 提取数据
print(cont)

id = int(input("请输入ID:"))
name = input("请输入name:")
sex = input("请输入sex:")


def create_info():
    try:
        # 插入输入的数据
        query = "insert into student(id,name,sex) VALUES({},'{}','{}')".format(id,name,sex)
        cur.execute(query)
        conn.commit() # 提交数据

        print("插入成功")
    except Exception as ex:
        print(ex)
        conn.rollback()
        print("你出现了上述错误,导致插入失败,请检查!")
        
create_info()

# 显示表中所有数据
cur.execute("select * from student ")
cont = cur.fetchall()  # 提取数据
print(cont)

cur.close()
# 关闭数据库连接
conn.close()

通过pycharm运行,结果为

猜你喜欢

转载自blog.csdn.net/wsy_miao/article/details/106742102