2016-04-23 17 views
0

Ich habe eine Tabelle mit einem Preis und dort alle Preise „Kunden“ bezahlt hat soWie zeige ich Daten an, die einen bestimmten Wert überschreiten?

| ID | Price | 
|----|-------| 
| 1 | 5.00 | 
| 50 | 6.70 | 

Ich möchte so etwas machen, wenn Sie 3 oder 3,00 in einem Textfeld eingeben dann alle Datensätze zeigen das übersteigt diesen Wert, so seit ID 1 bezahlt 5 quid dann werden sie zeigen und gleich mit ID 50. Ich möchte sie in meinem Datagridview anzeigen.

Was ich bisher ist:

myDA = New OleDbDataAdapter 
    myDataSet = New DataSet 
    myDA.SelectCommand = New OleDbCommand() 

    Try 
     cmd = New OleDbCommand() 
     cmd.CommandText = "Select sum(Paid) as total from tblorder" 
     cmd.Connection = con 
     If con.State = ConnectionState.Closed Then con.Open() 
     myDA.SelectCommand = cmd 
     myDA.Fill(myDataSet, "TTotal") 
     TextBox1.Text = CStr(myDataSet.Tables("TTotal").Rows(0).Item(0)) 
     DataGridView1.DataSource = myDataSet.Tables("TTotal").DefaultView 
     con.Close() 

    Catch ex As Exception 
     MessageBox.Show(ex.Message) 
    End Try 
+1

Verwenden Sie die RowFilter Eigenschaft diejenigen 'Preis> x' zu zeigen. Abhängig von der Datenquelle benötigt es möglicherweise auch einen CustomerID-Filter. Die Abfrage, die Sie haben, macht etwas ganz anderes. – Plutonix

Antwort

0

Ich habe Ihren Code wie folgt ändern:

myDA = New OleDbDataAdapter 
myDataSet = New DataSet 

Dim price As Double = Convert.ToDouble(TextBox1.Text) 
'Save the value entered in textbox on the variable price 

Try 
    cmd = New OleDbCommand() 
    cmd.CommandText = "Select ID,Price from tableName where Price > @Price " 
    'tableName should be replaced with the name of your table 
    cmd.Parameters.AddWithValue("@Price", price) 
    'Add parameter to pass the price to the query 
    cmd.Connection = con 
    If con.State = ConnectionState.Closed Then con.Open() 
    myDA.SelectCommand = cmd 
    myDA.Fill(myDataSet, "tableName") 
    DataGridView1.DataSource = myDataSet.Tables("tableName").DefaultView 
    con.Close() 
Catch ex As Exception 
    MessageBox.Show(ex.Message) 
End Try 
+0

Perfekt! Vielen Dank! :) –

Verwandte Themen