略微加速

PHP官方手册 - 互联网笔记

PHP - Manual: ibase_gen_id

2024-11-14

ibase_gen_id

(PHP 5, PHP 7 < 7.4.0)

ibase_gen_idIncrements the named generator and returns its new value

说明

ibase_gen_id(string $generator, int $increment = 1, resource $link_identifier = null): mixed
警告

本函数还未编写文档,仅有参数列表。

返回值

Returns new generator value as integer, or as string if the value is too big.

add a noteadd a note

User Contributed Notes 3 notes

up
0
robert
15 years ago
EXAMPLE:
You need to know the generator´s value after INSERT:

Before INSERT-Statement run

$nextnumber=ibase_gen_id ("GEN_NAME",1);

GEN_NAME: is the generator´s name

1: means add 1 to actual value of generator

$nextnumber: is variable to store generators value after incrementing

In the INSERT-Statement you can use $nextnumber instead of using generator directly like in:
INSERT INTO test (field1, field2) VALUES gen_id(gen_test_id, 1), 'testme');
up
-3
escoric at latinmail dot com
17 years ago
$sql="INSERT INTO mitabla(campo1,campo2,..campo n) VALUES(GEN_ID(mitabla1_codigo_gen,1),'contenido 1', 'contenido 2', 'contenido n' )";
up
-4
mfischer at php dot net
18 years ago
Question arose on php-dev:

How does ibase_gen_id() handle 64bit values?

Interbase 6/Firebird generators are always 64-bit signed integers
(Firebird's BIGINT type), regardless of the platform the client is
running.
On 64-bit platforms, this will never require conversion as PHP's int
type is 64 bits wide on those platforms. On 32-bit platforms, the
generated value is converted to a string if it exceeds the limits of a
32-bit signed integer.
(This behaviour is consistent with the ibase_fetch_*() functions, that
will use strings to represent numerical values that cannot be represented
accurately using native PHP numerical types.)

[Edited by PHP/Interbase maintainer.]

官方地址:https://www.php.net/manual/en/function.ibase-gen-id.php

北京半月雨文化科技有限公司.版权所有 京ICP备12026184号-3