欢迎访问 生活随笔!

凯发ag旗舰厅登录网址下载

当前位置: 凯发ag旗舰厅登录网址下载 > 编程语言 > php >内容正文

php

php 插入数据 不成功,thinkphp5连接oracle用insert插入数据失败 -凯发ag旗舰厅登录网址下载

发布时间:2024/10/14 php 33 豆豆
凯发ag旗舰厅登录网址下载 收集整理的这篇文章主要介绍了 php 插入数据 不成功,thinkphp5连接oracle用insert插入数据失败 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

春华秋衣

oracle主键log_id 不能自动递增有两个办法:1、使用oracle的自动增长序列创建序列

create sequence s_t_think_log

increment by 1 //指定序列以1递增,如果没指定,默认值1会使用

start with 1 //由1开始计数

nomaxvalue //不设置最大值

minvalue 1 //设置最小值1

cache 20 //预分配缓存大小为20

order

// 获取下一个自增id

public function getnextseq(){

$sql = "select s_t_think_log.nextval id from sys.dual";

$result = $this->query($sql);

$nextid = $result[0]['id'];

return $nextid;

}

function writelog($uid,$username,$description,$status)

{

// 注意这里啦

// 注意这里啦

$data['log_id'] = $this->getnextseq();

$data['admin_id'] = $uid;

$data['admin_name'] = $username;

$data['description'] = $description;

$data['status'] = $status;

$data['ip'] = request()->ip();

$data['add_time'] = time();

$log = db::name('think_log')->insert($data);

}

第二种,就是楼上说的 触发器啦

create or replace trigger trg_tink_log

before insert on tink_log

for each row

declare

begin

:think_log.log_id:= s_t_think_log.nextval;

end trg_t1;

总结

以上是凯发ag旗舰厅登录网址下载为你收集整理的php 插入数据 不成功,thinkphp5连接oracle用insert插入数据失败的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得凯发ag旗舰厅登录网址下载网站内容还不错,欢迎将凯发ag旗舰厅登录网址下载推荐给好友。

网站地图