SQL Server Compact Edition を使用して、プログラムがどこかからローカル データベースにデータを挿入するアプリケーションをプログラミングしています。私のデータベース テーブルには次のような列があります: username, enterdate, exitdate.
.. など。
現在、データの特別な行を読み取ってその行をリストビューに追加しようとしていますが、SqlCeDataReader
とそのRead();
メソッドを使用すると、重複した項目がリストビューに追加されます。たとえば、必要な行がデータベースの9番目のインデックスにある場合、たとえば、目的の行がデータベースの9行目にあり、SELECT
それを使用してWHERE
から読み取ると、同じ行に9つの重複アイテムが追加されますリストビューに必要なデータ。
Microsoft Visual Studio 2008 Express Edition を使用しています。
Con.ConnectionString = "data source = |datadirectory|\\RoomDataBase.sdf";
Con.Open();
cmd.Connection = Con;
cmd.CommandText = "SELECT * FROM room WHERE username = '" + user + "'";
SqlCeDataReader reader1 = cmd.ExecuteReader();
if (reader1.Read() )
{
dblogger(user + " Entered and WAS in list");
//my problem happens here that the above line iterates
}
dblogger
リストビューに文字列を追加する void です
実際、私の問題はif{....}
、データベース内の行数の数まで反復して反復することです
SELECT
を使用してデータベースからデータを取得する場合WHERE
、基準に一致するのは 1 行だけであると確信しているため、すべてを確認するには、問題はRead()
手順にあることをお伝えしなければなりません。
SqlCeResultSet
そして、この問題は、使用してから使用すると発生することを言及する必要がありますReadFirst();
。
答えを知っている人に特に感謝します。