• 締切
  • すぐに回答を!

SQLiteのLike句で抽出できない

  • 質問No.7898327
  • 閲覧数281
  • ありがとう数1
  • 気になる数0
  • 回答数2
  • コメント数0

お礼率 63% (7/11)

SQLiteのLike句で抽出できないレコードがあります。
原因についてご教授いただけますでしょうか。
以下、操作手順になります。

■データベースの作成
C:\>sqlite3.exe member.db
SQLite version 3.7.15.2 2013-01-09 11:53:05
Enter ".help" for instructions
Enter SQL statements terminated with a ";"

■テーブルの作成、レコードの追加
sqlite> create table t_member(name text, age integer);
sqlite> insert into t_member values('山田一郎', 25);
sqlite> insert into t_member values('田中次郎', 35);
sqlite> insert into t_member values('鈴木三郎', 45);

■検索
sqlite> select * from t_member where name like '%一郎';
山田一郎|25
sqlite> select * from t_member where name like '%次郎';
田中次郎|35
sqlite> select * from t_member where name like '%三郎';
sqlite>

三郎だけが検索条件に適合しないのは何故でしょうか。
よろしくお願いします。

回答 (全2件)

  • 回答No.2

ベストアンサー率 20% (1/5)

WindiwsのコマンドプロンプトはShiftJisだったと思いますが、SQLiteはUTF-8,16だったと思います。
インプットにGUIツール(PupSQLiteなど)を使ってはいかがでしょうか?
  • 回答No.1

ベストアンサー率 60% (431/717)

Vmware Player上のUbuntuのSqlite3では再現しませんでした。
Windows7では再現します。
cygwinでも再現しました。
どうもWindowsの文字コードとsqlite3の内部コードの変換処理でバグがあるようです。
結果を報告する
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。
関連するQ&A

その他の関連するQ&Aをキーワードで探す

ピックアップ

ページ先頭へ