誰教我建一個字段...

xupiao 2004-07-06 08:19:05
如果有一個表a,其中有字段b和c,b的初值是1,也就是第一筆記錄時是一,第二筆時就是2,第三筆時就是3,不用人去理他的,他是自動加1的,

mssql 和 db2,access都有種字段的,但oracle我不知如何建,我是用oracle自帶的工具
不是用的sql語句
...全文
83 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
dinya2003 2004-07-06
  • 打赏
  • 举报
回复
先建序列.然后执行插入,
create sequence a_seq increment by 1 start with 100;
insert into tablea values(a_seq.nextval,...) --就会自动加1了,
candy1982 2004-07-06
  • 打赏
  • 举报
回复
create table a
(b int,
c varchar2(5));

create sequence a_seq increment by 1 start with 100;

create or replace trigger t_a
before insert on a
for each row
begin
select s_a.nextval into :new.b from dual;
end;
xupiao 2004-07-06
  • 打赏
  • 举报
回复
他不能像mssql那樣
只設一下字段的datatype就行嗎,怎麼那麼麻煩的.
nicholaz 2004-07-06
  • 打赏
  • 举报
回复
先建立一个序列,然后再使用触发器。
freddy2003 2004-07-06
  • 打赏
  • 举报
回复
建一个触发器

CREATE OR REPLACE TRIGGER TRIG_AMETER_ARCH_ZZBH
BEFORE INSERT ON TAMETER_RT_ARCHIVE
FOR EACH ROW
DECLARE
-- local variables here
-- record_count integer;
/******************************************************************************
PURPOSE: 电表运行数据存档自动编号

REVISIONS:
Ver Date Author Description
--------- ---------- --------------- ------------------------------------
1.0 2003-10-17 Fred Zhang 1. Created this procedure.
******************************************************************************/
BEGIN
--select count(ZZBH) into record_count from Tameter_Rt_archive;
--if record_count=0 then
-- :new.ZZBH:=1;
-- else
SELECT SEQ_DB_RT_ARCH.NEXTVAL INTO :NEW.ZZBH FROM dual;
-- end if;
END TRIG_AMETER_ARCH_ZZBH;
/
xupiao 2004-07-06
  • 打赏
  • 举报
回复
請問a_seq 代表什麼

我現在的表名是users
這段1是id,number 型
如果設成自增

17,380

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧