VB.Net SQL Базы данных - Как сохранить изменения в базе данных? - PullRequest
0 голосов
/ 22 июля 2011

Моя программа базы данных полностью функциональна, и когда я добавляю новые записи в базу данных, они правильно отображаются в моем DataGridView.Однако после закрытия программы эти изменения не сохраняются.Как сохранить изменения обратно в базу данных?Вот мой код:

    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)

Ответы [ 2 ]

3 голосов
/ 22 июля 2011

Как вы обнаружили, вам нужно больше читателя:)

Есть много способов пойти. Эта ссылка дает разумный пример:

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

Ключевая вещь:

Для начала SqlDataSource GridView должен содержать команду UpdateCommand с соответствующими параметрами.

0 голосов
/ 22 июля 2011

Если вы хотите вставить что-то в БД, вы можете сделать это

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

Вы также можете параметризовать свои переменные для предотвращения SQL-инъекций

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

и использование @variable_name во вставке

mySQLCommand.CommandText = INSERT INTO Users VALUES(@variable_name, @variable_name2)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...