oracle 修改表结构

  1. ALTER TABLE 语句用于在已有的表中添加、修改或删除列。
    在表中添加列:alter table
    ALTER TABLE table_name
    ADD column_name datatype
    还可以设置默认值
    例如:
    ALTER TABLE user_info add(log_time TIMESTAMP(6) default sysdate not null);
    添加多个字段:
    alter table table_name add (col_1 varchar2(8) default ‘00000000’ not null, col_2 NUMBER default 3 not null);

  2. 添加字段前应先判断表中是否已经存在这个字段
    可以用下面SQL语句,查询是否已存在字段LOG_TIME
    select count(*) from USER_TAB_COLUMNS where TABLE_NAME = ‘USER_INFO’ AND COLUMN_NAME = ‘LOG_TIME’? 注意这里表名与列名必须是大写的。。。。。

也可以查询ALL_TAB_COLUMNS
select count(*) from USER_TAB_COLUMNS where TABLE_NAME = ‘USER_INFO’ AND COLUMN_NAME = ‘LOG_TIME’;
返回值为1—存在此字段
返回值为0—不存在此字段。

  1. 删除字段:
    ALTER TABLE user_info
    DROP COLUMN log_time;
    删除多个字段:
    ALTER TABLE table_name drop (col_1,col_2) ;

  2. 更新时间戳为系统时间+1小时。
    update USER_INFO set LOG_TIME = sysdate +INTERVAL ‘1’ hour where USER_ID=‘2’;

  3. oracle TIMESTAMP 由 System.Data.OracleClient存入数据库时,保存精度到秒,所以可以直接将从数据库读到的TIMESTAMP类型数据mapping为 System.DateTime 类型。不用考虑精度掉失问题。

  4. OracleCommand.ExecuteNonQuery方法:
    对于 UPDATE、INSERT 和 DELETE 语句,返回值为该命令所影响的行数。
    对于 ALTER TABLE,CREATE TABLE 和 DROP TABLE 语句,返回值为 0。 对于其他所有类型的语句,返回值为 -1。 如果发生回滚,则返回值也为-1。

  5. 修改表中字段的长度
    alter table 表名称 modify 字段名 varchar2(100 byte);
    例如: 将表epc_info 中的epc字段长度改为100。
    alter table epc_info modify epc varchar2(100 byte);

8.主键约束 (Constraints)

aa.主键约束:
要对一个列加主键约束的话,这列就必须要满足的条件就是分空
因为主键约束:就是对一个列进行了约束,约束为(非空、不重复)
语法为:
alter table 表格名称 add constraint 约束名称 增加的约束类型 (列名)

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值