【SQL】常用的python查询和修改sql语句的代码汇总!

以下是我常用的【python】连接、查询和修改SQL语句的方法,我把他们打包成def,方便日后调用,建议大家收藏使用!

1. 查询和修改sql语句的代码汇总

def mysql_engine(mysql_user,mysql_pwd,mysql_host,mysql_db):
   '''连接数据库'''
    engine = create_engine('mysql+pymysql://{}:{}@{}:3306/{}?charset=utf8'
                           .format(mysql_user, mysql_pwd, 
                                   mysql_host, mysql_db))    
    return engine


def create_table(): 
   '''建表语句 使用的时候额外修改表名和字段!table是表名,id,url,html是字段'''
    engine.execute('''
    create table if not exists data(
        id INTEGER PRIMARY KEY AUTOINCREMENT,
        url text,
        html text
    )
    ''')
     

def read_sql(table_name,engine):
    """查询sql的数据"""
    sql = ''' select * from %s''' % table_name
    df = pd.read_sql_query(sql, engine)
    return df


def get_data(sql):
    """自定义sql"""
    return pd.read_sql_query(sql, engine)


def save_data(data,sql_name):
    """上传数据"""
    data.to_sql(sql_name,con=engine,if_exists="append",index=False)


def run_sql(sql):
    """执行sql语句"""
    engine.execute(sql)


def update_data(engine,result_json):
    '''更新sql数据库的数据存入,table_name是表名,要自行修改'''
    update_sql = f"UPDATE table_name SET status=1"
    #如果修改的内容是个json,可以用一以下的部分 ,result_json表示的是json格式
    update_sql = f"UPDATE table_name SET status=1, data_response='{json.dumps(result_json, ensure_ascii=False)}'".replace('%', '%%%%') #存入json的数据格式
    print('sql语句是:',update_sql)
    engine.execute(update_sql) #执行修改

如果感兴趣的朋友,可以把它封装成类。我比较喜欢用函数来调,省的搞self了在这里插入图片描述

2.SQL附录:

  1. MySQL 常用的数据类型

数值类型

INT - 整数类型,用于存储整数值。
TINYINT - 非常小的整数类型,适用于存储非常小的整数值。
SMALLINT - 小整数类型,适用于存储较小的整数值。
MEDIUMINT - 中等大小的整数类型,适用于存储中等大小的整数值。
BIGINT - 大整数类型,用于存储非常大的整数值。
DECIMAL - 定点数类型,用于存储精确的数值,如货币。
FLOAT - 浮点数类型,用于存储单精度浮点数。
DOUBLE - 双精度浮点数类型,用于存储双精度浮点数。

字符串类型

CHAR - 固定长度的字符串类型,适用于存储长度固定的数据。
VARCHAR - 可变长度的字符串类型,适用于存储长度可变的字符串。
TEXT - 用于存储大量文本数据。
BLOB - 二进制大对象,用于存储大量二进制数据,如图片。
ENUM - 枚举类型,允许你为列的值设定一个允许的值列表。
SET - 集合类型,允许你为列的值设定一个值的集合。

日期和时间类型

DATE - 日期类型,格式为YYYY-MM-DD。
TIME - 时间类型,格式为HH:MM:SS。
DATETIME - 日期和时间类型,格式为YYYY-MM-DD HH:MM:SS。
TIMESTAMP - 时间戳类型,与UNIX时间戳类似。
YEAR - 年份类型,用于存储年份。

其他类型

BOOLEAN - 布尔类型,MySQL中使用TINYINT(1)来表示。
JSON - JSON类型,用于存储JSON格式的数据。

2.MySQL 常用的数据类型表格整理

在这里插入图片描述
(表格内容出自:《MySQL数据库原理及应用》)

  • 7
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值