oracle 插入语句

oracle 插入语句,第1张

嵌套一个select语句在values这里,把你要插入的一整列语句用一根select语句查询出来,再赋值给values里面的值。

按位置对应一下,batch在段在倒数第二位,所以那个地方直接引用序列

Oracle 常用SQL语法和数据对象,字符串类型的字段值超过定义的长度会出错,最好在插入前进行长度校验。

日期字段的字段值可以用当前数据库的系统时间SYSDATE精确到秒。

INSERT时最大可 *** 作的字符串长度小于等于4000个单字节,方法借用ORACLE里自带的DBMS_LOB程序包。

insert into tonglu.tb_putoutconfirm(transfer_type,package_num,handledby,username,tms_service_code,batch,weight)values(?,?,?,?,?,tonglu.batch_seq.nextval,?)

按位置对应一下,batch在段在倒数第二位,所以那个地方直接引用序列

其他你该怎么传参数还怎么传参数

Oracle不能再建表语句中实现自增的,需要借助sequence才能实现,,设置主键只需要在字段后面加primary key关键字即可

create table servicelogs(

id number(8) primary key,

servicetype varchar(100),

outsys varchar(100),

methodname varchar(100),

methodresult varchar(200),

errormessage varchar(900),

inparameter varchar(900),

returncontent varchar(900),

logtime varchar(20)

)

创建序列号:

create sequence servicelogs_sequence

increment by 1 --步长,每次增加几

start with 1--从几开始,这里是1

nomaxvalue --不设置最大值

nocycle --一直累加,不循环

nocache--不建缓冲区

当然到此也可以结束,每次调用手动调用(序列名称.nextcal),但是这样比较麻烦,还是建立一个触发器

create or replace trigger servicelogs_trig before

insert on servicelogs for each row

begin

select servicelogs.nextval into new.id from dual

end

测试:

insert into servicelogs(servicetype)values('aaab')

select * from servicelogs


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11602746.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-17
下一篇2023-05-17

发表评论

登录后才能评论

评论列表(0条)

    保存