python之创建数据库判断表是否在数据库

import pymysql
import re
#判断表是否在库中
def table_exists(con, table_name):
    sql = "show tables;"
    con.execute(sql)
    tables = [con.fetchall()]
    table_list = re.findall('(\'.*?\')', str(tables))
    table_list = [re.sub("'", '', each) for each in table_list]
    if table_name in table_list:
        # 存在返回1
        return 1
    else:
        # 不存在返回0
        return 0
#创建数据库
def create_database(database_name,table_name):
    db = pymysql.connect(
        host = '127.0.0.1',
        user = 'root',
        passwd = '123456'
    )
    cur = db.cursor()
    sql = 'create database if not exists {}'.format(database_name)
    cur.execute(sql)
    cur.execute("use {}".format(database_name))
    if (table_exists(cur, table_name) == 1):
        pass
    else:
        sql = 'create table {}(' \
              'id int(255) primary key not null auto_increment,' \
              'time varchar(255))'.format(table_name)
        cur.execute(sql)
        db.commit()
    db.close()
if __name__ == '__main__':
    database_name = '数据库名称'
    table_name = '表名'
    create_database(database_name,table_name)

猜你喜欢

转载自www.cnblogs.com/I-love-Xiang/p/12581283.html
今日推荐