Frage : Wie tun i-Nachschlagen und den fremden Schlüsselwert in eine Tabelle einzusetzen, wenn es einen variablen Wert von der unterschiedlichen Spalte in der in Verbindung stehenden Tabelle führt?

A verlegen enthält Felder: [Name] so varchar, [AlphaNumber] wie numerisch und [SiteCode] wie varchar. Daten in dieser Tabelle sind statisch.  AlphaNumber ist der Primärschlüssel in der Tabelle A. Ich verwende ein gespeichertes Verfahren, um den kombinierten Kasten auf einer Form zu bevölkern und das [Namens] Feld zum Operator von der Tabelle A. anzuzeigen.  Alle Daten, die auf der Form eingegeben werden, werden in Tabelle B.

Table B enthalten das Feld [ValidOPId] als numerisches und sind der fremde Schlüssel eingesetzt, der auf dem bezogen wird [AlphaNumber] Feld Tabelle A.
im
bis jetzt, habe ich dieses gespeicherte Verfahren und erfolgreich eingesetzten Daten geschrieben, um B verzulegen (ohne die Form).

ALTER Verfahren [dbo]. [spLocal_InsertValidationData]
@TagName Varchar (50),
@ValidTime Datum/Uhrzeit,
@Value real,
@Reason1 varchar (50),
@Reason2 varchar (50),
@Reason3 varchar (50),
@Reason4 varchar (50),
@Comments varchar (50),
@ValidOPId numerisch,
@ValidAPMId numerisch,
@ValidPMId numerisch,
@InterfaceFlag Spitze,
@OOSpecFlag bit

AS

INSERT IN ValidationDetail

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

Return

Need, zum dieses Verfahrens zu ändern, um [Name] vom kombinierten Kasten auf die Form zu schreiben weichen aus, um B [ValidOPId] verzulegen.   Es zurück zu dem in Verbindung stehenden numerischen umwandeln müssen [AlphaNumber] das dem Namen entspricht, der zuerst im kombinierten Kasten auf der Form vorgewählt wird.  

Can, das Sie helfen?

Antwort : Wie tun i-Nachschlagen und den fremden Schlüsselwert in eine Tabelle einzusetzen, wenn es einen variablen Wert von der unterschiedlichen Spalte in der in Verbindung stehenden Tabelle führt?

Es gibt zwei Möglichkeiten:
1) [vorzuziehend] - im kombinierten Kasten der HTML-Form - den Wert des Wahlumbaus als das AlphaNumber von TableA einstellen. So wenn überhaupt Form - sie sendet den Wert der vorgewählten Wahl vom kombinierten Kasten - so einreicht führt es das AlphaNumber anstelle von angezeigtem Text. Auf diese Weise, Ihr gespeichertes Verfahren bleibt, wie es ist.

2) Das SP wie ändern:

Verfahren [dbo] ÄNDERN. [spLocal_InsertValidationData]
@TagName Varchar (50),
@ValidTime Datum/Uhrzeit,
@Value real,
@Reason1 varchar (50),
@Reason2 varchar (50),
@Reason3 varchar (50),
@Reason4 varchar (50),  
@Comments varchar (50),
@Name varchar (50),  
@ValidAPMId numerisch,  
@ValidPMId numerisch,
@InterfaceFlag Spitze,
@OOSpecFlag Spitze

WIE
@ValidOPId int erklären
@ValidOPId = AlphaNumber von vorwählen [TableA] wo [Name] = @Name

IN ValidationDetail EINSETZEN
WERTE
(@TagName, @ValidTime, @Value, @Reason1, @Reason2, @Reason3, @Reason4, @Comments, @ValidOPId, @ValidAPMId, @ValidPMId, @InterfaceFlag, @OOSpecFlag)
Weitere Lösungen  
 
programming4us programming4us