title image


Smiley VB.NET und MYSQL (2 Fragen)
Hallo, ich schreibe gerade eine Anwendung, die mit einer MySQL Datenbank kommuniziert hier mal der Source: (Fragen siehe unten!!)

-------------------------------------------------------------------------------------

Imports System.Data.Odbc



Public Class Form1

Inherits System.Windows.Forms.Form

Dim adapter As OdbcDataAdapter

Dim odbcconn As System.data.Odbc.OdbcConnection

Dim Ta As DataTable

Dim currentRow As Integer = 0

Dim maxRow As Integer



#Region " Vom Windows Form Designer generierter Code "

.

.

.

#End Region



Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

test("Select * from data")



End Sub



Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

test("Select * from data where Nr > 1600")



End Sub

Public Sub test(ByRef SQLcommand As String)



Dim odbcconn As New System.Data.Odbc.OdbcConnection( _

"Driver={MySQL ODBC 3.51 Driver};Server=192.168.1.1;" + _

"Database=traffic;UID=***;PWD=***;Options=3")

Try

odbcconn.Open()



Ta = New DataTable("test")

adapter = New OdbcDataAdapter(SQLcommand, odbcconn)

adapter.Fill(Ta)

DataGrid1.DataSource = Ta

odbcconn.Close()

maxRow = Ta.Rows.Count

Label1.Text = Ta.Rows.Count & " Einträge"

ListBox1.DataSource = Ta

ListBox1.DisplayMember = "Nr"



Catch ex As Exception

MsgBox("fehler: " & ex.Message)

End Try



End Sub



Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click

Try

test("Select * from data where Nr >" & CType(ListBox1.SelectedItem, DataRowView).Item("Nr") & ";")

Catch ex As Exception

MsgBox("Fehler: " & ex.Message)

End Try





End Sub



Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click

currentRow = IIf(currentRow < maxRow, currentRow + 1, 0)

DataGrid1.CurrentRowIndex = currentRow



End Sub







Private Sub DataGrid1_CurrentCellChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DataGrid1.CurrentCellChanged

currentRow = DataGrid1.CurrentRowIndex

TextBox1.Text = DataGrid1.Item(DataGrid1.CurrentRowIndex, 0)

TextBox2.Text = DataGrid1.Item(DataGrid1.CurrentRowIndex, 1)

TextBox3.Text = DataGrid1.Item(DataGrid1.CurrentRowIndex, 2)

TextBox4.Text = DataGrid1.Item(DataGrid1.CurrentRowIndex, 3)

TextBox5.Text = DataGrid1.Item(DataGrid1.CurrentRowIndex, 4)

TextBox6.Text = DataGrid1.Item(DataGrid1.CurrentRowIndex, 5)



End Sub



Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click

currentRow = IIf(currentRow < 1, maxRow - 1, currentRow - 1)

'MsgBox(currentRow)

DataGrid1.CurrentRowIndex = currentRow

End Sub

End Class





------------------------------------------------------------------------------

1. Angenommen ich mache mal eine Abfrage mit Alias und aggregatsfunktionen, z.B.

SQLcommand = "select sum(CltIncoming) as cltin, sum(CltOutgoing) as cltout from data"



adapter = New OdbcDataAdapter(SQLcommand, odbcconn)



Bei VB6 Hab da sowas mit mit ADOBC.Recordset gemacht:



Dim rs As ADODB.Recordset

Set rs = New ADODB.Recordset



rs.Open "select sum(CltIncoming) as cltin from data", conn

cltDown = rs!CltIn

cltUp = rs!CltOut

.

.

.

Hier konnte ich mittls rs!... auf die Felder zugreifen, wie kann ich das in meinem VB.NET Code???

----------------------------------------------------------------------------------



2.

Weiter untem im Code werden Textfelder mit dem im Datagrid ausgewählten werten gefüllt, hier hab ich mir (verzweifelter weise) folgendermassen beholfen:



TextBox1.Text = DataGrid1.Item(DataGrid1.CurrentRowIndex, 0)

.

.

.

Das muss doch eleganter gehen oder? Man kann doch Die Textfelder sicherlich an DataTable objekte binden, dass ich da nicht noch eine manuelle Zuweisung machen muss, oder? Ich habe schon verschiedene Beispiele im Internet gesehen, habs aber nicht zum laufen hinbekommen (in den Beispielen wurden DataSets verwendet, aber dann konnt ich des nicht mehr richtig an das Datagrid binden)



-------------------------------------------------------------------------------------



Wäre schön, wenn mir hier jemand helfen könnte...

Vielen Dank





LoopX





geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: