python 使用pymysql连接daily,读取每一张表,并且给每一张表格增加两列,表名需要使用反引号,列名是a和b,如果a和b列存在,则跳过
时间: 2023-12-21 15:04:32 浏览: 65
python连接mysql数据库并读取数据的实现
好的,那么您可以使用以下代码来连接daily,读取每一张表,并添加两列:
```python
import pymysql
connection = pymysql.connect(host='your_host', user='your_user', password='your_password', database='your_database')
cursor = connection.cursor()
# 获取所有表名
cursor.execute("SHOW TABLES")
tables = cursor.fetchall()
for table in tables:
table_name = table[0]
# 判断表名是否符合要求
if table_name.endswith('.SZ'):
# 添加两列
cursor.execute(f"ALTER TABLE `{table_name}` ADD COLUMN `a` VARCHAR(255), ADD COLUMN `b` VARCHAR(255) ON DUPLICATE KEY UPDATE `a`=`a`, `b`=`b`")
connection.commit()
cursor.close()
connection.close()
```
在上面的代码中,我们将表名使用反引号括起来,以防止表名中包含特殊字符时出现问题。我们使用`ON DUPLICATE KEY UPDATE`语句来更新已经存在的`a`和`b`列,以避免重复添加。最后,我们提交更改并关闭游标和连接。
阅读全文