mysql 中 如何设置字段的默认值?我用的Navicat8.2版本的

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql 中 如何设置字段的默认值?我用的Navicat8.2版本的相关的知识,希望对你有一定的参考价值。

我早就试过了,没用我才提问的 .
如果表已经建好了的呢?怎么设置?

参考技术A CREATE TABLE `test`.`aa` (
`a` INT NOT NULL DEFAULT '0',
`b` TIMESTAMP not null default now()
) ENGINE = InnoDB
参考以上SQl语句,分别是常量值和时间的默认值的创建方法本回答被提问者采纳
参考技术B ALTER TABLE 表名 MODIFY 字段名 INT(4) DEFAULT 70 ;
如果还有其他属性,要全加上,修改后会覆盖你以前的属性
参考技术C default 0 ;
- - ~
参考技术D 右键表,然后设置表呀 第5个回答  推荐于2018-03-04 选中表 右键 设计表 点击字段名 底下就有 默认 这个下拉框,也可以自己输入

mysql默认值问题(高分!!!)

我用这个语句
alter table 表名 modify 字段 类型 default 默认值;

修改一个表的默认值,但是表中已经存在的数据的这个字段也修改为了这个值了。
但我用Navicat,设计表里修改默认值,表中已存在的数值就不会表。
这个为什么啊??
我想用语句实现navicat的这个功能;怎么写啊。
是会修改啊。今天我又试下了,的却是会修改,我用的是Navicat!!!
为什么呀,我快疯掉了。是不是mysql的BUG啊。

默认的意思就是在对表中的设置了默认值的列不插入数据时显示的值,比如说表中两列id、name,name的默认是是张三,当你插入数据时比如这样:insert into table (id) values (1);并未对name赋值,那么表中的记录就是1,张三;
你只是修改该列的默认值,并不能修改已经存在的记录值的,若要修改需这样:
update 表名 set 字段='新值' where 字段='旧值'

我已经测试过alter table 表名 modify 字段 类型 default 默认值;
这样并不能修改已经保存在数据库中的原有记录

以上,希望对你有所帮助!
参考技术A 用什么工具阿,直接写语句,语句才是万能的

你自己写的语句就是正确的

alter table tablename modify colum char/varchar/int/ default '值' ;
参考技术B

我实验了下,用语句修改不会变的,不知道你的怎么会变

以上是关于mysql 中 如何设置字段的默认值?我用的Navicat8.2版本的的主要内容,如果未能解决你的问题,请参考以下文章

关于mysql帐号设置问题

如何判断数据库中int型字段为空?

mysql 字段值不区分大小写

mysql建立字段选择类型。

delphi连接mysql 我用的是libmysql.dll,请问该怎么设置utf-8,使得字段显示的中文不是乱码?

mysql表字段默认值