所以我试图填充一个名为DataGrid的DataGrid,它存在于一个表单上,该表单包含来自我的数据库的查询值。我将数据放入此DataGrid时遇到问题。到目前为止,我有以下代码:
Private Sub Form9_Load(sender As Object, e As EventArgs) Handles MyBase.Load
NoMovies.Visible = False
DataGrid.Visible = False
Dim query As String
Dim ds As New DataSet
Dim da As New MySqlDataAdapter
MysqlConn = New MySqlConnection
Dim Reader As MySqlDataReader
'another query and a two table join'
query = "SELECT movie_id, movie_name from movie2 Where movie_id=(SELECT movie_id from rental where client_username='" & currentUser & "' AND start_date<='" & DateTime.Now.ToString("yyyy-MM-dd") & "' AND return_date>='" & DateTime.Now.ToString("yyyy-MM-dd") & "')"
MysqlConn.ConnectionString ="server=mysql.scss.tcd.ie;userid=murpha83;password=gh8ht6789;database=murpha83_db"
MysqlConn.Open()
Command = New MySqlCommand(query, MysqlConn)
Reader = Command.ExecuteReader
da = New MySqlDataAdapter(query, MysqlConn)
da.Fill(ds)
da.Fill(DataGrid)
If Reader.HasRows = True Then
DataGrid.Visible = True
Else
NoMovies.Visible = True
End If
MysqlConn.Close()
Reader.Close()
End Sub
我知道MySql语句有效,所以问题只在于DataGrid。问题是我尝试使用da中的值填充DataGrid。我或者尝试了
'DataGrid.DataSource = ds.Tables("movie_name")
因为movie_name是我想要的列,但这也不起作用!任何hlep都会很棒!谢谢!
答案 0 :(得分:0)
替换
da.Fill(DataGrid)
使用
DataGrid.DataSource=ds.Tables[0]