2016-05-20 4 views
0

アクセスDBにテーブル「テーブル名」が見つかりませんでした解決方法:私は、以下に示すVB.Netコードと私のAccessデータベースの新しいテーブルに新しいレコードを挿入しています

Try 
    Dim con As New OleDb.OleDbConnection 
    con.ConnectionString = Publicvar.con 
    Dim cmd As New OleDb.OleDbCommand 
    cmd.Connection = con 
    cmd.CommandText = "insert into [Setting]([PanelName],[UserName],[PassWord],[SmsLineId]) values(@pname,@uname,@pass,@smsLineId)" 
    cmd.Parameters.AddWithValue("pname", txtPanelName.Text) 
    cmd.Parameters.AddWithValue("uname", txtUserName.Text) 
    cmd.Parameters.AddWithValue("pass", txtPassWord.Text) 
    cmd.Parameters.AddWithValue("smsLineId", CInt(txtSmsLineId.Text)) 

    con.Open() 
    cmd.ExecuteNonQuery() 
    con.Close() 
    MessageBox.Show("!پنل جدید با موفقیت اضافه شد") 
    rgvPanelData.DataSource = PanelClass.Getlistofpanel() 
Catch ex As Exception 
    MessageBox.Show(ex.Message) 
End Try 

私が直面していますこの実行時エラー:

Could not find table Setting

新しいテーブルを設定する必要があります。上記の行で

+0

私の質問を編集していただきありがとうございます Blackwood –

答えて

1
cmd.CommandText = "insert into [Setting]([PanelName],[UserName],[PassWord],[SmsLineId]) values(@pname,@uname,@pass,@smsLineId)" 

[設定]コマンドを挿入することのテーブルです。 テーブルは、データベースに事前に存在する必要があります。または、レコードを挿入する前にコード内に作成する必要があります。 実行時にテーブルを作成するためのexample hereがあります。

テーブルがまだ作成されていない場合、SQLはDBで更新する必要があるデータの構造を知らないでしょう。

+0

こんにちは! しかし、私はそれを私のデータベースに作成しました。私はこのために混乱しています なぜですか? データベースを更新しますか? ? –

+0

ありがとう 解決済み 私は自分のAccessと私のテーブルを開けなかったのですが、まだこの問題に直面している場合は –

+0

でした。正確なエラーメッセージを入力してください。 Accessデータベース(アプリケーション)を終了すると、変更内容が自動的に反映されます。 –

関連する問題