2010-12-27 12 views
0

Ich versuche, in zwei Tabellen gleichzeitig einzufügen, aber es fügt leere Werte in die erste Tabelle ein und fügt die Werte dann korrekt in die zweite Tabelle ein. Ich kann mir nicht vorstellen, warum zum Teufel das passiert ist. Hier ist mein Codebehind, ich kann den Rest meines Codes bei Bedarf posten.Einfügen in zwei Tabellen mit der AccessDataSource

Protected Sub btnSubmit_OnClick(ByVal sender As Object, ByVal e As System.EventArgs) 

    AccessDataSource1.InsertCommand = "INSERT INTO [tableCourse] ([prefix], [course_number], [department], [name_first], [name_last], [credits], [title], [description]) VALUES (?, ?, ?, ?, ?, ?, ?, ?);" 
    AccessDataSource1.Insert() 

    AccessDataSource1.InsertCommand = "INSERT INTO [tableFaculty] ([name_first], [name_last], [phone], [email]) VALUES (?, ?, ?, ?)" 
    AccessDataSource1.Insert() 

End Sub 

EDIT:

Selbst wenn ich den zweiten Einsatzbefehl Kommentar aus, die erste noch Null-Werte einfügt.

Antwort

0

Ich würde vorschlagen, Sie versuchen, zwei verschiedene Datenquellen. Sie sind nicht dazu gedacht, die Befehle während einer Anfrage ändern zu lassen.

+0

Ich verwende eine FormView, die nur eine Datenquelle zuzulassen scheint. – Sara

0

Ich denke, der Schlüssel hier ist, dass MS-Access ist Ihr Datenspeicher und MS-Access kann nur einen Befehl zu einem Zeitpunkt bewältigen. Wenn dies MSSQL wäre, würden Sie einen Befehl erstellen, z. "INSERT (...); INSERT (...)" Ich denke, Sie müssen zwei FormViews erstellen.

+0

In Ordnung ... das wird die Dinge komplizierter machen, aber wenn es keine andere Möglichkeit gibt, denke ich, dass ich das tun muss. – Sara

Verwandte Themen