Visual Basic 2010 Express Form в базу данных - PullRequest
0 голосов
/ 14 марта 2011

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

Я новичок, но я думаю, что данные должны идти в базу данных. Не удается найти пример кода для сохранения данных формы в базе данных. База данных, которую я сделал, является «локальной базой данных». Не уверен, что это должен быть «Набор данных» или «Модель данных объекта».

Пожалуйста, покажите мне некоторый код для этого или способ сохранения информации без базы данных, используя только код vb.

1 Ответ

2 голосов
/ 22 апреля 2011

Есть много разных способов сделать это.Даже с VB Net вам все еще нужно написать некоторый код, чтобы сохранить вещи из формы, которую вы хотели бы сохранить.На ваш вопрос нет простого ответа.Из вашего вопроса я думаю, что у вас нет, как говорится, «общей системы координат», чтобы понять ответы, которые кто-то может выложить для вас здесь.Вам нужно будет знать, какую базу данных вы используете, и у вас есть идеальные способы правильного подключения к этой базе данных.И вам нужно будет искать способы обработки ваших данных в и из вашей базы данных.Каким бы ни был метод, который вам понадобится, чтобы знать некоторый базовый SQL, вы знаете «Выберите это из того, где что-то = те» вместе с SQL-вставкой, обновлением и т. Д.

Оставьте мне дать вам очень «краткий» пример того, какчтобы получить данные из формы в базу данных, чтобы вы могли немного понять суть задачи.

Sub Button4_Click (отправитель ByVal как System.Object, ByVal e как System.EventArgs)

Dim newid As Integer = Insert (Textbox1.text)

End Sub

Функция Insert (ByVal, управляющая как строка) как целое число

        Dim Con As New SqlClient.SqlConnection(vConString)

        Dim cmd As SqlClient.SqlCommand = Con.CreateCommand

        Dim c As Integer = 0

        cmd.CommandType = CommandType.StoredProcedure

        cmd.Parameters.Add("@title", SqlDbType.VarChar, 50).Value = Ruling

        cmd.CommandText = "InsertRuling"


        Try
            Dim R As SqlClient.SqlDataReader
            Con.Open()
            R = cmd.ExecuteReader
            While R.Read()
                c = R.Item(0)
            End While
            R.Close()
        Catch ex As Exception
            Debugger.Break() '  
        Finally
            If Not Con Is Nothing Then
                Con.Close()
            End If
        End Try
        Return c
    End Function

Эта функция подключается к базе данных, вставляет запись и возвращает новый идентификатор (первичный ключ) новой записи.Хранимая процедура - это хранимая процедура в базе данных (в данном случае база данных является SQL-сервером, большинство баз данных имеют хранимые процедуры).Параметр содержит фактическое значение, которое я записываю в базу данных.Вот хранимая процедура, кстати, хранимая процедура - это то, что вы пишете, а не то, что уже существует в базе данных.

ALTER PROCEDURE dbo.InsertRuling

@title as nvarchar(50

AS

INSERT INTO Rulings (Заголовок) VALUES (@title)

/ * SET NOCOUNT ON * /

SELECT @@identity as nid

/ * SET NOCOUNT ON * /

RETURN 

Вы также можете отказаться от процедуры и просто написать в базу данных напрямую, изменив несколько функций в своей функции.

    Sub Insert(ByVal Ruling As String)

        Dim Con As New SqlClient.SqlConnection(vConString)

        Dim cmd As SqlClient.SqlCommand = Con.CreateCommand


        cmd.CommandType = CommandType.Text

        cmd.CommandText = "INSERT INTO Rulings (Title) VALUES (" & Ruling & ")" 


        Try
            Con.Open()
            cmd.ExecuteNonQuery()
        Catch ex As Exception
            Debugger.Break() '  
        Finally
            If Not Con Is Nothing Then
                Con.Close()
            End If
        End Try

    End Sub

Любой используемый вами метод требует от вас написания SQL.Net предоставляет способ связать ваши элементы управления напрямую с базой данных, используя наборы данных, однако вам все еще нужно уметь понимать, как писать sql, и понимать кое-что о данных, которые вы будете читать и записывать из базы данных.Операторы update, insert и select для базы данных генерируются автоматически, но вам все равно нужно иметь какую-то общую систему координат с SQL, чтобы понять, когда и как их использовать, а также изменить их.Зайдите в книжный магазин и получите большую книгу по программированию VB.net.Их несколько, и все они охватывают основы VB-сети и баз данных и дадут вам достаточно синтаксиса SQL, чтобы разобраться во всем, тогда, когда вы приобретете опыт, это станет легче.

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