怎么用C#往数据表中插入默认值(default)?

怎么用C#往数据表中插入默认值(default)?,第1张

比如表Table1有
A,B,C,D,E五个字段,其中E
有设置默认值
如果你在
增加一条数据到数据库时想让字段E使用默认值。
你的
sql语句
:insert
into
Table1(A,B,C,D)
values(值1,值2,值3,值4)
那么这条数据的字段E
就会是默认值了

方法1:sightml字段增加默认值 
alter table tablename alter column sightml set default 123;
方法2:更改sql语句 
SELECT COUNT() AS `行数`, if(`sightml`,`sightml`,123) as sightml FROM `cdb_memberfields` GROUP BY `sightml` ORDER BY `sightml`

先看一下最简单的例子,在test中,添加一个字段,字段名为birth,类型为date类型。
mysql>
alter
table
test
add
column
birth
date;
Query
OK,
0
rows
affected
(036
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
(000
sec)
从上面结果可以看出,插入的birth字段,默认值为空。我们再来试一下,添加一个birth1字段,设置它不允许为空。
mysql>
alter
table
test
add
column
birth1
date
not
null;
Query
OK,
0
rows
affected
(016
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
(000
sec)
哦,明白了,系统自动将date类型的值,设置了一个默认值:0000-00-00。下面我来直接指定一个默认值看看:
mysql>
alter
table
test
add
column
birth2
date
default
'2013-1-1';
Query
OK,
0
rows
affected
(028
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
(000
sec)
看到没,将增加的birth2字段,就有一个默认值了,而且这个默认值是我们手工指定的。
关于MySQL中给表添加一个字段,本文就介绍这么多,希望对大家有所帮助,谢谢!

用JET SQL 可以实现,语法结构: ALTER TABLE TABLENAME ALTER COLUMN FIELDNAME TEXT(40) DEFAULT 默认值 但是要注意,上述语句要用 ADODBCONNECTIONEXECUTE 等方法来执行,直接用上述代码建立一个查询无法保存或者运行,会得到 ACCESS 的错误提示。 或者引用DAO或ADOX,你想怎么设就怎么设,功能很全面,Access的帮助中有详细的英文使用说明。

1、首先打开数据库右键要设置表字段唯一约束的表,显示列表,如图

2、然后点击设计表,d出表窗口,如图,点击索引。

3、进入索引界面,设置名称,选择栏位,也就是选择表的字段,如图。

4、然后点击索引列表下拉按钮,选择唯一类型,如图所示。

5、最后保存设置,写个插入语句执行,第一次成功,第二次表唯一约束异常说明表字段唯一约束设置成功。

使用navicat来给mysql表添加字段和设置默认值。

具体 *** 作:

第一步:打开navicat工具,连接上mysql数据库服务,如图可以查看所有表,选择其中一个需要添加字段的表,然后右击选择设计表

第二步:在设计表页面中,可以看到当前表所有的字段以及类型等信息,图形化工具可以很直观的看到各个字段信息。

第三步:然后点击添加栏位,会在表字段最后添加空白行。如果你不想把新增的字段放在最后面,可以先选择一个字段,然后点击插入栏位,即可在刚刚选择的字段前插入一个空行。

接下来在空行里填入需要新增字段的名称、类型、长度、是否为空,下方的两个空白输入框,一个就是设置的默认值,另一个是注释,如图填完信息之后,点击保存按钮。

第四步:执行sql语句之后,查看表结构信息,可以看到刚刚的字段已经正确的添加到表里了。


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

原文地址: https://outofmemory.cn/yw/12850456.html

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

发表评论

登录后才能评论

评论列表(0条)

保存