怎么用SQL语句添加新字段并设置默认值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么用SQL语句添加新字段并设置默认值相关的知识,希望对你有一定的参考价值。
用SQL语句向mysql数据库中 已经建好的表中添加一个名为(sex)的新字段,并设置这个字段的默认值为“1”,百度了一下 找不到满意的答案,所以希望大虾们给予正确、准确的回答。
使用navicat来给mysql表添加字段和设置默认值。
具体操作:
第一步:打开navicat工具,连接上mysql数据库服务,如图可以查看所有表,选择其中一个需要添加字段的表,然后右击选择设计表
第二步:在设计表页面中,可以看到当前表所有的字段以及类型等信息,图形化工具可以很直观的看到各个字段信息。
第三步:然后点击添加栏位,会在表字段最后添加空白行。如果你不想把新增的字段放在最后面,可以先选择一个字段,然后点击插入栏位,即可在刚刚选择的字段前插入一个空行。
接下来在空行里填入需要新增字段的名称、类型、长度、是否为空,下方的两个空白输入框,一个就是设置的默认值,另一个是注释,如图填完信息之后,点击保存按钮。
第四步:执行sql语句之后,查看表结构信息,可以看到刚刚的字段已经正确的添加到表里了。
参考技术A ALTER TABLE 表名 ADD sex BIT NOT NULL DEFAULT 1本回答被提问者采纳sql 更改默认值
alter table `characters` add `zhuan` int(10) NOT NULL default '100';
我已经用了这个 添加了一个列
但我先把默认值 修改一下 把100改成20
用命令怎么写
命名为:
alter table tablename alter column drop default; (若本身存在默认值,则先删除)
alter table tablename alter column set default 't5';(若本身不存在则可以直接设定)
eg:
alter table `t_member_base_ext` alter member_autograph drop default;
alter table `t_member_base_ext` alter member_autograph set default null;
- t_member_base_ext 表名
- member_autograph 表字段
扩展资料:
注意事项
一、ONLY_FULL_GROUP_BY
对于使用 GROUP BY 进行查询的SQL,不允许 SELECT 部分出现 GROUP BY 中未出现的字段,也就是 SELECT 查询的字段必须是 GROUP BY 中出现的或者使用聚合函数的或者是具有唯一属性的。
二、STRICT_TRANS_TABLES
该选项针对事务性存储引擎生效,对于非事务性存储引擎无效,该选项表示开启strict sql模式。在strict sql模式下,在INSERT或者UPDATE语句中,插入或者更新了某个不符合规定的字段值,则会直接报错中断操作。
三、NO_ZERO_IN_DATE
MySQL中插入的时间字段值,不允许日期和月份为零。
四、NO_ZERO_DATE
MySQL中插入的时间字段值,不允许日期为零。
五、ERROR_FOR_DIVISION_BY_ZERO
INSERT或者UPDATE语句中,如果数据被0除,则出现警告(非strict sql模式下)或者错误(strict sql模式下)。
参考技术A更改默认值方法如下:
1、先创建一个表,给出默认值。此时sex字段默认值为“男”。
create table test(id int,
sex varchar(2) default '男')
2、将默认值修改为“女”。需要分为三步:
a.先找到表中默认值约束的名称,如图:
b.删除此约束:
c.重新建立新的约束:
表名 set
字段名=值 where
字段名=值 参考技术C alter table `characters` modi `zhuan` int(10) NOT NULL default 20;本回答被提问者采纳 参考技术D sql server
alter table characters alter column zhuan int(10) not null default '20'
oracle
alter table characters modify(zhuan int(10) not null default '20');
以上是关于怎么用SQL语句添加新字段并设置默认值的主要内容,如果未能解决你的问题,请参考以下文章