sql >> Databasteknik >  >> RDS >> Sqlserver

Bästa sättet att få identiteten för den infogade raden i länkad server?

Du kan använda fjärrsidans sp_executesql :

DECLARE @ScopeIdentity TABLE (ID int);
INSERT INTO @ScopeIdentity
EXEC server.master..sp_executesql N'
  INSERT INTO database.schema.table (columns) VALUES (values);
  SELECT SCOPE_IDENTITY()';
SELECT * FROM @ScopeIdentity;

Alternativt kan du använda OPENQUERY :

SELECT *
FROM OPENQUERY(server, '
  INSERT INTO database.schema.table (columns) VALUES (values);
  SELECT SCOPE_IDENTITY() AS ID');


  1. Hämta kolumnnamn och typer av en lagrad procedur?

  2. Så här löser du org.postgresql.jdbc.PgConnection.createClob() är ännu inte implementerat

  3. Anslut online mysql-databas med den lokala xampp-servern med php

  4. Hur kräver jag ett mysql-fält?