python操作mysql数据库
python操作mysql数据库的相关操作实例
# -*- coding: utf-8 -*-
#python operate mysql database
import MySQLdb
#数据库名称
DATABASE_NAME = ""
#host = "localhost" or "172.0.0.1"
HOST = ""
#端口号
PORT = ""
#用户名称
USER_NAME = ""
#数据库密码
PASSWORD = ""
#数据库编码
CHAR_SET = ""
#初始化参数
def init():
global DATABASE_NAME
DATABASE_NAME = "test"
global HOST
HOST = "localhost"
global PORT
PORT = "3306"
global USER_NAME
USER_NAME = "root"
global PASSWORD
PASSWORD = "root"
global CHAR_SET
CHAR_SET = "utf8"
#获取数据库连接
def get_conn():
init()
return MySQLdb.connect(host = HOST, user = USER_NAME, passwd = PASSWORD, db = DATABASE_NAME, charset = CHAR_SET)
#获取cursor
def get_cursor(conn):
return conn.cursor()
#关闭连接
def conn_close(conn):
if conn != None:
conn.close()
#关闭cursor
def cursor_close(cursor):
if cursor != None:
cursor.close()
#关闭所有
def close(cursor, conn):
cursor_close(cursor)
conn_close(conn)
#创建表
def create_table():
sql = """
CREATE TABLE `student` (
`id` int(11) NOT NULL,
`name` varchar(20) NOT NULL,
`age` int(11) DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `name` (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
"""
conn = get_conn()
cursor = get_cursor(conn)
result = cursor.execute(sql)
conn.commit()
close(cursor, conn)
return result
#查询表信息
def query_table(table_name):
if table_name != "":
sql = "select * from " + table_name
conn = get_conn()
cursor = get_cursor(conn)
result = cursor.execute(sql)
for row in cursor.fetchall():
print(row)
#for r in row: #循环每一条数据
#print(r)
close(cursor, conn)
else:
print("table name is empty!")
#插入数据
def insert_table():
sql = "insert into student(id, name, age) values(%s, %s, %s)"
params = ("1", "Hongten_a", "21")
conn = get_conn()
cursor = get_cursor(conn)
result = cursor.execute(sql, params)
conn.commit()
close(cursor, conn)
return result
#更新数据
def update_table():
sql = "update student set name = %s where id = 1"
params = ("HONGTEN")
conn = get_conn()
cursor = get_cursor(conn)
result = cursor.execute(sql, params)
conn.commit()
close(cursor, conn)
return result
#删除数据
def delete_data():
sql = "delete from student where id = %s"
params = ("1")
conn = get_conn()
cursor = get_cursor(conn)
result = cursor.execute(sql, params)
conn.commit()
close(cursor, conn)
return result
#数据库连接信息
def print_info():
print("数据库连接信息:" + DATABASE_NAME + HOST + PORT + USER_NAME + PASSWORD + CHAR_SET)
#打印出数据库中表情况
def show_databases():
sql = "show databases"
conn = get_conn()
cursor = get_cursor(conn)
result = cursor.execute(sql)
for row in cursor.fetchall():
print(row)
#数据库中表情况
def show_tables():
sql = "show tables"
conn = get_conn()
cursor = get_cursor(conn)
result = cursor.execute(sql)
for row in cursor.fetchall():
print(row)
def main():
show_tables()
#创建表
result = create_table()
print(result)
#查询表
query_table("student")
#插入数据
print(insert_table())
print("插入数据后....")
query_table("student")
#更新数据
print(update_table())
print("更新数据后....")
query_table("student")
#删除数据
delete_data()
print("删除数据后....")
query_table("student")
print_info()
#数据库中表情况
show_tables()
if __name__ == "__main__":
main()
来源:PY学习网:原文地址:https://www.py.cn/article.html

![python操作mysql数据库[python基础教程]](https://www.zixueka.com/wp-content/uploads/2023/10/1697041947-8c652de22aabf76.jpg)
