# maxdb_insert_id

# maxdb::insert_id

(PECL maxdb >= 1.0)

maxdb_insert_id -- maxdb::insert_id — Returns the auto generated id used in the last query

### 说明

过程化风格

maxdb_insert_id ( resource `$link` ) : mixed

面向对象风格

mixed $maxdb->insert_id;

The maxdb_insert_id() function returns the ID generated by a query on a table with a column having the DEFAULT SERIAL attribute. If the last query wasn't an INSERT or UPDATE statement or if the modified table does not have a column with the DEFAULT SERIAL attribute, this function will return zero.

### 返回值

The value of the DEFAULT SERIAL field that was updated by the previous query. Returns zero if there was no previous query on the connection or if the query did not update an DEFAULT_SERIAL value.

> Note:

> If the number is greater than maximal int value, maxdb_insert_id() will return a string.

### 范例

Example #1 面向对象风格

    <?php
    $maxdb = new maxdb("localhost", "MONA", "RED", "DEMODB");

    /* check connection */
    if (maxdb_connect_errno()) {
       printf("Connect failed: %s\n", maxdb_connect_error());
       exit();
    }

    maxdb_report (MAXDB_REPORT_OFF);
    $maxdb->query("DROP TABLE mycity");
    maxdb_report (MAXDB_REPORT_ERROR);

    $maxdb->query("CREATE TABLE mycity LIKE hotel.city");
    $maxdb->query("ALTER TABLE mycity ADD id FIXED(11) DEFAULT SERIAL");

    $query = "INSERT INTO mycity (zip,name,state) VALUES ('12203','Albany' ,'NY')";
    $maxdb->query($query);

    printf ("New Record has id %d.\n", $maxdb->insert_id);

    /* drop table */
    $maxdb->query("DROP TABLE mycity");

    /* close connection */
    $maxdb->close();
    ?>

Example #2 过程化风格

    <?php
    $link = maxdb_connect("localhost", "MONA", "RED", "DEMODB");

    /* check connection */
    if (maxdb_connect_errno()) {
       printf("Connect failed: %s\n", maxdb_connect_error());
       exit();
    }

    maxdb_report (MAXDB_REPORT_OFF);
    maxdb_query($link,"DROP TABLE mycity");
    maxdb_report (MAXDB_REPORT_ERROR);

    maxdb_query($link, "CREATE TABLE mycity LIKE hotel.city");
    maxdb_query($link, "ALTER TABLE mycity ADD id FIXED(11) DEFAULT SERIAL");

    $query = "INSERT INTO mycity (zip,name,state) VALUES ('12203','Albany' ,'NY')";
    maxdb_query($link, $query);

    printf ("New Record has id %d.\n", maxdb_insert_id($link));

    /* drop table */
    maxdb_query($link, "DROP TABLE mycity");

    /* close connection */
    maxdb_close($link);
    ?>

以上例程的输出类似于：

    New Record has id 1.