数据库表操作
Oracle数据库:
--插入数据 insert into 表名(列名) values(插入的数据)
--修改数据 update 表名 set where (筛选条件)
--删除数据 delete from 表名 where(筛选条件)
--删除表 drop table 表名
- 表的重命名
alter table 表名 rename to 新表名;
例:alter table student rename to new_student;
- 字段重命名
alter table 表名 rename column 列名 to 新列名;
例:alter table student rename column time tonew_time;
- 批量更新
UPDATE IMP_ABGRIND_SAMPLING
SET TARGET='研磨余量'
WHERE ANGLE_LOCATION IN ('位置1','位置2','位置3','位置4','位置5','位置6','位置7','位置8','位置9','位置10');
COMMIT;
- 插入单个儿数据
UPDATE IMP_STK_PLAN
SET (VALUE_12,VALUE_13,VALUE_14,VALUE_15) =( select '-----------','-----------','-----------','-----------' from dual)
/*SET里需SELECT语句*/
WHERE STK_NAME IN ('PORT_1ASTK01_PLAN','PORT_1ASTK02_PLAN','PORT_1ASTK03_PLAN','PORT_1ASTK04_PLAN','PORT_1ASTK05_PLAN','PORT_1ASTK06_PLAN','PORT_1ASTK07_PLAN','PORT_1ASTK07_PLAN');
COMMIT;
- 新增列
alter table 表名 add(字段名字段类型默认值是否为空);
例:alter table student add(tiem number(14));
- 删除列:
alter table 表名 drop column 列名;
ALTER TABLE IMP_ABGRIND_SAMPLING DROP COLUMN TARGET;
- 删除行
DELETE FROM 表名称 WHERE 列名称 = 值
- 将表2的数据插入到表1
insert into 表1(字段名1,字段名2,……) select (字段名1,字段名2,……) from 表2;
- 给表、列添加注释
COMMENT ON TABLE TEST.IMP_MASK_IQCINFO IS 'Mask IQC检测数据记录';
COMMENT ON COLUMN TEST.IMP_MASK_IQCINFO.MASK_CLASS IS 'Mask分类';
如需修改备注,直接COMMENT就可以覆盖
- 改变数据类型
ALTER TABLE IMP_MASK_IQCINFO
MODIFY (PIXEL_NUM_NAME VARCHAR2(20 Byte));
COMMIT;
- 删除索引
DROP INDEX TEST.IMP_MASK_IQCINFO
- 创建索引
CREATE UNIQUE INDEX TEST.IMP_MASK_IQCINFO ON TEST.IMP_MASK_IQCINFO
(MASK_CLASS,MASK_TYPE,CHECK_ID,TEST_TIME,TOLERANCE_ITEMS,TEST_VALUE,STANDARD_VALUE)
/*create unique index是约束性的,其他尝试都会失败。
create unique index 是创建唯一索引,但前提是列上的数据不能有重复值。
create index不是唯一索引,只是在创建索引。*/
- 删除主键 PRIMARY KEY
ALTER TABLE IMP_MASK_IQCINFO
DROP PRIMARY KEY CASCADE;
- 新建主键
ALTER TABLE IMP_MASK_IQCINFO ADD(
CONSTRAINT IMP_MASK_IQCINFO
PRIMARY KEY
(MASK_CLASS,MASK_TYPE,CHECK_ID,TEST_TIME,TOLERANCE_ITEMS,TEST_VALUE,STANDARD_VALUE)
USING INDEX IMP_MASK_IQCINFO
ENABLE VALIDATE);
注意:
1.唯一键允许为空,空值不受唯一约束,也就是说可以有多个空值。
而主键不允许为空,如果主键可以为空,那么就和唯一键相同了。
2.主键约束确保在表中主键值不同的数据唯一,如果主键可以为空,就不能够确保数据的唯一性了,因为空值不受唯一约束限制。