Vb.net 2008 Datagrid <=> Sqlite3

Тема в разделе ".NET", создана пользователем nadalik, 26 мар 2010.

  1. nadalik

    nadalik Гость

    Привет всем!

    делаю проект для себя что бы разобраться как это все работает.
    К VB.NET 2008 прикручен Sqlite (вот отсюда - sqlite_phxsoftware_com)

    Надо - отредактировать таблицу и записать изменения обратно.
    (ну не надо смеяться...)

    Чтение и редактирование - работает, организовано вот так:
    ---

    Dim SQLconnect As New System.Data.SQLite.SQLiteConnection
    Dim dataSet = New DataSet()

    SQLconnect.ConnectionString = "Data Source=" & Database_path & ";"
    SQLconnect.Open()

    Dim dataAdapter = New SQLiteDataAdapter("select * from " & SQliteTable, SQLconnect)

    dataAdapter.Fill(dataSet, SQliteTable)

    DataGridView.DataSource = dataSet
    DataGridView.DataMember = SQliteTable
    ---

    после редактирования надо записать изменения в таблицу.
    вот тут и затык.

    ---

    Dim SQLconnect As New System.Data.SQLite.SQLiteConnection
    Dim dataSet = New DataSet()

    SQLconnect.ConnectionString = "Data Source=" & Database_path & ";"
    SQLconnect.Open()

    dataSet = DataGridView.DataSource
    Dim dataAdapter = New SQLiteDataAdapter("select * from " & SQliteTable, SQLconnect)
    '' надо ли опять создавать dataAdapter? ''

    dataAdapter.Update(dataSet, SQliteTable)
    ' тут ошибка выполнения
    ' Update requires a valid UpdateCommand
    ' when passed DataRow collection with modified rows.

    SQLconnect.Dispose()



    - не ясно должен ли dataAdapter быть глобальным?;
    - так ли вообще это надо делать все - или же руками делать insert,update,delete
    все записи DataGrid?;

    Похожие примеры "гуглил" целый день - ничего именно такого не надыбал..
    Вроде ясно что надо из DataGridView передать в dataSet и потом в dataAdapter.

    Буду благодарен за любую помощь касательно этой проблемы.
     
  2. nadalik

    nadalik Гость

    ну тоесть в сабе записи опять -
    Dim dataAdapter = New SQLiteDataAdapter("select * from " & SQliteTable, SQLconnect)

    как я понимаю, если объявлен объект внутри саба, то он за границей видимости
    при выходе из саба как локальный?

    а новый датасет или нет - всеравно
    dataSet = DataGridView.DataSource

    что-то с параметрами dataAdapter.Update(dataSet, SQliteTable)
    что за UpdateCommand - она как то описывается?
     
Загрузка...

Поделиться этой страницей