记录pymsql的一些操作

数据库的结构 mysql ENGINE=MyISAM CHARSET=utf8
数据库的构成

增删改的操作封装成一个方法,返回值是影响的行数。

def mysql_alter_sql(sql, date=[], manydate=False):
    db, cursor = mysql_creat_connect()
    try:
        if manydate:
            res = cursor.executemany(sql, date)
        else:
            res = cursor.execute(sql, date)
        db.commit()
    except BaseException as e:
        logging.info(e)
        print(e, 'mysql_insert_user写入错误信息')
        db.rollback()
    mysql_close_connect(db, cursor)
    return res

调用增删改方法

# 创建一个随机浮点数
number = round(random.uniform(0, 1000), 5)
#获取现在时间并格式化
dtime = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
#插入语句
insertsql = """ INSERT INTO atest_doubledate (DTIME,DATE_ONE) VALUES (%s,%s)"""
#删除语句
delsql = "DELETE FROM atest_doubledate WHERE ID = %s"
#更改语句
updatesql = "UPDATE atest_doubledate set DTIME = %s WHERE ID = %s"
#执行插入数据操作,如果增加多行操作  [dtime, number] 改成[(dtime, number),(dtime, number),(dtime, number)]
res = mysql_alter_sql(insertsql, [dtime, number])
#插入多行数据
res = mysql_alter_sql(insertsql, [(dtime, number), (dtime, number), (dtime, number)], manydate=True)
#删除数据操作 如果删除多行 把条件更改一下
RES = mysql_alter_sql(delsql, 22)
#更新数据 操作多行方法和删除一样
des = mysql_alter_sql(updatesql, [dtime, 23])

查的数据方法

# 输入sql语句查询,返回所有数据
def mysql_query_sql(sql, date=[]):
    db, cursor = mysql_creat_connect()
    cursor.execute(sql, date)
    res = cursor.fetchall()
    mysql_close_connect(db, cursor)
    return res

使用查找方法

query = "SELECT DATE_ONE FROM atest_doubledate WHERE ID <%s"
print(mysql_query_sql(query, [5]))

# 返回结果 ((206.93,), (571.962,), (491.945,), (414.699,))

完全没有问题
ok 先记录到这里,具体的 返回一行,返回指定行数,我目前没有这个需求,先不做记录

																							2018-12-5

猜你喜欢

转载自blog.csdn.net/linxue110/article/details/84840925