我是新手,正在尝试使用.vb中的Visual Studio 2013创建一个应用程序。该应用程序可以使用由SQl SERVER EXPRESS女士制作的本地数据库(书籍,Cd,Dvd等)使用,我想知道当我使用App向数据库添加列时是否可以找到通过APP重新加载DatagridView和Dataset的方法。实际上,我正在尝试找到一种在datagridview中显示此新列的方法,并且我不想一直在VS中使用,因为我想在小型笔记本电脑上使用我的App。
好吧,我不知道从哪里开始,所以我尝试了以下方法:
Imports System.Data.SqlClient
...
Private Sub Form8_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim cn As New SqlConnection("Data Source=PC-ME\SQLEXPRESS;Initial Catalog=Database;Integrated Security=True")
Dim cmd As SqlCommand = cn.CreateCommand()
cmd.CommandText = "Select * FROM CONSULTE"
Dim adapter As New SqlDataAdapter()
Dim ds As New DataSet()
adapter.SelectCommand = cmd
cn.Open()
adapter.Fill(ds, "CONSULTE")
cn.Close()
CONSULTEDataGridView.DataSource = ds
CONSULTEDataGridView.DataMember = "CONSULTE"
End Sub
但这不起作用。
我的Windows窗体可以在其中更改表:
Imports System.Data.SqlClient
Public Class Form7
Dim cn As New SqlConnection("Data Source=PC-ME\SQLEXPRESS;Initial Catalog=Database;Integrated Security=True")
Dim cmd As New SqlCommand
Dim dr As SqlDataReader
Private Sub Form7_Load(sender As Object, e As EventArgs) Handles MyBase.Load
cmd.Connection = cn
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
If table.Text <> "" And colonne.Text <> "" And typede.Text <> "" Then
cn.Open()
cmd.CommandText = "ALTER TABLE " & table.Text & " ADD " & colonne.Text & " " & typede.Text & ""
cmd.ExecuteNonQuery()
cn.Close()
table.Text = ""
colonne.Text = ""
typede.Text = ""
Else
MsgBox("Vous devez remplir les trois champs!")
End If
End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
If table.Text <> "" And colonne.Text <> "" Then
cn.Open()
cmd.CommandText = "ALTER TABLE " & table.Text & " DROP COLUMN " & colonne.Text & ""
cmd.ExecuteNonQuery()
cn.Close()
table.Text = ""
colonne.Text = ""
Else
MsgBox("Vous devez remplir correctement les deux premiers champs!")
End If
End Sub
End Class
谢谢您的帮助!
PS:对不起,我的英语不是我的母语。
所以我找到了一种方法!如果有人想知道,这里有个例子:Datagridview1是我在form1上的datagridview的名称。
表格1:
Imports System.Data.SqlClient
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Dim cn As New SqlConnection("Data Source=PC-ME\SQLEXPRESS;Initial Catalog=BDD;Integrated Security=True")
cn.Open()
Dim cmd As SqlCommand = cn.CreateCommand()
Dim adapter As New SqlDataAdapter()
Dim ds As New DataSet()
Dim sql As String
sql = "SELECT * FROM CONSULTE"
adapter.SelectCommand = New SqlCommand(sql, cn)
adapter.Fill(ds)
DataGridView1.DataSource = ds.Tables(0)
End Sub
End Class
表格3,可以在其中添加或删除列:
Imports System.Data.SqlClient
Public Class Form3
Dim cn As New SqlConnection("Data Source=PC-ME\SQLEXPRESS;Initial Catalog=BDD;Integrated Security=True")
Dim cmd As New SqlCommand
Dim dr As SqlDataReader
Private Sub Form3_Load(sender As Object, e As EventArgs) Handles MyBase.Load
cmd.Connection = cn
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
If table.Text <> "" And colonne.Text <> "" And typede.Text <> "" Then
cn.Open()
cmd.CommandText = "ALTER TABLE " & table.Text & " ADD " & colonne.Text & " " & typede.Text & ""
cmd.ExecuteNonQuery()
cn.Close()
table.Text = ""
colonne.Text = ""
typede.Text = ""
Else
MsgBox("Vous devez remplir les trois champs!")
End If
End Sub
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
If table.Text <> "" And colonne.Text <> "" Then
cn.Open()
cmd.CommandText = "ALTER TABLE " & table.Text & " DROP COLUMN " & colonne.Text & ""
cmd.ExecuteNonQuery()
cn.Close()
table.Text = ""
colonne.Text = ""
Else
MsgBox("Vous devez remplir correctement les deux premiers champs!")
End If
End Sub
End Class
其中“表”(=表),“ colonne”(=列)和“ typede”(= type)是三个文本框的名称
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句