2012-03-13 19 views
0

vb.netのデータベースからデータを追加、編集、保存、削除する簡単なプログラムが必要です。データセットまたはsqlcommandbuilderを試しましたが、どちらも動作していません。 私はsqlcommandbuilderで使用したコードを見てください。データベースには何も保存されていません。 データセットからデータベースにデータを保存する最も簡単な方法を提供するか、テキストボックスから直接入力してください。このvb.netで は、すべてのエラーを示していないが、あなたはそれで終わっまで、あなたはDataTableからAdd新しいDataRowいけないvb.netのデータベースにデータを保存できません

'set up a connection string' 
Dim connectionstring As String 

connectionstring = "Data Source=|DataDirectory|\inventorymanage.sdf;Password='XXX'" 

Dim sqlquery As String = "SELECT * FROM ledger" 

'create connection' 
Dim connaction As SqlCeConnection = New SqlCeConnection(connectionstring) 

Try 
    'open connection' 
    connaction.Open() 



    'create data adapter' 
    Dim da As SqlCeDataAdapter = New SqlCeDataAdapter(sqlquery, connaction) 

    'create command builder' 
    Dim commandbuilder As SqlCeCommandBuilder = New SqlCeCommandBuilder(da) 


    'create dataset' 
    Dim ds As New DataSet 

    'fill dataset' 
    da.Fill(ds, "ledger") 

    'get datatable' 
    Dim dt As DataTable = ds.Tables("ledger") 

    Dim dsnewrow As DataRow 

    dsnewrow = ds.Tables("ledger").NewRow() 



    ds.Tables("ledger").Rows.Add(dsnewrow) 
    With dt 
     ' modify data rows in ledger 
     .Rows(0).Item(1) = Textbox4.Text 
     .Rows(0).Item(2) = TextBox5.Text 
    End With 



    da.Update(ds, "ledger") 


    MsgBox("record added") 
Catch ex As SqlCeException 
    MsgBox("you got error" & ex.ToString & vbCrLf) 

Finally 
    'close connection' 
    connaction.Close() 
End Try 

答えて

0

を保存していません。

Dim newRow As DataRow = ds.Tables("ledger").NewRow 
newRow(1) = Textbox4.Text ' set the value for the second field ' 
newRow(2) = Textbox2.Text ' set the value for the third field ' 
ds.Tables("ledger").Rows.Add(newRow) 
da.Update(ds, "ledger") 

http://msdn.microsoft.com/en-us/library/5ycd1034%28v=vs.100%29.aspx

編集:私は注文は重要ではないはずですが、なぜDim dt As DataTable = ds.Tables("ledger")を使っているのですか?あなたが実際にそれを必要としないので、これはちょうど混乱しています。

+0

コードを使用した後も、私はまだデータベースにデータを保存できません。私はSQL Serverのcompact3.5を使用しています。 –

+0

ここを見ましたか? http://stackoverflow.com/questions/3223359/cant-get-sql-server-compact-3-5-4-to-work-with-asp-net-mvc-2 –

0
Dim con As New OleDb.OleDbConnection 
Dim sql As String 
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 
    con.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\CMS.mdb" 
    con.Open() 
    sql = "insert into tblStaffType (Staff_Type,Code) VALUES (@Staff_Type,@Code)" 
    Dim command = New OleDb.OleDbCommand(sql, con) 
    command.Parameters.AddWithValue("@staff_type", txtTypName.Text) 
    command.Parameters.AddWithValue("@Code", txtTypCde.Text) 
    command.ExecuteNonQuery() 
    con.Close() 
    MsgBox("saved") 
End Sub 
関連する問題