2011-07-22 20 views
0

私のデータベースプログラムは完全に機能しており、データベースに新しいエントリを追加すると、DataGridViewに正しく表示されます。しかし、プログラムを終了すると、これらの変更は保存されません。変更をデータベースに保存するにはどうしたらいいですか?ここに私のコードは次のとおりです。VB.Net SQLデータベース - データベースへの変更を保存する方法?

Dim conn As New SqlClient.SqlConnection(My.Settings.MainDatabaseConnectionString) 
    Dim query As String = "INSERT INTO Users VALUES('Something','Test');" 
    Dim cmd As New SqlClient.SqlCommand(query, conn) 
    Dim reader As SqlClient.SqlDataReader 

    'Open Connection 
    conn.Open() 
    'Execute Query 
    reader = cmd.ExecuteReader 
    'Close Connection 
    conn.Close() 

    'Update DataGridView 
    Me.UsersTableAdapter.Fill(Me.UsersDataSet.Users) 

答えて

3

あなたが発見してきたように、あなたはより多くを必要とする読者:)

行くために多くの方法があります。このリンクは、合理的な例を示します:

http://msdn.microsoft.com/en-us/library/ms972948.aspx

重要なこと:

を開始するには、GridViewのSqlDataSourceコントロールには、適切なパラメータを指定してUpdateCommandの が含まれている必要があります。

0

あなたがDBに何かを挿入したい場合、あなたはまた、SQLインジェクション

mySQLCommand.Parameters.Add("@variable_name", SqlDBType.NvarChar).value = variable 

とで@variable_nameを使用することを防止するためにあなたの変数をパラメータ化したい場合があります。この

Dim mySQLCommand As Data.SqlClient.SqlCommand 
mySQLCommand.CommandText = "INSERT INTO Users VALUES('Something','Test');" 
mySQLCommand.ExecuteNonQuery() 

を行うことができますインサート

mySQLCommand.CommandText = INSERT INTO Users VALUES(@variable_name, @variable_name2) 
関連する問題