【MySQL】字段名与关键字冲突解决办法

【MySQL】字段名与关键字冲突解决办法,第1张

  首先,不推荐使用MySQL的关键词来作为字段名,但是有时候的确没有注意,或者因为之前就这么写了,没办法,那怎么办呢?

  下面就详细的说明一下怎样使用 方法2 来处理。

  上面的测试表是MySQL自动生成的DDL,其实从上面就可以看出,MySQL的引号内是说明绝对的保证大小写和当做普通字符串处理。

  这里使用了maxvalue这个不常用的关键词作为字段名,一样违反了通常常规的命名规则,MySQL无法很好的识别。

  查询SQL:

  在navicat中可以正常执行,没有任何问题。

  然后再运行insert语句:

  提示下面的错误:

  提示错误,但是没有明显的说明是关键词不能识别。

  增加引号,使用MySQL的引号“`”,记住不是普通的英文单引号“'”,是倾斜的上撇,不是竖直的上撇。

  键盘输入方式为键盘英文字母键上面的数字键1最前面的那个波浪线和顿号组成的键。也就是ESC下面,TAB键上面的按键。

  这样就可以正常运行了。

修改字段类型、字段名、字段注释、类型长度、字段默认值

mysql修改字段类型:

--能修改字段类型、类型长度、默认值、注释

--对某字段进行修改

ALTER TABLE 表名 MODIFY [COLUMN] 字段名 新数据类型 新类型长度 新默认值 新注释

-- COLUMN关键字可以省略不写

alter table table1 modify column column1 decimal(10,1) DEFAULT NULL COMMENT '注释'-- 正常,能修改字段类型、类型长度、默认值、注释

alter table table1 modify column1 decimal(10,2) DEFAULT NULL COMMENT '注释'

-- 正常,能修改字段类型、类型长度、默认值、注释

mysql修改字段名:

ALTER TABLE 表名 CHANGE [column] 旧字段名 新字段名 新数据类型

alter table table1 change column1 column1 varchar(100) DEFAULT 1.2 COMMENT '注释'-- 正常,此时字段名称没有改变,能修改字段类型、类型长度、默认值、注释

alter table table1 change column1 column2 decimal(10,1) DEFAULT NULL COMMENT '注释' -- 正常,能修改字段名、字段类型、类型长度、默认值、注释

alter table table1 change column2 column1 decimal(10,1) DEFAULT NULL COMMENT '注释' -- 正常,能修改字段名、字段类型、类型长度、默认值、注释

alter table table1 change column1 column2-- 报错

mysql>alter table white_user change column name nick_name varchar(50) null comment '昵称'-- 正确

Query OK, 0 rows affected (0.02 sec)

Records: 0 Duplicates: 0 Warnings: 0

2 修改表名

ALTER TABLE 旧表名 RENAME TO 新表名


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6106607.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-15
下一篇 2023-03-15

发表评论

登录后才能评论

评论列表(0条)

保存