1

私はこのテーブルを作成します:

CREATE TABLE IF NOT EXISTS Users (Id INTEGER PRIMARY KEY, Username TEXT UNIQUE NOT NULL, Password TEXT NOT NULL, Time INTEGER UNIQUE NOT NULL, Timezone INTEGER NOT NULL, Active BOOLEAN NOT NULL);

そしてそれをいくつかの行で埋めます。次に、特定の「ユーザー名」の「アクティブ」を選択しようとしています。これはたった1つのセルです。

これを準備済みステートメントで実行したいのですが、問題は、通常のステートメントでも実行できないことです。このことは失敗します:

SELECT Active FROM Users WHERE Username "John"

これはうまくいきます:

SELECT Active FROM Users WHERE Username LIKE "John%"

しかし、私は正確な結果を探しています。これも機能します:

SELECT Active FROM Users WHERE Id=1

私は何が欠けていますか?

編集

私の発言には確かにタイプミスがあります。「=」が必要です(上記のままにしておきます)。しかし、これは実際には問題ではありませんでした。準備済みステートメントの使用でそれをたどりました。

準備されたステートメントを使用してデータベースに何かを保存するたびに、これを使用して検索できません。

SELECT Active FROM Users WHERE Username="John"

なぜこれが起こっているのか非常に興味がありますが、それは別の質問に属しています。

4

1 に答える 1

1
SELECT Active FROM Users WHERE Username="John"

お知らせ "="

于 2013-07-01T15:37:24.713 に答える