Подключить базу данных SQL к DataGridView с помощью отдельных командных кнопок? - PullRequest
0 голосов
/ 26 октября 2009

Я немного озадачен здесь. Я сделал форму, содержащую простое представление данных, содержащее данные из файла MDB. Все соединения были выполнены мастером Visual Studios, поэтому многие вещи создавались автоматически. Затем я установил текстовые поля для каждого столбца в базе данных и сумел обновить базу данных с помощью своих собственных командных кнопок, таких как «Обновить», с помощью следующего кода:

        Me.MainTableBindingSource.EndEdit()
        Me.MainTableTableAdapter.Update(Me.DBDataSet.MainTable)
        Me.DBDataSet.MainTable.AcceptChanges()

Это не похоже на работу с sql. К этому моменту я сделал все с нуля в этом порядке, добавил сетку данных и добавил соединение с базой данных с помощью мастера при подключении сетки данных к базе данных. Только на этот раз я создал соединение SQL вместо.

И Visual Studio создал «MainTableTableAdapter», «DBDataSet», «DBDataSet.MainTable».

SQL-сервер - это то, что было установлено автоматически при установке Visual Studio, и, похоже, он работает после создания адаптера таблицы и набора данных, если в нем есть данные. Через некоторое время я планирую использовать SQL Server в Интернете, на котором размещен набор данных. Поэтому я хочу иметь возможность легко редактировать источник.

Единственное, чего не хватает сейчас - это как добавить строку, удалить выбранную строку и редактировать выбранную строку через мои собственные текстовые поля. Больше похоже на заполненную форму. Есть идеи, чтобы направить меня в правильном направлении? Я попытался найти его в Google, но нашел кое-что, но большая часть содержит информацию о том, как создавать наборы данных и т. Д. И я не уверен, что Visual Studio сделала автоматически. И я хочу обновить все так же легко, как и с этими тремя строками кода, когда я использовал локальный файл MDB.

1 Ответ

1 голос
/ 26 октября 2009

Если это SQL, вы можете сделать что-то вроде этого. Вот пример функции удаления:

Public Shared Function DeleteStuff(ByVal id As Integer) As Integer

    Dim query As String = _
        "DELETE FROM tbl_Stuff " & _
        "WHERE ID_Stuff = " & id & ";"
    Dim connection As SqlConnection = YourDB.GetConnection
    Dim deleteCommand As New SqlCommand(query, connection)
    Dim rowCount As Integer = 0
    Try
        connection.Open()
        rowCount = deleteCommand.ExecuteNonQuery()
    Catch ex As SqlException
        Throw ex
    Finally
        connection.Close()

    End Try
    Return rowCount
End Function

Возможно, есть и лучшие способы, но вы всегда можете передать запросы SQL.

РЕДАКТИРОВАТЬ: Извините, это более трех строк кода. ;)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...