お世話になります。
C#とSqliteでタスク管理を行うシステムを作成しております。
テスト的にまずはプログラム側で固定値をDBにインサートしようとしているのですが、下記エラーが発生してしまいます。
SQL logic error or missing database
no such table: jgpdb
どなたか解決法をご教示頂けますでしょうか。
よろしくお願い致します。
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using System.Data.SQLite; namespace JGP対応管理 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs e) { } private void button1_Click(object sender, EventArgs e) { string dbConnectionString = "Data Source= C:\\jgpdb"; using (SQLiteConnection cn = new SQLiteConnection(dbConnectionString)) { try { cn.Open(); MessageBox.Show("接続できました。", "タイトル", MessageBoxButtons.OK, MessageBoxIcon.Information); } catch (Exception exception) { MessageBox.Show(exception.Message, "タイトル", MessageBoxButtons.OK, MessageBoxIcon.Error); } } } private void button2_Click(object sender, EventArgs e) { string dbConnectionString = "Data Source= C:\\jgpdb"; using (SQLiteConnection cn = new SQLiteConnection(dbConnectionString)) { cn.Open(); using (SQLiteTransaction trans = cn.BeginTransaction()) { SQLiteCommand cmd = cn.CreateCommand(); // インサート文 //cmd.CommandText = "INSERT INTO jgpdb (NO,Overview,System,Requester,Contents,person,Duedate,StatusKBN)VALUES(@NO,@Overview,@System,@Requester,@Contents,@person,@Duedate,@StatusKBN)"; cmd.CommandText = "INSERT INTO jgpdb (NO,Overview,System)VALUES(@NO,@Overview)"; // パラメータのセット cmd.Parameters.Add("NO", System.Data.DbType.Int64); cmd.Parameters.Add("Overview", System.Data.DbType.String); // データの追加 cmd.Parameters["NO"].Value = 1; cmd.Parameters["Overview"].Value = "あ"; cmd.ExecuteNonQuery(); cmd.Parameters["NO"].Value = 1; cmd.Parameters["Overview"].Value = "あ"; cmd.ExecuteNonQuery(); // コミット trans.Commit(); } } // using (SQLiteTransaction trans = cn.BeginTransaction()) // { // SQLiteCommand cmd = cn.CreateCommand(); // System.Data.SQLite.SQLiteParameter text1 = textBox1.Text; // //インサート文 // cmd.CommandText = "INSERT INTO jgpdb (NO,Overview,System,Requester,Contents,person,Duedate,StatusKBN)VALUES(@NO,@Overview,@System,@Requester,@Contents,@person,@Duedate,@StatusKBN)"; // ////パラメータセット // //cmd.Parameters.Add("No", System.Data.DbType.Int64); // //cmd.Parameters.Add("Overview", System.Data.DbType.String); // //cmd.Parameters.Add("System", System.Data.DbType.String); // //cmd.Parameters.Add("Requester", System.Data.DbType.String); // //cmd.Parameters.Add("Contents", System.Data.DbType.String); // //cmd.Parameters.Add("person", System.Data.DbType.String); // //cmd.Parameters.Add("Duedate", System.Data.DbType.VarNumeric); // //cmd.Parameters.Add("StatusKBN", System.Data.DbType.UInt64); // //データ追加 // cmd.Parameters["No"] = text1; // } //} } } }
回答3件
あなたの回答
tips
プレビュー