首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在PHP中的MSSQL中获取插入ID?

在PHP中,要从MSSQL数据库获取插入ID,可以使用以下方法:

  1. 使用@@IDENTITY查询

在执行插入操作后,可以使用@@IDENTITY查询来获取插入行的ID。以下是一个示例:

代码语言:php
复制
<?php
$serverName = "serverName";
$connectionOptions = array(
    "Database" => "databaseName",
    "Uid" => "username",
    "PWD" => "password"
);

// 连接到MSSQL数据库
$conn = sqlsrv_connect($serverName, $connectionOptions);

if($conn === false) {
    die(print_r(sqlsrv_errors(), true));
}

// 插入数据
$sql = "INSERT INTO tableName (column1, column2) VALUES ('value1', 'value2')";
$insertQuery = sqlsrv_query($conn, $sql);

if($insertQuery === false) {
    die(print_r(sqlsrv_errors(), true));
}

// 获取插入ID
$sql = "SELECT @@IDENTITY AS 'InsertedID'";
$insertIDQuery = sqlsrv_query($conn, $sql);

if($insertIDQuery === false) {
    die(print_r(sqlsrv_errors(), true));
}

// 打印插入ID
while($row = sqlsrv_fetch_array($insertIDQuery, SQLSRV_FETCH_ASSOC)) {
    echo "Inserted ID: " . $row['InsertedID'];
}

// 关闭连接
sqlsrv_close($conn);
?>
  1. 使用SCOPE_IDENTITY()查询

SCOPE_IDENTITY()函数与@@IDENTITY类似,但它仅返回当前作用域内的插入ID。这在处理触发器或存储过程时可能更有用。以下是一个示例:

代码语言:php
复制
<?php
$serverName = "serverName";
$connectionOptions = array(
    "Database" => "databaseName",
    "Uid" => "username",
    "PWD" => "password"
);

// 连接到MSSQL数据库
$conn = sqlsrv_connect($serverName, $connectionOptions);

if($conn === false) {
    die(print_r(sqlsrv_errors(), true));
}

// 插入数据
$sql = "INSERT INTO tableName (column1, column2) VALUES ('value1', 'value2')";
$insertQuery = sqlsrv_query($conn, $sql);

if($insertQuery === false) {
    die(print_r(sqlsrv_errors(), true));
}

// 获取插入ID
$sql = "SELECT SCOPE_IDENTITY() AS 'InsertedID'";
$insertIDQuery = sqlsrv_query($conn, $sql);

if($insertIDQuery === false) {
    die(print_r(sqlsrv_errors(), true));
}

// 打印插入ID
while($row = sqlsrv_fetch_array($insertIDQuery, SQLSRV_FETCH_ASSOC)) {
    echo "Inserted ID: " . $row['InsertedID'];
}

// 关闭连接
sqlsrv_close($conn);
?>

这些方法可以帮助您在PHP中从MSSQL数据库获取插入ID。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券