oracle数据库中给字段加默认值的问题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle数据库中给字段加默认值的问题相关的知识,希望对你有一定的参考价值。
oracle数据:
create table T_USER
(
YHBM VARCHAR2(11) not null,
DLMC VARCHAR2(20) not null,
SWRY_DM VARCHAR2(11) not null,
MM VARCHAR2(60)
);
alter table T_USER
add constraint T_USER_PK primary key (YHBM);
alter table T_USER
add constraint T_USER_UNIQUE1 unique (DLMC);
alter table T_USER
add constraint T_USER_UNIQUE2 unique (SWRY_DM);
alter table T_USER modify MM default 'gdyb21LQTcIANtvYMT7QVQ==' || chr(10) || ''
上面建表和加约束是在oracle数据库中 最后一句:alter table T_USER modify MM default 'gdyb21LQTcIANtvYMT7QVQ==' || chr(10) || ''是什么意思?跟MD5码有什么关系啊?
gdyb21LQTcIANtvYMT7QVQ是字符1234,通过MD5算法加密后得到的追问
那我怎么把这个语句放到SqlServer2005下不行啊?
追答Oracle和sqlserver,语法有很多地方都不一样,不行很正常,
改成这样可以:
create table T_USER(
YHBM VARCHAR(11) not null,
DLMC VARCHAR(20) not null,
SWRY_DM VARCHAR(11) not null,
MM VARCHAR(60));
alter table T_USER add constraint T_USER_PK primary key (YHBM);
alter table T_USER add constraint T_USER_UNIQUE1 unique (DLMC);
alter table T_USER add constraint T_USER_UNIQUE2 unique (SWRY_DM);
alter table T_USER add constraint c_default default \'gdyb21LQTcIANtvYMT7QVQ==chr(10)\' for MM
oracle中给表添加一个数值类型为double的列,出现缺少关键字这个问题怎么解决?
参考技术A 请注意语法是否正确其次注意oracle是否有double这个数据类型
1.增加列
ALTER TABLE table_name ADD( column datatype [DEFAULT EXPR][,column datatype...]);
例如:
SQL>ALTER TABLE emp01 ADD eno NUMBER(4);
2.修改列定义
例如:
SQL>ALTER TABLE emp01 MODIFY job VARCHAR2(15)
2 DEFAULT 'CLERK'
3.删除列
例如:
SQL> ALTER TABLE emp01 DROP COLUMN dno;
4.修改列名
例如:
SQL>ALTER TABLE emp01 RENAME COLUMN eno TO empno;
5.修改表名
例如:
SQL>RENAME emp01 TO employee;
6.增加注释
例如:
SQL>COMMENT ON TABLE employee IS '存放雇员信息';
SQL>COMMENT ON TABLE employee.name IS '描述雇员姓名'; 参考技术B ORACLE里用NUMBER代替了DOUBLE,INT
NUMBER(m,n)就可以实现DOUBLE精度本回答被提问者采纳
以上是关于oracle数据库中给字段加默认值的问题的主要内容,如果未能解决你的问题,请参考以下文章
对于Oracle中Number类型的字段映射成Java中的具体类型的问题