Oracle
违反唯一约束条件 ORA-00001
原因:
手动增加记录,id大于设定sequence!
解决:
重新建表或者设置起始sequence数值(大于最大的sequence即可)!
查询表结构(建表语句)
-- Oracle 建表语句
select dbms_metadata.get_ddl('TABLE', '你的表名称') from dual;
增加列
alter table 你的表名称 add trade_no varchar2(32 byte);
删除列
-- 用戶表刪除列
alter table TB_USER drop COLUMN 列名;
修改列名称
alter table 表名rename column 旧列名 to 新列名;
查询数据库当前时间
select to_char(sysdate, 'yyy-mm-dd hh24:mi:ss') from dual;
删除表
Drop table 你的表名称;
插入一条记录及时间格式化为24小时制
-- 申請歷史增加記錄
insert into TB_HISTORY(approve_id, cif_no, status, apply_step, operator_name, deal_date, remark, create_by,
create_date, last_update_by, last_update_date)
values (2, 'lisi', 21, '提交申請', '張四', TO_DATE('2021-11-28 16:29:49', 'YYYY-MM-DD HH24:MI:SS'), '', 'lisi',
TO_DATE('2021-11-28 16:29:49', 'YYYY-MM-DD HH24:MI:SS'), 'lisi',
TO_DATE('2021-11-28 16:29:49', 'YYYY-MM-DD HH24:MI:SS'));
-- 24小时制
TO_DATE('2022-11-28 16:19:04', 'YYYY-MM-DD HH24:MI:SS')
以表中现有的数据增加一条记录
-- 以表中數據為基礎新增記錄
insert into TB_EMPLOYER(EMPLOYER_ID, cif_no, status, name, type, permit_no, permit_start, permit_end, create_by, create_date, last_update_by, last_update_date, employer_no)
select 3,
cif_no,
status,
name,
type,
permit_no,
permit_start,
permit_end,
create_by,
create_date,
last_update_by,
last_update_date,
employer_no
from TB_EMPLOYER
where EMPLOYER_ID = 1;
调整列字段类型
ALTER table 你的表名称 modify 列名称 varchar2(3 byte);
更新
update TB_USER
set USERNAME = '張四'
where CIF_NO = 'lisi';
创建表及sequence
CREATE TABLE "TB_APPROVE"
(
"APPROVE_ID" NUMBER(22, 0) PRIMARY KEY NOT NULL ENABLE,
"CIF_NO" varchar2(64 BYTE),
"STATUS" NUMBER(2, 0),
"APPLY_STEP" varchar(32),
"OPERATOR_NAME" VARCHAR(32),
"DEAL_DATE" DATE,
"REMARK" VARCHAR(128),
"CREATE_BY" varchar2(64 BYTE),
"CREATE_DATE" DATE,
"LAST_UPDATE_BY" varchar2(64 BYTE),
"LAST_UPDATE_DATE" DATE
);
CREATE SEQUENCE "SEQ_APPROVE" MINVALUE 0 MAXVALUE 999999999 INCREMENT BY 1 START WITH 1;
删除表的sequence
DROP sequence 序列号名称;
查询表当前最大id
SELECT MAX(ID) FROM 你的表的名称;
查询下一个sequence
select seq_name.nextval from dual;
Caused by: oracle.jdbc.OracleDatabaseException: ORA-00904: "AMOUNT_TOTAL": 無效的 ID。
=======》表名称写错了、字段名称错了、表中缺失该字段