MS SQL Server dernier ID inséré
Dans ma base de données de toutes les tables sont à l'aide d'une table commune pour la Séquence(ID_Table).
TABLE_ID a deux champs (Common_ID, Table_Name).
Si j'insère un enregistrement dans la table, j'ai d'abord insérer un enregistrement dans Table_ID(Auto-increment, Table_name), puis utiliser l'Auto-incrémentation de la valeur dans mon Autre Table.
Par exemple, je veux insérer dans Table_Products qui a des champs ID(Common_ID), Produit_nom, Product_ID(Auto Increment)
Je veux faire quelque chose comme ceci:
INSERT INTO TABLE_ID (Table_NAME), Values (Table_Products)
Obtenir l'ID Inséré et l'utiliser dans Table_Products:
INSERT INTO Table_Products (ID, Product_Name, Product_ID(Auto Increment)
VALUES (ID from TABLE_ID, SomeProduct, Increment)
source d'informationauteur user2345661
Vous devez vous connecter pour publier un commentaire.
Essayez celui -
Vous pouvez utiliser un
insert
déclaration auprès de laoutput
clause de générer une nouvelle Common_ID. À l'aide deinsert ... select
vous pouvez spécifier l'ID dans une opération d'insertion:Utilisation SCOPE_IDENTITY() après ur insérer déclaration à récupérer le dernier id inséré.
Cher ami, vous devez sélectionner l'id du dernier enregistrement inséré
et puis la passer dans un autre tableau, de sorte soufflet code va vous aider très bien
ce code permettra de résoudre votre problème, je définir @ID pour votre dernier l'id d'enregistrement, puis insérez-la dans l'autre table
Pour MySql utilisation
select LAST_INSERT_ID();
Toutes les autres réponses jusqu'à présent déclarer intermédiaire des variables pour
SCOPE_IDENTITY()
mais il pourrait être plus simple:Vous pourriez être également plus spécifiques à l'aide de IDENT_CURRENT()