используя codeigniter и нужно получить идентификатор последнего автоматически увеличенного идентификатора для следующего запроса, используя oci8 - PullRequest
0 голосов
/ 29 ноября 2010

Использование codeigniter и oci8 для проекта.

$ this-> db-> insert_id (); идеально подходит для получения последнего автоматически увеличенного идентификатора предыдущего запроса, но, похоже, он не работает в базе данных оракула. ​​

Любая помощь приветствуется. Я хотел бы использовать mysql, но база данных оракула является обязательным требованием.

$ this-> db-> insert_id (); для codeigniter, это как mysql_insert_id в php ()

Ответы [ 2 ]

0 голосов
/ 29 ноября 2010

Как насчет получения следующего порядкового номера?

SELECT '||cTableName ||'_seq.currval from dual

?

0 голосов
/ 29 ноября 2010

Смотрите здесь:

Получить автоматически сгенерированный идентификатор после вставки

$data = array("value1","value2","value3");
$db = OCILogon("user","password");
$stmt = OCIParse($db,"insert into mytable values (myid.nextval,:myfield) returning id into :id");

OCIBindByName($stmt,":ID",$id,32);
OCIBindByName($stmt,":MYFIELD",$myfield,32);

while (list(,$myfield) = each($data)) {
OCIExecute($stmt);
 echo "$myfieldgot id:$id\n";
}

Можно также использовать интерфейсный слой БД, например PDO

.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...