Requisitos: Um procedimento armazenado, precisamos inserir um dado nas tabelas A e B, onde a principal relação de chave estrangeira entre a tabela A e a tabela B, as colunas associadas à tabela B são as chaves primárias da tabela A, precisamos inserir o valor primário da chave da tabela A após a inserção concluída, precisamos obter o valor primário da chave da tabela A e então inserir os dados na tabela B.
Após inserir um registro, você deve obter imediatamente o valor de retorno da chave primária em seu datasheet. Essa chave primária é gerada automaticamente.
Primeiro, crie uma tabela temporária para testar, cujo código é o seguinte:
@@IDENTITY
Após a conclusão de uma instrução INSERT, SELECT IN ou copia em massa, a @@IDENTITY contém o último valor de identificação produzido por essa instrução. Se essa instrução não afetar nenhuma tabela com colunas identificadas, @@IDENTITY retorna NULL. Se múltiplas linhas forem inseridas, múltiplos valores de identificador são gerados, @@IDENTITY o último valor do identificador é retornado. Se essa instrução acionar um ou mais gatilhos que realizam uma operação de inserção que produz um valor identificado, chamar @@IDENTITY imediatamente após a execução da instrução retornará o último valor de identificação gerado pelo gatilho. Se a instrução INSERT ou SELECT INTO falhar ou a replicação em massa falhar, ou se a transação for revertida, o valor @@IDENTITY não é restaurado às suas configurações anteriores.
SAÍDA INSERIDA
Para INSERT, você pode consultar a tabela inserida para consultar as propriedades da nova linha
O código do teste é o seguinte:
O efeito é o seguinte:
|