首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如果我更改列的名称,MySQL将不会创建表

问如果我更改列的名称,MySQL将不会创建表
EN

Stack Overflow用户
提问于 2019-07-23 04:22:00
回答 2查看 46关注 0票数 0

我正在使用python代码来创建MySQL表。

我可以为我的列使用特定的名称创建表,但是一旦我想要更改它们,就不再创建表。

下面的代码运行正常,没有任何问题

代码语言:javascript
复制
DROP TABLE IF EXISTS sector_tb;

CREATE TABLE sector_tb  (
    id INT NOT NULL AUTO_INCREMENT,
    sector VARCHAR(255) NOT NULL DEFAULT '',
    district_id INT NOT NULL,
    PRIMARY KEY (id),
        UNIQUE INDEX sector (sector)
)
COLLATE='latin1_swedish_ci'
;

一旦我决定将'sector‘的名称更改为'sector1’或其他任何名称,MySQL就不再创建表。下面的代码不再创建表。

代码语言:javascript
复制
CREATE TABLE sector_tb  (
    id INT NOT NULL AUTO_INCREMENT,
    sector1 VARCHAR(255) NOT NULL DEFAULT '',
    district_id INT NOT NULL,
    PRIMARY KEY (id),
        UNIQUE INDEX sector (sector)
)
COLLATE='latin1_swedish_ci'
;

运行代码时未显示错误。

EN

回答 2

Stack Overflow用户

发布于 2019-07-23 04:27:06

第二条语句中有一个明显的错误:索引中的列名与表中的列名不匹配。

sector1 VARCHAR(255)

唯一索引扇区(扇区)

如果Python代码没有报告任何错误,则必须改进错误处理。

票数 1
EN

Stack Overflow用户

发布于 2019-07-23 04:25:47

有两个选项--删除原始表并运行第二个脚本,或者使用alter sector_tb命令重命名列。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57153216

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档