2
我想獲得最後插入的特定表的ID。任何人都可以告訴我我怎麼能得到那個? 我們在mysql中有mysql_insert_id()
。我們在sql server 2008中有類似的功能嗎?得到最後插入的ID在SQL Server 2008中
我想獲得最後插入的特定表的ID。任何人都可以告訴我我怎麼能得到那個? 我們在mysql中有mysql_insert_id()
。我們在sql server 2008中有類似的功能嗎?得到最後插入的ID在SQL Server 2008中
我使這個函數變得很容易:)...如果你有多於一個的數據庫資源只是將它傳遞給mssql_query請求。這將檢索該資源連接上生成的最後一個唯一標識。
mssql_query("insert into data(name) values('bob')");
$id = getLastId();
function getLastId() {
$result = mssql_fetch_assoc(mssql_query("select @@IDENTITY as id"));
return $result['id'];
}
像這樣的作品非常漂亮
$sql = "insert into tables(field) values (value);SELECT SCOPE_IDENTITY()";
$db = getConnection();
$results = mssql_fetch_assoc(mssql_query($sql));
$lastid=$results['computed'];
你可能想看看SCOPE_IDENTITY過,因爲在一個稍微不同的方式既@@ IDENTITY和SCOPE_IDENTITY工作。 –
在你的解決方案中,我需要運行一個額外的查詢。我們不這樣做,而不需要在系統中運行額外的查詢? –
nope。它的唯一插入,所以不會是一個問題。也因爲它使用相同的數據庫鏈接,它真的不會有所作爲。你可以編寫一個存儲過程,它可以返回你想要的任何東西,但如果你不需要它,這會更容易。 – duante