Ich bin eine Anwendung mit Microsoft Access als Front-End und SQL Server als Back-End erstellen.Einfügen mehrerer Werte in mehrere Zeilen mit einem Parameter in T-SQL
Ich habe eine gespeicherte Prozedur, die Kundeninformationen einfügt. Eine der Informationen, die für jeden Kunden eingefügt werden, sind ihre Kreditkartennummern. Die Anzahl der Kreditkarten für jeden Kunden kann zwischen 1-50 liegen.
Ich plane, ein dynamisches Array in VBA zu verwenden, um die Kreditkartennummern hinzuzufügen. Das Problem, das ich habe, ist, ich bin nicht ganz sicher, wie man die Werte an die gespeicherte Prozedur weitergibt.
Mein erster Gedanke war es, eine Tonne von Parametern (CC Nummer 1, CC Nummer 2, CC Nummer 3, usw.) zu erstellen, aber offensichtlich ist dies nicht der richtige Weg, dies zu tun.
Nachdem die Kreditkartennummern dem Dynamic Array hinzugefügt wurden, kann ich ReDim verwenden, um die Anzahl der Kreditkartennummern zu ermitteln, die ich einfügen muss.
Was wäre der beste Weg, um beispielsweise 14 Kreditkartenwerte an einen Parameter zu übergeben und jeden Wert als neue Zeile einzufügen?
Tabellenwerte? https://msdn.microsoft.com/en-us/library/bb510489.aspx – Kritner
@Kritner: Aber wie würde man dies von Access nennen? - Wenn eine gespeicherte Prozedur ein Muss ist, würde ich sie wahrscheinlich zusammenfügen und als eine getrennte Zeichenfolge übergeben. Verwenden Sie dann eine [Split-Funktion] (http://stackoverflow.com/questions/697519/split-function-equivalent-in-t-sql) Ihrer Wahl, um sie zu extrahieren. Aber eigentlich würde ich die Zeilen lieber direkt aus Access einfügen. – Andre
@Andre Wie würde ich jeden Teilwert als neuen Datensatz in SQL Server einfügen? Ich denke dabei von vielleicht so etwas wie dies zu tun in Access 'For Each .... Wert in array' ' ausführen gespeichert Globalverfahren 'next' Obwohl ich es fühlen, ist ein viel besserer Weg zu mach das. –