mysql>
alter
table
test
add
column
birth
date
Query
OK,
0
rows
affected
(0.36
sec)
Records:
0
Duplicates:
0
Warnings:
0
查询一下数据,看看结果:
mysql>
select
*
from
test
+------+--------+----------------------------------+------------+-------+
|
t_id
|
t_name
|
t_password
|
t_birth
|
birth
|
+------+--------+----------------------------------+------------+-------+
|
1
|
name1
|
12345678901234567890123456789012
|
NULL
|
NULL
|
|
2
|
name2
|
12345678901234567890123456789012
|
2013-01-01
|
NULL
|
+------+--------+----------------------------------+------------+-------+
2
rows
in
set
(0.00
sec)
从上面结果可以看出,吵山插入的birth字段,默认值为空。我们再猛棚来试一下,添加枝碰则一个birth1字段,设置它不允许为空。
mysql>
alter
table
test
add
column
birth1
date
not
null
Query
OK,
0
rows
affected
(0.16
sec)
Records:
0
Duplicates:
0
Warnings:
0
居然执行成功了!?意外了!我原来以为,这个语句不会成功的,因为我没有给他指定一个默认值。我们来看看数据:
mysql>
select
*
from
test
+------+--------+----------------------------------+------------+-------+------------+
|
t_id
|
t_name
|
t_password
|
t_birth
|
birth
|
birth1
|
+------+--------+----------------------------------+------------+-------+------------+
|
1
|
name1
|
12345678901234567890123456789012
|
NULL
|
NULL
|
0000-00-00
|
|
2
|
name2
|
12345678901234567890123456789012
|
2013-01-01
|
NULL
|
0000-00-00
|
+------+--------+----------------------------------+------------+-------+------------+
2
rows
in
set
(0.00
sec)
哦,明白了,系统自动将date类型的值,设置了一个默认值:0000-00-00。下面我来直接指定一个默认值看看:
mysql>
alter
table
test
add
column
birth2
date
default
'2013-1-1'
Query
OK,
0
rows
affected
(0.28
sec)
Records:
0
Duplicates:
0
Warnings:
0
mysql>
select
*
from
test
+------+--------+----------------------------------+------------+-------+------------+------------+
|
t_id
|
t_name
|
t_password
|
t_birth
|
birth
|
birth1
|
birth2
|
+------+--------+----------------------------------+------------+-------+------------+------------+
|
1
|
name1
|
12345678901234567890123456789012
|
NULL
|
NULL
|
0000-00-00
|
2013-01-01
|
|
2
|
name2
|
12345678901234567890123456789012
|
2013-01-01
|
NULL
|
0000-00-00
|
2013-01-01
|
+------+--------+----------------------------------+------------+-------+------------+------------+
2
rows
in
set
(0.00
sec)
看到没,将增加的birth2字段,就有一个默认值了,而且这个默认值是我们手工指定的。
关于MySQL中给表添加一个字段,本文就介绍这么多,希望对大家有所帮助,谢谢!
mysql自动增加的字段设置初始值的方法和详细的 *** 作步骤如下:
1、首先,打开navicat工具并连接到mysql数据库服务,可以查看所有表,选择需要添加字段的表,然后单击鼠标右键以选择“设计表”,如下图所示。
2、其次,在设计表页面中,可以查看并高当前表的所有字段和类型。图形化工具可以直观地查看每个字段的信息,如下图所示。
3、接着,单击“添加栏位”,将在绝旁尺表字段的末尾添加空白行。如果不想将新添加的字段放在后面,可以先选择一个字段,然后单击插入栏位以在刚选择的字段之前插入空白行,如下图所示。
4、然后,在空白行中填写名称,类型,长度以及是否需要添加新字段。下启竖面的两个空白输入框,一个是设置的默认值,另一个是注释。填写信息之后,单击保存按钮,如下图所示。
5、随后,除了以上述图像处理方式添加字段并设置默认值之外,还可以使用sql语句:
alter table t_user add type int(11) DEFAULT '1' COMMENT '用户类型(1:普通用户,2:会员)'
add后面就是添加的字段名称和类型,DEFAULT是默认值,COMMENT是注释内容,如下图所示。
6、最后,执行sql语句,检查表结构信息,可以看到刚将字段正确添加到表中,如下图所示。
使用navicat来给mysql表添加字段和设置默认值。具体 *** 作:
第一步:打开navicat工具,连接上mysql数据库服务,如图可以查看所有表,选择其中一个需要添加字段的表,然后右击选择设计表
第二步:在设计表页面中,可以看到颤棚当前表所有的字段以及类型等信息,图形化工具可以很直观的看到各个字段信息。
第三步:然后点击添加栏位,会在表字段最后添加空白行。如果你不想把新增的字段放在最后面,可以先选择一个字段,然后点击插入栏位,即可在锋袭刚刚选择的字段前插入一个空行。
接下来在空行里填入需要新增字段的名称、类型、长度、是否为空,下方的两个空白输入框,一个就是设置的默认值,另一个是注茄基则释,如图填完信息之后,点击保存按钮。
第四步:执行sql语句之后,查看表结构信息,可以看到刚刚的字段已经正确的添加到表里了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)