【HeidiSql_01】python在heidisql当中创建新表的注意事项

python在heidisql当中创建新表的注意事项

在这里插入图片描述
假设你已经在python当中弄好了所有的结果,并且保存在df_all这个dataframe当中,然后要将其导入数据库当中并创建一张新的表进行保存。

# 构建数据库连接,将merged_df写回数据库
from sqlalchemy import create_engine
engine = create_engine("mysql+pymysql://abc:mima@IPdizhi:duankou/g12", encoding='utf-8', echo=True)
# mysql+pymysql://用户名:密码@主机名:端口号/数据库名
con = engine.connect()  # 创建连接
df_all.to_sql(name='bug_info', con=con, if_exists='append', index=False)
  • 上面这段代码当中df_all就是要创建的新的表的数据,df_all是你的pandas数据,但是一定要注意!!!!!!!,这个表名要在数据库中不存在,不然就会把别人的覆盖
  • 第一次代码运行完先看看你代码生成的表有没有问题,没问题了再换回replace

在这里插入图片描述

  • 如何查看数据库当中原本是否存在这个表名?(防止替换掉别人的数据)
  • 首先,在上面这段代码当中,已经有了mysql+pymysql://abc:mima@IPdizhi:duankou/g12,说明是在g12数据库当中要创建一张新的表
  • 因为如果在其他数据库当中出现了相同的表名是可以的,只要保证你自己的数据库没有出现相同的表名就可以了。

在这里插入图片描述

  • hedisql有点问题,就是有时候replace了,但是要重新退出数据库之后重新进入,才能知道。
### 如何使用HeidiSQL创建 为了通过HeidiSQL创建一个格,可以编写并执行相应的SQL语句。下面是一个标准的`CREATE TABLE`命令的例子: ```sql CREATE TABLE example_table ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(100) NOT NULL, age TINYINT UNSIGNED, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ); ``` 上述代码定义了一个名为`example_table`的,其中包含了四个字段:`id`, `name`, `age`, 和 `created_at`. 这里`id`被设置为主键并且自动增加;`name`存储字符串类型的姓名数据;`age`用于记录年龄信息,并且不允许负数;最后`created_at`会保存每条记录创建的时间戳。 要利用HeidiSQL来运行这段脚本,在工具内打开目标数据库之后,切换到“SQL”标签页并将上面的SQL指令粘贴进去。确认无误后点击“Execute/Refresh (F9)”按钮即可完成建操作[^1]。 对于更复杂的场景,比如需要处理非唯一索引的情况时,可以通过指定`INDEX`关键字而不是`UNIQUE INDEX`来实现这一点。尽管如此,值得注意的是,某些情况下系统可能会采取额外措施确保内部一致性[^2]。 当涉及到较为特殊的查询逻辑设计时,也可以采用子查询的方式构建临时视图来进行复杂的数据筛选工作。虽然这种方法可能不是最直观的选择,但在特定条件下确实可行[^3]。 另外,考虑到不同的应用场景和技术选型背景,了解关系型数据库与其他类型存储方案之间的差异也是十分重要的。例如,在面对多对一或多对多关联关系管理方面,传统的关系模型提供了成熟的解决方案,而兴的文档型数据库则试图提供更加灵活的数据结构支持[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

温欣2030

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值