sqlite v3を使用していますが、データ型 'ビット'のいくつかの列を持つテーブルがあります。私はビット列に値 'true'を持つこのテーブルにいくつかのデータを挿入しましたが、問題は、C#コードを使用してデータを取得すると、常に値 'false'が返されることです。sqliteビット列はすべての場合に 'false'値を返します
同じクエリと同じデータベースが、自分のアンドロイドアプリケーションで正常に動作しています。しかし、私はC#またはWindowsからこれらのデータを取得するとき、それは珍しい結果を返します。
Sqliteを管理者が私のC#コードは、これらの列は、ビットデータ型と「真」です
SQLiteConnection sqlite_connection =null;
if(isTrans)
sqlite_connection = sqliteTrans.Connection;
else
sqlite_connection = this.ConnectionInstance;
try
{
SQLiteCommand sqlite_command = new SQLiteCommand("SELECT AdditionalServices, VitalObservation from tblReadonlyPatientData where SubscriptionID = 1306", sqlite_connection);
SQLiteDataReader reader = sqlite_command.ExecuteReader();
StringBuilder queryToExecute = new StringBuilder();
while (reader.Read())
{
queryToExecute.Append(reader.GetString(0));
}
// always call Close when done reading.
reader.Close();
reader = null;
sqlite_command = null
}
catch (Exception e)
{
clsException.ExceptionInstance.HandleException(e);
throw;
}
finally
{
if (!isTrans && sqlite_connection != null)
{
if (sqlite_connection.State == System.Data.ConnectionState.Open)
sqlite_connection.Close();
}
}
ある ....私はChromeブラウザを使用しています .....クエリペインに、正しい結果を示していますfalseを返します。 http://www.sqlite.org/lang_expr.htmlから撮影
sqlite> select cast('true' as numeric);
0
:sqliteの直接Falseで0を返すタイプの数値に文字列をキャストしますので、sqliteのに
でくれた文字列を返すので、私はあなたとの1-いくつかのサンプルレコードを追加することができ、SQL liteのクエリを更新し、nvarchar型にビット列をキャストしていますビット列の正確な値、2 - データを取得するためのC#コードの使用? –
質問を更新しました........ – Talha
_exactly_の "bit"型の列と、予期しない結果で使用しているのはどこですか? –