oracle数据库的一个表中,怎么设置字段的默认值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle数据库的一个表中,怎么设置字段的默认值相关的知识,希望对你有一定的参考价值。
这个默认时间没问题,默认的‘无’不管用,怎么办啊?
如果表已经存在,用如下方法设置默认值:
alter table 表名 modify 字段名 default 默认值;
如test表中设置age字段为30,可用如下语句:
alter table test modify age default 30;
扩展资料:
Oracle关于默认值的其他用法
添加、修改默认值:alter table table_name modify column_name default 具体内容;
删除默认值:alter table table_name modify column_name default null;
增加列(约束、默认值)
语法:alter table tb_name add column datatype [default val] constraint .....
如果添加not null(primary key约束要求值也不能为null)约束,需要保证当前表中没有数据存在。
新添加的列,相当于表定义中最后一个定义的列。
参考技术A如果表已经存在,用如下方法设置默认值。
alter table 表名 modify 字段名 default 默认值;如test表中设置age字段为30,可用如下语句:
测试:
添加一条记录:
insert into test (name) values ('du小智');结果:
这里可以看到du小智的默认age则为30。
其中字段:create_date的默认值就是系统时间。
create table TEST(id number,name varchar2(10),create_date varchar2 default '无');
其中字段:create_date的默认值就是字符串“无”。
看了你的例子,觉得很晕。。。按你的表设计的那一列应该是date类型,你希望默认日期是无,那就允许为空就是,默认的应该是null值,也就是你所谓的“无”,如果你希望他显示“无”,那么这一列应该设置为varchar2类型即可。但是问题由来了,你就不可以直接使用sysdate往表里插入日期了,必须使用to_char函数来修改一下,即to_char(sysdate,'yyyy-MM-dd'),才可以插入此列。 参考技术C create table Z_test007
(
RECOID NUMBER(14) not null,
OID NUMBER(14) not null,
SUBSID NUMBER(14) not null,
REGION NUMBER(5) not null,
CUGID NUMBER(10) not null,
name1 varchar2(32) default '无'); 参考技术D create table 表名 (
id varchar2(10) default '0000000000'
)
怎么用SQL语句添加新字段并设置默认值
用SQL语句向MySQL数据库中 已经建好的表中添加一个名为(sex)的新字段,并设置这个字段的默认值为“1”,百度了一下 找不到满意的答案,所以希望大虾们给予正确、准确的回答。
使用navicat来给mysql表添加字段和设置默认值。
具体操作:
第一步:打开navicat工具,连接上mysql数据库服务,如图可以查看所有表,选择其中一个需要添加字段的表,然后右击选择设计表
第二步:在设计表页面中,可以看到当前表所有的字段以及类型等信息,图形化工具可以很直观的看到各个字段信息。
第三步:然后点击添加栏位,会在表字段最后添加空白行。如果你不想把新增的字段放在最后面,可以先选择一个字段,然后点击插入栏位,即可在刚刚选择的字段前插入一个空行。
接下来在空行里填入需要新增字段的名称、类型、长度、是否为空,下方的两个空白输入框,一个就是设置的默认值,另一个是注释,如图填完信息之后,点击保存按钮。
第四步:执行sql语句之后,查看表结构信息,可以看到刚刚的字段已经正确的添加到表里了。
参考技术A ALTER TABLE 表名 ADD sex BIT NOT NULL DEFAULT 1本回答被提问者采纳以上是关于oracle数据库的一个表中,怎么设置字段的默认值的主要内容,如果未能解决你的问题,请参考以下文章