账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    python MySQLdb 创建表的问题
    22
    0

    各位大神好,我是python菜鸟一枚~~以前只用来做计算,现在准备学习下开发简单的python项目,现在遇到一个问题(可能很水,请轻拍 T_T)

    问题如下:

    读文件,解析,然后写入表中。
    问题出在最后一个环节,通过list传参,得到要执行的sql脚本中的字段有引号,mysql创建表失败,

    主要代码如下:

    sqlStr_create = '''
    CREATE TEMPORARY TABLE temTB(
       %s INT UNSIGNED AUTO_INCREMENT,
       %s INT UNSIGNED,
       %s VARCHAR(50),
       %s VARCHAR(30),
       %s VARCHAR(50),
       %s VARCHAR(30),
       %s INT,
       %s VARCHAR(10),
       %s varchar(10),
       %s varchar(30),
       %s INT,
       %s varchar(20),
       %s INT,
       %s INT,
       %s INT,
       %s INT,
       %s varchar(20),
       %s varchar(20),
       PRIMARY KEY ( %s )
    )ENGINE=MEMORY DEFAULT CHARSET=utf8;
    '''
    tem_list = ['id', 'age', 'job', 'marital', 'education', 'default', 'balance', 'housing', 'loan', 'contact', 'day', 'month', 'duration', 'campaign', 'pdays', 'previous', 'poutcome', 'y', 'id']
    cursor.execute(sqlStr_create, tem_list)

    报错信息如下:
    "You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''id' INT UNSIGNED AUTO_INCREMENT,n 'age' INT UNSIGNED,n 'job' VARCHAR(50),n ' at line 2"))

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    更多回答
    网站公告
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部