Hallo Leute,
vielleicht weiß einer von euch rat.
Hier mein Code:
Jetzt mein Problem:
Die Textboxen die ich erzeugt habe werden an die Spalten der Table gebunden. Danach sollte man annehmen das die Textboxen einen Inhalt haben, aber dies ist nicht der Fall. Ich habe leider keine Ahnung wie ich jetzt an den Inhalt des DataSet DS bzw DataView DV ran komme. Ziel ist es das ich jeden einzeln Datensatz auslesen und weiter verarbeiten kann anschließen möchte ich den Datensatz löscchen.
Ich hoffe ich könnte mein Problem gut erläutern und ihr wisst jetzt was mich ärgert.
Gruß Isabelle
vielleicht weiß einer von euch rat.
Hier mein Code:
Code:
Module Module1
Public Connection As System.Data.OleDb.OleDbConnection
Public DS As System.Data.DataSet
Public DV As System.Data.DataView
Public DB As String = "medic2"
Public Server As String = "ws-isabelle"
Public Table As String = ""
End Module
Code:
Public Class frmChangeStructure
Inherits System.Windows.Forms.Form
#Region " Vom Windows Form Designer generierter Code "
Public Sub New()
MyBase.New()
' Dieser Aufruf ist für den Windows Form-Designer erforderlich.
InitializeComponent()
' Initialisierungen nach dem Aufruf InitializeComponent() hinzufügen
End Sub
' Die Form überschreibt den Löschvorgang der Basisklasse, um Komponenten zu bereinigen.
Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
If disposing Then
If Not (components Is Nothing) Then
components.Dispose()
End If
End If
MyBase.Dispose(disposing)
End Sub
' Für Windows Form-Designer erforderlich
Private components As System.ComponentModel.IContainer
'HINWEIS: Die folgende Prozedur ist für den Windows Form-Designer erforderlich
'Sie kann mit dem Windows Form-Designer modifiziert werden.
'Verwenden Sie nicht den Code-Editor zur Bearbeitung.
Friend WithEvents btnOkay As System.Windows.Forms.Button
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
Me.btnOkay = New System.Windows.Forms.Button
Me.SuspendLayout()
'
'btnOkay
'
Me.btnOkay.Location = New System.Drawing.Point(128, 224)
Me.btnOkay.Name = "btnOkay"
Me.btnOkay.TabIndex = 0
Me.btnOkay.Text = "Okay"
'
'frmChangeStructure
'
Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)
Me.ClientSize = New System.Drawing.Size(336, 273)
Me.Controls.Add(Me.btnOkay)
Me.Name = "frmChangeStructure"
Me.Text = "von Dermoscope SQL zur neuen MediScope"
Me.ResumeLayout(False)
End Sub
#End Region
Private Sub btnOkay_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOkay.Click
'erzeugen des Command
Dim cmdAuslesen As System.Data.OleDb.OleDbDataAdapter
Dim cmdUebernehmen As System.Data.OleDb.OleDbCommand
Dim txtPatientID As New System.Windows.Forms.TextBox
Dim txtName As New System.Windows.Forms.TextBox
Dim txtVorname As New System.Windows.Forms.TextBox
Dim txtGeburtsdatum As New System.Windows.Forms.TextBox
Dim txtGeschlecht As New System.Windows.Forms.TextBox
Dim txtDiagnosis As New System.Windows.Forms.TextBox
Dim Datensatz As String
Try
'Verbindung herstellen
Connection = New System.Data.OleDb.OleDbConnection( _
"provider=SQLOLEDB; database=" & DB & "; " & _
"Integrated Security=SSPI; server=" & Server & ";")
'Command erzeugen
cmdAuslesen = New System.Data.OleDb.OleDbDataAdapter( _
"select DISTINCT PatientID, Name, Vorname, Geburtsdatum, Geschlecht, Diagnosis from Bild", Connection)
'Datenset erzeugen und füllen
DS = New System.Data.DataSet
cmdAuslesen.Fill(DS, "Bild")
DV = New DataView(DS.Tables("Bild"))
'Datenbinden
txtPatientID.DataBindings.Add("Text", DV, "PatientID")
txtName.DataBindings.Add("Text", DV, "Name")
txtVorname.DataBindings.Add("Text", DV, "Vorname")
txtGeburtsdatum.DataBindings.Add("Text", DV, "Geburtsdatum")
txtGeschlecht.DataBindings.Add("Text", DV, "Geschlecht")
txtDiagnosis.DataBindings.Add("Text", DV, "Diagnose")
Connection.Close()
DB = "medicDB"
Table = "PatientsTable"
Me.BindingContext(DV).Position += 1
'Wert in eine Variable schreiben
Datensatz = txtPatientID.Text & "," & txtName.Text & "," & txtVorname.Text & "," & _
txtGeburtsdatum.Text & "," & txtGeschlecht.Text & "," & txtDiagnosis.Text
cmdUebernehmen = New System.Data.OleDb.OleDbCommand
cmdUebernehmen.CommandText = "INSERT INTO " & Table & _
" (PatientID, Name, Vorname, Geburtsdatum, Geschlecht, Diagnosis)" & _
" VALUES (" & Datensatz & " ); "
cmdUebernehmen.Connection = Connection
Connection.Open()
cmdUebernehmen.ExecuteNonQuery()
Catch ex As Exception
MsgBox("Verbindung Fehlgeschlagen," & ControlChars.NewLine & _
"Grund: " & ex.Message)
End Try
End Sub
End Class
Jetzt mein Problem:
Die Textboxen die ich erzeugt habe werden an die Spalten der Table gebunden. Danach sollte man annehmen das die Textboxen einen Inhalt haben, aber dies ist nicht der Fall. Ich habe leider keine Ahnung wie ich jetzt an den Inhalt des DataSet DS bzw DataView DV ran komme. Ziel ist es das ich jeden einzeln Datensatz auslesen und weiter verarbeiten kann anschließen möchte ich den Datensatz löscchen.
Ich hoffe ich könnte mein Problem gut erläutern und ihr wisst jetzt was mich ärgert.
Gruß Isabelle