C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


(過去ログ 94 を表示中)
■56373 / )  C#でSQLiteを接続
□投稿者/ える (5回)-(2011/01/12(Wed) 10:56:38)

分類:[C#] 

2011/01/12(Wed) 11:04:07 編集(投稿者)


すみません。ミスしました。

Windows XP
Visual Studio 2008
C#で開発しています。

C#でSQLiteを接続し、
DBから読み出したいと思っています。

以下コーディング
private void DB_Sqlite(string no)
{
/*データベースに接続*/
SQLiteConnection connect = new SQLiteConnection("Data Source=Test.db");
if ((connect == null))
{
MessageBox.Show("データベースの接続に失敗しました。");
return;
}
// データベース接続を開く
connect.Open();
try
{
string mySelectQuery = "SELECT * FROM Testtable where No '" + no + "'";
SQLiteCommand command = new SQLiteCommand(mySelectQuery, connect);

if ((command = connect.CreateCommand()) == null)
{
MessageBox.Show("SQLの実行ができません。");
}
using (SQLiteDataReader sdr = command.ExecuteReader()) ※←ここ
{
List<string[]> tuples = new List<string[]>();
for (int i = 0; sdr.Read(); i++)
{
string[] column = new string[sdr.FieldCount];
for (int j = 0; j < sdr.FieldCount; j++)
{
column[j] = sdr[j].ToString();
}
tuples.Add(column);
}
}

/*データベースの接続を閉じる*/
connect.Close();

/*リリースの開放*/
connect.Dispose();
}
catch (Exception e)
{
MessageBox.Show(e.ToString());
}
/*データベースの接続を閉じる*/
connect.Close();

Console.Read();
}

※の部分で以下のエラーが出てしまいます。
正確にはTry{}catch{}のcatchのMessageBoxで出力されます。
原因はなにかわかりますでしょうか?

以下エラー
System.ArgumentNullException: 値をNullにすることはできません。
パラメータ名:s
場所 System.Text.UTF8Encoding.GetByteCount(String chars)
場所 System.Data.SQLite.SQLiteConvert.ToUTF8(String source Text)
場所 System.Data.SQLite.SQLite3.Prepare(SQLiteConnection cnn,String strSql, SQLiteStatement previous,UInt32 timeoutMS,String& strRemain)
場所 System.Data.SQLite.SQLiteCommand.BuildNextCommand()
場所 System.Data.SQLite.SQLiteCommand.GetStatement(Int32 index)
場所 System.Data.SQLite.SQLiteDataReader.NextResult()
場所 System.Data.SQLite.SQLiteDataReader..ctor(SQLiteCommand cmd,CommandBehavior behave)
場所 System.Data.SQLite.SQLiteCommand.ExcuteReader(CommandBehavior behavior)
場所 System.Data.SQLite.SQLiteCommand.ExcuteReader()
場所 WindowsFormsApplication1.Main.DB_Sqlite(String no)場所 C:Documents and Setting\A\myDocuments\Visual Studio 2008\Projects\WindowsFormsApplication1\Form1.cs:行 140
返信 編集キー/


管理者用

- Child Tree -