Pergunta : Como faz a consulta de I e para introduzir o valor chave extrangeiro em uma tabela ao passar um valor variável da coluna diferente na tabela relacionada?

Tabelar A contem campos: [Nome] tão varchar, [AlphaNumber] quanto numérico, e [SiteCode] como varchar. Os dados nesta tabela são de estática.  AlphaNumber é a chave preliminar na tabela A. Eu estou usando um procedimento armazenado para povoar a caixa combinado em um formulário e para indicar o campo [conhecido] ao operador da tabela A.  Todos os dados incorporados no formulário serão introduzidos na tabela B.

Table B contêm o campo [ValidOPId] como numérico e são a chave extrangeira relativa ao campo [de AlphaNumber] no
da tabela A.
até agora, eu redigi estes procedimento armazenado e dados com sucesso introduzidos para tabelar B (sem o formulário). procedimento do

ALTER [dbo]. [spLocal_InsertValidationData]
@TagName Varchar (50), datetime do
@ValidTime,
@Value real,
@Reason1 varchar (50),
@Reason2 varchar (50),
@Reason3 varchar (50),
@Reason4 varchar (50),
@Comments varchar (50),
@ValidOPId numérico,
@ValidAPMId numérico,
@ValidPMId numérico, bocado do
@InterfaceFlag,
INSERT do
do bit

AS do
@OOSpecFlag em ValidationDetail

VALUES
(@TagName, @ValidTime, @Value, @Reason1, @Reason2, @Reason3, @Reason4, @Comments, @ValidOPId, @ValidAPMId, @ValidPMId, @InterfaceFlag,

Return

Need do @OOSpecFlag) para modificar este procedimento para escrever [nome] da caixa combinado no formulário para trás para fora para tabelar B [ValidOPId].   Precisar de convertê-lo de volta ao numérico relacionado [AlphaNumber] que corresponde ao nome selecionado na caixa combinado no formulário primeiramente.  

Can que você ajuda?
class= do

Resposta : Como faz a consulta de I e para introduzir o valor chave extrangeiro em uma tabela ao passar um valor variável da coluna diferente na tabela relacionada?

Há duas maneiras:
1) [preferível] - na caixa combinado do formulário do HTML - ajustar o valor do Tag da opção como o AlphaNumber de TableA. Assim, quando nunca o formulário se submete - emitirá o valor da opção selecionada da caixa combinado - assim, passará o AlphaNumber em vez do texto indicado. Esta maneira, seu procedimento armazenado permanecerá como é.

2) Mudar o SP como:

ALTERAR o procedimento [dbo]. [spLocal_InsertValidationData]
@TagName Varchar (50),
datetime do @ValidTime,
@Value real,
@Reason1 varchar (50),
@Reason2 varchar (50),
@Reason3 varchar (50),
@Reason4 varchar (50),  
@Comments varchar (50),
@Name varchar (50),  
@ValidAPMId numérico,  
@ValidPMId numérico,
bocado do @InterfaceFlag,
bocado do @OOSpecFlag

COMO
Declarar o @ValidOPId int
Selecionar o @ValidOPId = o AlphaNumber de [TableA] onde [nome] = @Name

INTRODUZIR em ValidationDetail
VALORES
(@TagName, @ValidTime, @Value, @Reason1, @Reason2, @Reason3, @Reason4, @Comments, @ValidOPId, @ValidAPMId, @ValidPMId, @InterfaceFlag, @OOSpecFlag)
Outras soluções  
 
programming4us programming4us