oracle语句

1.批量插入(传递的是id字符串,用“,”隔开):

insert into TICKET_DISCOUNT_GOODS
select #{ticketDiscountId},gd.id,999 from goods_details gd where ','||#{goodsDetailsId}||',' like '%'||gd.id||'%'

2.mybatis 处理大于,小于,等于(转载自如下地址)

https://www.cnblogs.com/liangliping/p/10184919.html

 

3.当语句中某个字段值超长时往往在执行时会报错误,如下方式可以对超长字段进行处理:(超长字段为传入的goodsDetailsId)

<update id="updateActivityGroupbuyGoodsAllStatus">
    DECLARE
    big CLOB:='${goodsDetailsId}';
    begin
    update activity_groupbuy_goods a
    set a.status =#{status} where a.activity_groupbuy_id = #{activityGroupbuyId} and big like '%'||a.goods_details_id||'%';
    end;
</update>
4.当数据被误删除或修改后,需要恢复之前的数据时进行如下操作

查询某个时间点的数据是否是我们需要的数据
select * from goods_details as of timestamp to_timestamp('2020-09-11 08:00:03','yyyy-mm-dd hh24:mi:ss')  

直接恢复数据到之前的时间节点。

FLASHBACK TABLE goods_details TO TIMESTAMP to_timestamp('2020-09-11 08:00:03','yyyy-mm-dd hh24:mi:ss')

如果报错cannot flashback the table because row movement is not enabled 则需进行下面的  操作再进行上步操作即可。

alter table goods_details enable row movement;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值