当前位置:Gxlcms > 数据库问题 > python3操作MySQL数据库

python3操作MySQL数据库

时间:2021-07-01 10:21:17 帮助过:2人阅读

# ======== Setting linked test databases =========== host = 192.168.17.123 user = root password = 123456 db=polls # ======== MySql base operating =================== class MySQLOperating(): def __init__(self): try: # Connect to the database self.connection = pymysql.connect(host = host, user = user, password = password, db = db, charset = utf8mb4, cursorclass = pymysql.cursors.DictCursor) except pymysql.err.OperationalError as e: print("Mysql Error %d: %s" %(e.args[0], e.args[1])) # clear table data def clear(self, table_name): real_sql = "delete from " + table_name + ";" with self.connection.cursor() as cursor: cursor.execute("SET FOREIGN_KEY_CHECKS = 0;") cursor.execute(real_sql) self.connection.commit()
def insert(self, table_name, data): for key in data: data[key] = "" + str(data[key]) + "" key = ,.join(data.keys()) value = ,.join(data.values()) real_sql = "INSERT INTO " + table_name + " (" + key + ") VALUES (" + value +")" with self.connection.cursor() as cursor: cursor.execute(real_sql) self.connection.commit() # close database def close(self): self.connection.close() if __name__ == __main__: db = MySQLOperating() table_name = "poll_question" data = {id:1, question_text:you buy pro6?} db.clear(table_name) db.insert(table_name, data) db.close()

 

2.插入数据

import sys
import MySQLOperating

# Inster table datas
def insert_data(table, datas):
    db = MySQLOperating()
    db.clear(table)
    for data in datas:
        db.insert(table, data)
    db.close()

#Create data
table_poll_question = "polls_question"
datas_poll_question =[ {id: 1, question_text: you buy pro6?, pub_date:2016-07-23 09:58:56.000000}]

table_poll_choice = "polls_choice"
datas_poll_choice =[{id: 1, choice_text: buy, votes: 0, question_id: 1},
                              {id: 2, choice_text: not buy, votes: 0, question_id: 1},]


# init data
def init_data():
    insert_data(table_poll_question, datas_poll_question)
    insert_data(table_poll_choice, datas_poll_choice)

if __name__ == __main__:
    init_data()

 

3.更新数据

 

python3操作MySQL数据库

标签:

人气教程排行