Hi Christop,
ja das habe ich allerdings erhalte ich dann einen hässlichen Fehler:
System.InvalidOperationException: DataColumn 'Anrede' in der DataTable
'Gruppen' für SourceColumn 'Anrede' ist nicht vorhanden.
Das Framework liefert seltsamerweise keinen Insert Befehl für die Änderung deS "Gruppen"-DataSets
mit sonder 2mal für die Tabelle "Empfaenger" und da hab ich mir gedacht fängste mal klein an und
probierst erstmal nur "Empfaenger" in die DB zu schreiben ;-)
Gruss
Pat
Christoph Cluss wrote:
hmmm....
auf jeden Fall verändert Du ja die "Gruppen" also mußt Du auch
objDataAdapter.Update(objDataSet, "Gruppen")
auskommentieren.
schätze das hast Du schon probiert - oder?
-----Ursprüngliche Nachricht-----
Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
Auftrag von Pat Boné
Gesendet: Dienstag, 30. August 2005 15:32
An: [email protected]
Betreff: Re: AW: [Asp.net] mehrere @@Identity Werte auslesen
Hallo Christoph, CLaudius,
habe nun folgendes fabriziert: Erstelle einen DataAdapter und DataSet, fülle
das Schema der beiden Tabellen in das
DataSet, setze die neuen Datensätze aus der Exceltabelle ein, lese den Autowert
je Reihe aus und füge diesen dann in die
zweite Tabelle ein.
So weit so gut klappt auch alles prima (danke für die Tipps), nur habe ich
jetzt das Problem dass mir mein COmmandBuilder
die DataSets nicht in die DB zurückschreibt. Bekomme keine Fehlermeldung,
nichts!
Hat hierzu vielleicht jemand noch eine Anregung?
Hier mein Code:
Dim lastID As Integer
Dim sqlInsert As String
sqlInsert = "SELECT ID FROM Empfaenger ORDER BY ID DESC"
Dim MyCommand As New OleDbCommand(sqlInsert, objConnect)
objConnect.Open()
lastID = CInt(MyCommand.ExecuteScalar()) + 1
response.write(lastID & "<br>")
'### Adapter füllen und DataSet
Dim objDataAdapter As OleDbDataAdapter
objDataAdapter = New OleDbDataAdapter("SELECT * FROM Empfaenger", objConnect)
Dim objDataSet As New DataSet()
objDataAdapter.FillSchema(objDataSet, SchemaType.Mapped, "Empfaenger")
objDataAdapter = New OleDbDataAdapter("SELECT * FROM Gruppen", objConnect)
objDataAdapter.FillSchema(objDataSet, SchemaType.Mapped, "Gruppen")
objDataSet.AcceptChanges()
'### autowert setzen auf letzteID+1!
Dim objColumn As DataColumn = objDataSet.Tables("Empfaenger").Columns("ID")
objColumn.DataType = System.Type.GetType("System.Int32")
objColumn.ReadOnly = True
objColumn.AutoIncrement = True
objColumn.AutoIncrementSeed = lastID
objColumn.AutoIncrementStep = 1
Dim EmpfIDGruppenFK As ForeignKeyConstraint = New
ForeignKeyConstraint("EmpfIDGruppenFK",
objDataSet.Tables("Empfaenger").Columns("ID"),
objDataSet.Tables("Gruppen").Columns("EmpfID"))
EmpfIDGruppenFK.DeleteRule = Rule.Cascade
EmpfIDGruppenFK.AcceptRejectRule = AcceptRejectRule.Cascade
objDataSet.Tables("Gruppen").Constraints.Add(EmpfIDGruppenFK)
'###Daten aus Excel Importieren
sqlInsert = "SELECT Anrede, Firma, Vorname, Nachname, ....[Excel 8.0;]"
objDataAdapter = New OleDbDataAdapter(sqlInsert, objConnect)
objDataAdapter.Fill(objDataSet, "Empfaenger")
Dim objDataRow, objDataRow2 As DataRow
For Each objDataRow in objDataSet.Tables("Empfaenger").Rows
objDataRow2 = objDataSet.Tables("Gruppen").NewRow()
objDataRow2("EmpfID") = objDataRow("ID")
objDataRow2(Session("UploadGruppe")) = -1
objDataSet.Tables("Gruppen").Rows.Add(objDataRow2)
Next
Dim objCommandBuilder As New OleDbCommandBuilder(objDataAdapter)
objDataAdapter.InsertCommand = objCommandBuilder.GetInsertCommand()
ausgabe.Text = objDataAdapter.InsertCommand.CommandText
objDataAdapter.Update(objDataSet, "Empfaenger")
'objDataAdapter.Update(objDataSet, "Gruppen")
'### an grid binden zur ausgabekontrolle
mygrid.DataSource=objDataSet.Tables("Empfaenger").DefaultView
mygrid.DataBind()
mygrid2.DataSource=objDataSet.Tables("Gruppen").DefaultView
mygrid2.DataBind()
objConnect.Close()
Gruss
Pat
_______________________________________________
Asp.net Mailingliste, Postings senden an:
[email protected]
An-/Abmeldung und Suchfunktion unter:
http://www.glengamoi.com/mailman/listinfo/asp.net
_______________________________________________
Asp.net Mailingliste, Postings senden an:
[email protected]
An-/Abmeldung und Suchfunktion unter:
http://www.glengamoi.com/mailman/listinfo/asp.net
_______________________________________________
Asp.net Mailingliste, Postings senden an:
[email protected]
An-/Abmeldung und Suchfunktion unter:
http://www.glengamoi.com/mailman/listinfo/asp.net