2015-05-21 2 views
0

Интересно, можно ли вносить изменения в онлайн-сервер базы данных. это мой код, но он действительно не работает, он просто возвращает те же значения. Цель состоит в том, чтобы изменить данные с помощью datagridview, но поскольку я не мог этого сделать, я попробовал просто изменить одно имя. Прошу прощения за этот примитивный код, я всего лишь новичок.Изменение значений базы данных в сети с помощью VB .net

 Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click 

    mysqlconnection = New MySqlConnection 
    mysqlconnection.ConnectionString = "server=db4free.net;port=xxxx; user id=xxxxx; password=xxxxxxx; database=progdata" 
    Dim command As New MySqlCommand 
    Dim myadapter As New MySqlDataAdapter 
    'Dim dbdataset As New DataTable() 
    'Dim dbsource As New BindingSource 
    Dim DataSet1 As New DataSet() 

    Dim query As String = "select * from Products" 
    command = New MySqlCommand(query, mysqlconnection) 
    ' myadapter.SelectCommand = command 
    myadapter = New MySqlDataAdapter(command) 
    mysqlconnection.Open() 

    Dim builder As MySqlCommandBuilder = New MySqlCommandBuilder(myadapter) 
    myadapter.Fill(DataSet1, "Products") 
    DataGridView4.DataSource = DataSet1.Tables("Products").DefaultView 
    mysqlconnection.Close() 
    mysqlconnection = Nothing 

    myadapter.Update(DataSet1.Tables("Products")) 
    DataSet1.AcceptChanges() 
    End Sub 

ура.

ответ

0

AcceptChanges не сохраняет данные в базу данных - сделать это, вам нужно вызвать метод обновления на вашем TableAdapter/DataAdapter. Наборы данных «откатные». Все сделанные вами изменения могут быть отменены , вызвав RejectChanges (после чего все добавленные строки будут удалены, и строки с пометкой «Модифицированные или удаленные» будут возвращены так, как они были ); или совершается путем вызова AceptChanges, после чего новые данные становятся текущими данными. Данные по-прежнему находятся только в наборе данных на , но пока вы не вызвали обновление.

Смежные вопросы