2013年17データベース8: SQLite Part.10 (236)
TOP カテ一覧 スレ一覧 2ch元 削除依頼 ▼
【Pure】HSQL database engine【Java】 (295)
DB設計を語るスレ 6 (442)
Oracle>>>>>>SQLServer (240)
【論理ファイル】AS400DB【キューリー】 (242)
( ´_ゝ`)流石だよな俺らin DB板(´く_` ) (152)
オラクルマスターの給与 (274)
SQLite Part.10
1 :2012/08/16 〜 最終レス :2013/09/23 組み込み型データベース SQLite について語るスレッドです。 SQLite http://www.sqlite.org/ ・C/C++ API http://www.sqlite.org/c3ref/intro.html ・Syntax http://www.sqlite.org/lang.html ・Limits http://www.sqlite.org/limits.html ・Support http://www.sqlite.org/support.html
2 : 【過去スレッド】 ・sqliteを語るスレ http://pc8.2ch.net/test/read.cgi/db/1056956494/ ・SQLite 2 http://pc8.2ch.net/test/read.cgi/db/1140827718/ ・SQLite 3 http://pc8.2ch.net/test/read.cgi/db/1152367932/ ・SQLite 4 http://pc11.2ch.net/test/read.cgi/db/1162621344/ ・SQLite 5 http://pc11.2ch.net/test/read.cgi/db/1176223619/ ・SQLite 6 http://pc11.2ch.net/test/read.cgi/db/1193118037/ ・SQLite 7 http://pc11.2ch.net/test/read.cgi/db/1220581676/ ・SQLite 8 http://hibari.2ch.net/test/read.cgi/db/1250225486/ ・SQLite 9 http://toro.2ch.net/test/read.cgi/db/1298737360/
3 : 【ツール】 http://www.sqlite.org/cvstrac/wiki?p=ManagementTools ・TkSQLite http://reddog.s35.xrea.com/wiki/TkSQLite.html ・PupSQLite http://www.eonet.ne.jp/~pup/software.html ・SQLite Manager (Firefox add-on) http://code.google.com/p/sqlite-manager/ https://addons.mozilla.org/ja/firefox/addon/5817 【ラッパ】 http://www.sqlite.org/cvstrac/wiki?p=SqliteWrappers ・System.Data.SQLite (ADO.NET 2.0 Provider) http://sqlite.phxsoftware.com/ ・SQLite ODBC Driver (ODBC) http://www.ch-werner.de/sqliteodbc/ ・SQLite JDBC driver (JDBC) http://www.xerial.org/trac/Xerial/wiki/SQLiteJDBC ・SQLite Java Wrapper/JDBC Driver (JDBC、Java) http://www.ch-werner.de/javasqlite/ ・SQLiteJDBC (JDBC) http://www.zentus.com/sqlitejdbc/ ※ページ行方不明
4 : 【ネタ】 ・OS X ハッキング! SQLiteが広げるこれからのアプリケーション http://journal.mycom.co.jp/column/osx/236/ ・SQLite Java Wrapperのコンパイル http://syo.cocolog-nifty.com/freely/2007/10/sqlite_java_wra_f79c.html ・生まれ変わるPHP - Zend Engine 2、SQLiteの実力は? http://news.mynavi.jp/special/2004/php5/007.html ・SQLite性能評価その1 http://www.sutosoft.com/room/archives/000450.html ・Fulltext index on SQLite http://www.dodgson.org/omo/t/?date=20061001 ・SQLite の全文検索を Python から使ってみる (1) http://plaza.rakuten.co.jp/kugutsushi/diary/200707270001/ ・SQLite Full Text Search with MeCab http://reddog.s35.xrea.com/wiki/SQLite%20Full%20Text%20Search%20with%20MeCab.html ・MSDN Magazine: 働くプログラマ - SQLite の内部 http://msdn.microsoft.com/ja-jp/magazine/ff898405.aspx ・アドビ、SQLite Consortiumに参加で開発を支援 http://builder.japan.zdnet.com/db-sql/20368174/ ・SQLiteに参加、Berkeley DBの置き換え狙うOracle http://news.mynavi.jp/news/2010/07/06/032/index.html ・How SQLite Is Tested http://www.sqlite.org/testing.html
5 : 【書籍】 ・SQLite入門 第2版 (西沢直木 著) http://www.amazon.co.jp/dp/479811944X 入門用にはとりあえずこの一冊? ・新標準SQLite http://www.amazon.co.jp/dp/4797354739 ・SQLite ポケットリファレンス http://www.amazon.co.jp/dp/4774143944 ・Pocket詳解 SQL辞典 (堀江美彦 著) http://www.amazon.co.jp/dp/4798018619 各種 RDBMS 対応の SQL のリファレンス本で、SQLite にも対応。 が、ざっと見たところ SQLite に関してはあまり緻密に調べられておらず 不正確なところもあるように見受けられる。 ・基礎から学ぶWebデータベースプログラミング (堀川久 著) http://www.amazon.co.jp/dp/4274065294 前半は SQL の基礎について、後半は Ruby で Web アプリの作成についての説明。 PostgreSQL, MySQL, SQLite の仕様の違いにも触れられている。 が、 SQLite は SQLite2 ベースなので情報が古いかも。 ・PHP+SQLite実践サンプルブック (豊崎直也 著) http://www.amazon.co.jp/dp/4883374297 内容不明。7年前の本。 ・The Definitive Guide to Sqlite (Mike Owens 著) http://www.amazon.co.jp/dp/1590596730 ・SQLite (Developer's Library) (Chris Newman 著) http://www.amazon.co.jp/dp/067232685X ・Using SQLite (Jay A. Kreibich 著) http://www.amazon.co.jp/dp/0596521189
6 : テンプレここまで。 SQLiteスレもついにスレ番2桁目に突入です。
7 : SQLiteでの同時処理について質問です。 あるテーブルで値を+1する処理を行っています。 UPDATE sample_table SET count=count+1 WHERE num = $num 処理が呼ばれるとsample_tableのcountが1増えます。 ですがこが同時に100回行っても100増えません。 ゆっくりと100回行うと100増えます。 おそらく前の処理をしている最終に読み取った値に+1をしているのでうまく増えていないということだと思うんですがどのようにすれば行った回数分countを増やせるでしょうか。
8 : >>7 前の処理のロック区間中にUPDATEしようとしてエラーになった分が更新されていない、とか 更新される前のcountの値を読み込んでインクリメントしたので前と同じ値を上書きしてしまっている、とか いくつか原因は考えられるけど、情報が足りないので答えられないです。 ・そもそも「同時処理」とは何を想定している? ・「同時に100回行う」ための手段(orコード)は?(SQL文だけ貼られても何がしたいのか分からない) ・「ゆっくり」とは何をどうしたの?
9 : >>8 回答ありがとうございます。 こちらのcount+1を行うものはWEBサイトにおいておりまして、特定のアクセスが行われると+1されるというものになります。 そのため不特定多数の場所からアクセスがある状況です。 アクセスカウンターのようなものをSQLite3で行っておりアクセス毎に+1されます。 同時処理についてですが、こちらはWEB上から処理を行うようになっております。 そのため複数の箇所から同時に多数の要求があった場合に処理が複数走ることを指します。 100回行うコードというのはありません。 テストのためにApacheのabというツールで10アクセス10スレッドで100のアクセスを行いました。 その際に+100ほど数値が増えないといけないのですが、実際には30程度しか増えておりませんでした。 ゆっくりというのは手動でアクセスを100回した場合のことを指しております。 F5でリロードを100回するのに近いと思います。 そのためゆっくりアクセスを行うというニュアンスで使用いたしました。 質問内容に不備があり申し訳ありませんでした。 対策が思いつかないのでアドバイスなどいただけると助かります。
10 : ただの排他漏れだろ アクセスカウンタ作ったことないの?
11 : >>9 質問する時はコードも貼ること。 もちろん、100回のクエリが全部成功してるかどうかは確認したんだよね?
12 : >>9 アクセスカウンタは作ったことあります 排他制御も知ってはおりますが、SQLiteではどのように排他制御を行うのでしょうか? >>10 100回のアクセスが成功していることは確認しています。 アクセスのテストについては申し訳ないですがツールを使用しているためコードがありません。 カウントの部分については $connect = count_db(); $countup = $connect ->prepare("UPDATE sample_table SET count=count+1 WHERE num = $num"); $countup ->execute(); となります。
13 : >>12 SQLiteはそこら辺のDBMSと同じで別に何もしなくても「排他制御」はされるよ。 「100回のアクセス」とやらが成功しているのをどうやって確認したのか知らないけど、どう考えてもSQLクエリの実行が失敗してる。 見たところPHP+PDOって感じだけど(質問する時は言語名くらい書くこと)、count_db()が何だか分からないし、 prepareなのにプレースホルダ使ってないし、クエリの実行結果が成功かどうか確認しているようにも見えないし、 とりあえずPHPとPDOとデータベースを先に勉強した方が良いと思うよ。 あと、テーブル構造とか変数が何だか分からないから、クエリ自体があってるのかすら確認できないけど、まあそれはいいや。
14 : >>13 アクセスの成功に関しては負荷ツール側で全てのリクエストがHTTPステータス200で終了していることで確認しました。 ですのでSQLクエリの実行が失敗していると見てよいのかの判断がついておりませんでした。 排他制御は行われているとの事なのでカウントがプラスされていない時点でクエリが正常に実行されていないと見るべきでした。 申し訳ありません。 count_db()については function count_db() { $connect = new PDO("sqlite:./sample_table.sql3"); return $connect ; } となります。 テーブル構造は sample_table ------------------ |num | count | ------------------ |index | 1 | |contact | 30 | ------------------ このようになってます。 num側にページアドレス・count側にアクセス数が入っています。 PDOとデータベースの勉強のためにまずは簡単なアクセスカウンターを作ってみようかと思って作成いたしました。
15 : >>14 ページアドレスがnum…。まあいいけど。 データベースにしてもPDO(と言うかPHP)にしても入門書は腐るほど出版されてるから、 とりあえず適当なのを買ってきて読めば一通りのことは出来るようになると思う。 あと、HTTPの仕組みとかも勉強した方がいいかもね。 SQLクエリの実行結果は [DBMS] → [PHP] HTTPステータスは [PHP(と言うかWEBサーバ)]→[WEBブラウザ] ちなみに、今回のは排他制御がかかってる時に同時にUPDATEしようとしてエラーになったらどうするか、の考慮が漏れてるのが問題。 おそらくロック待ちのタイムアウト値が設定されていないので、100回のうちエラーになった分はスルーされてる。 これだけレスしておいてあれだけど、微妙にスレ違い(今のところあんまりSQLite関係ない)だし、ヒントも書いたので、 あとはWEBプログラミング板の適当なスレに移動した方が幸せになれるかもしれない。勉強頑張れ。
16 : >>15 ありがとうございます。 排他中の制御に関してはまったく考慮しておりませんでした。 前の処理が終わるまで順番に待っているだろう くらいの認識でした。 amazonあたりで評価の高そうな本をいくつか見てみたいと思います。 ありがとうございました。
17 : 外部結合しているテーブルの行をを一度に消す方法はないのでしょうか? delete TBL_A from TBL_A left join TBL_B on TBL_A.keyid = TBL_B.id where TBL_B.keyid = 4; や delete from TBL_A from TBL_A left join TBL_B on TBL_A.keyid = TBL_B.id where TBL_B.keyid = 4; など紹介されているものを色々試してみたのですが、どうしてもsyntaxerrorがdelete直後の単語ででてしまいます。 テーブルごとに削除するしかないのでしょうか…?
18 : DELETEはFROM一つしか書けないよ。JOINも当然書けない。 メインのテーブルのレコードを削除したとき必ず従属テーブルのレコードを削除するならトリガーに書きなよ。
19 : >>18 回答ありがとうございました。 トリガー使ったことないのですが、挑戦してみます。
20 : ばか
21 : そんな事言うんじゃないよ
22 : sqliteのファイルを読み込む際に、そのファイルがsqliteのファイルであるかどうかを確認することはできますか? sqlite以外のファイルを読み込んだ際に当たり前ですがエラーが出るのでそれに対処したいと思っています。 読み込むsqliteのファイル名に規則性がないので振り分けができないので、ファイルがsqliteファイルであるかどうか確認する方法があれば教えてもらえると助かります。
23 : 3.7.14
24 : >>22 自分で結論にたどり着いてるみたいだけど…。 >sqliteファイルであるかどうか確認する方法 >sqlite以外のファイルを読み込んだ際に当たり前ですがエラーが出る
25 : >>24 ワロタ 確かに、エラーが出てるとわかってるならそれでいいじゃんとなるけどねw 事前に判断することができるか?という希望に答えるとすると、 C言語的にはファイルを開いて先頭16バイトバイナリ読込して、 "SQLite format 3\x00"とmemcmpして見れば一応わかる。 ただし、こんなものは偽装はできるし、このヘッダ部は正常でも、sqlite的に演算したら ファイルが破損していた場合は結局エラーになるので価値は・・・疑問かな。 sqlite3_openv2がエラーを返すならそれで判断するのが良いよ。
26 : http://www.sqlite.org/fileformat2.html
27 : SQLite3使ってますがカラムの追加は最後尾にしか出来ないでしょうか? | 1 | 2 | 3 | 4 | とあった場合 | 1 | 2 | 3 | 3.5 | 4 | としたいと思ってます。
28 : >>27 http://www.sqlite.org/lang.html http://www.sqlite.org/lang_altertable.html http://www.sqlite.org/lang_select.html 質問する時は、何をするために、どういうSQL文を使って、結果がどうなって、それが目的とどう違ったか、くらいは書くこと。 じゃないと ドキュメント読んで下さい くらいしか答えられない。
29 : >>27 ALTERならどのDBMSでもそうじゃないの? テーブルを作り直してINSERTすればいいじゃん。
30 : そういう話なら、alter table文の最後に"before カラム名"とか"after カラム名"をつけると、テーブルをselect *で見た時に、 意図した場所に入ったように見せる(物理ディスク上はどうせ最後に追加される)ことができるRDBMSは結構あると思う。 けど、もしかしたらSQL標準には無かったかもしれない。 と言うか>>27 の目的はselect文で順番を変えるだけで済むような。
31 : select *しか知らいないと予想してみる
32 : SQLite3はMySQLみたいに任意の場所に追加は出来なかったと思う どうしても順序通りに作りたいなら テーブル作り直して、Insertしかないと思う。 SQLite3で before カラム名 が出来るかどうかは試したこと無い。
33 : SQLiteってあんまし触ったこと無かったけど insert into test('test','test2') values ('1','2'),('3','4'); って出来ないの? insert into test('test','test2') values ('1','2'); なら出来るんだけど、複数insertするとときの作法がよくわからない。
34 : >>28 にもあるようにドキュメント読めばすぐに解決できるだろうが http://www.sqlite.org/lang.html
35 : なるほどね さすがにLiteっていうだけあって色々制限あるね というかこれからの質問は ドキュメント読めばすぐに解決できるだろうが http://www.sqlite.org/lang.html のテンプレ張れば解決だな
36 : と言うか最初からテンプレにある。>>1 にアンカ張れば解決。
37 : sqlite> .version SQLite 3.7.14 2012-06-30 ******** sqlite> CREATE TABLE jedict (jword TEXT, eword TEXT); sqlite> INSERT INTO jedict ('hon', 'book') , ('kon', 'navy'), ('mon', 'gate'); sqlite> select group_concat(jword, '_') from jedict; hon_kon_mon
38 : >>37 これで挿入は出来るんだけどカラム増やすためにDB作り直したときにいっつもこまってるんだよね sqlite> CREATE TABLE jedict (jword TEXT, eword TEXT) を sqlite> CREATE TABLE jedict (jword TEXT, eword TEXT, hword TEXT); にしたとき INSERT INTO jedict ('hon', 'book') , ('kon', 'navy'), ('mon', 'gate'); だと困るからいっつも INSERT INTO jedict ('hon', 'book', '') , ('kon', 'navy', ''), ('mon', 'gate', ''); こんな感じに書き直してから挿入するので手間がかかってしょうがない
39 : hword カラムを not null default '' にして追加したあと INSERT INTO jedict (jword, eword) values ('hon', 'book') , ('kon', 'navy'), ('mon', 'gate'); じゃダメ?
40 : そういう手もあるか そもそもSQLiteで移植ってみんなどうやってんの? MySQLとかならphpyAdminとか使ってラクラク出来るけどSQLiteでそういうのあるの?
41 : ごめん、移植ってのがよく分からない。 流れ的に>>38 みたいにDB作り直して中のデータの一部or丸ごとをコピーすること? それとも他のRDBMSにデータを持って行ったり、持って来たりすること?
42 : >>41 DB作り直して中のデータを丸ごとコピーしたりすること 言葉足りずで申し訳ない
43 : そもそも、中身を丸ごとコピーしないといけないような重要なDBを、 構造を変えて作り直す状況があんまり無いんじゃ…。
44 : >>42 sqlで出来るならそれで。 できないならぶっちゃげぱっとスクリプト書いちゃうな。
45 : 年中作り直すのは設計に問題がある。 カラムの追加ぐらいでいちいち作り直さない。
46 : さすがにカラム追加するだけで作り直しとかはないけど 拡張して追加よりは作り直したほうがいい場合が年に1回くらいあったりしてたんで みんなどうやってんのかと思って。
47 : 年中作りなおすなんて書いてないだろ。 質問者は、作りなおすハメになったのが設計の甘さかどうかなどは問わず、 「みんな、どうするのかな?」って軽いつもりで聞いてるんだろ。 エラソーに設計に問題がーとか言ってるのは意図を汲めない馬鹿丸出しの発言だろ。 SE/PGだけが業務でコンピュータを使いう時代じゃないんだ。 少しは考えろよ。
48 : >>47 訂正、業務かどうかも前提とすべきではなかったな。
49 : 「作り直す時のテクニックをみんなで考えよう」じゃなくて「みんなどうやってんの?」だからなー。 業務だったらそんなマズい設計にはならないし、趣味だったら入れなおすほどのデータなんて扱わない人が大半だろうから、 質問者へのレスとしては間違ってないと思うぞ。年中云々は知らんけど。 仮に前者を問いかけたつもりなんだとしたら聞き方を間違えてる。
50 : phpMyadminみたいにWEB上でお手軽に出来るのがあればいちいちスクリプト組んだりコマンド流したりやんなくていいんだろうけどね 俺はデータをどっかに持ってく場合は 各値を'で囲んで取り出して1レコードを()でくくる感じで吸い出す ('a', 'b', 'c') こんな感じ。 あとは引越し先にinsertで突っ込む。 1回だけ構造が違うところに突っ込むことがあったけど、そんときは ('a', 'b', '', 'c') って感じにして対応した。 そんときは80万レコードあったので2個目の,のあとに'', を追加するスクリプト組んで書き換えた。 このやり方がスマートかどうかはわかんないけど、おれは引越しするときはいつもこんな感じでしてる。
51 : >>47 いったい誰と戦っているんだよ?空気脳さん.
52 : 3.7.14.1
53 : PHP上からSQLiteファイル内のデータを全部引っこ抜くようなのって無いんだっけ? 全レコードを>>50 みたいな感じでおいらも引っこ抜いてるんだけど。
54 : keyとvalueしかない構造だから悩まない
55 : 突然どうした?
56 : 追加とか変更とかは適当にコマンド流すけど 何か変更することあればFirefoxのSQLiteManagerってやつでいじってる それ以上のことやろうと思うならそもそもSQLiteとか使わずMySQLとか使ってるしな
57 : だからどうした?
58 : 以下の様なデータが格納されているデータベースで 1 1 1 2 2 3 3 3 4 とあるデータで各値が何回出てくるかカウントするってことは出来ますか? 1=3回 2=2回 3=3回 4=1回 みたいな検索結果を得たいと思ってます。
59 : table名 theTable カラム名 a int a -- 1 1 1 2 2 3 3 3 4 -- select a, count(*) as cnt from theTable group by a order by a
60 : >>59 解凍ありがとうございます。 こういう組み合わせ知らなかったので凄い勉強になりました。
61 : まさかこんなレベルでプログラマじゃないよなw
62 : >>58-61 スレ違い。 SQL質疑応答スレ 13問目 http://toro.2ch.net/test/read.cgi/db/1343899481/
63 : SQL知らなくても凄腕のプログラマもいるし
64 : SQLiteって別ドメインであってもファイルにアクセスさえ出来れば、どこに置いてても操作できる?
65 : http://www.sqlite.org/faq.html#q5 5) Can multiple applications or multiple instances of the same application access a single database file at the same time? 抜粋意訳 NFSでマウントすればリモートアクセス出来るが、NFSのファイルロックは信頼性か低いものもありオススメしない
66 : SQLiteってクロスドメインとかいけるんだっけ
67 : ファイルって複数のテーブル突っ込んでサイズデカくなっても ひとつのテーブルへの速度に影響ないレベル?
68 : 検索はそんなにかわんない でもinsertとかupdateとかとかになると件数が10万件とかあると多少違ってくる
69 : >>68 ありがと! 検索メインなのでまとめてみます!
70 : SQLiteってDB自体を暗号化って出来る?
71 : SQLCipherってので暗号化できるみたいだけど半有料
72 : 書き出しと読み出しの部分のソスを書き換えて... なんてのは出来そう?
73 : >>70 >>1 のSupportを参照。有料で別ライセンス(パブリックドメインではない)だけど本家が出してる。
74 : 暗号化してインサートすればいいんじゃね?
75 : >>72 する手間かけるくらいなら >>74 の方が良いね
76 : そか IO部分はそのままという事ね。 すぐ 出来そうな感じはする。 出来ないけどorz
77 : >>74-75 暗号化してinsertしちゃったら 検索出来なくなるじゃん
78 : I/Oはそのままってだけですよ。
79 : >>77 検索キーも暗号化して検索すればいいんじゃね?
80 : 部分文字列の比較とか難しくないか? SUBSTRINGを使った場合位置が保証されるかとか。
81 : そりゃrotみたいな単純なもんならいいけど、暗号化とは言えないし、そもそもそれだと部分一致とかマルチバイトとか面倒だろ
82 : >>79 キーだけ暗号化した暗号文と キーを含む文字列を暗号化した暗号文が 部分一致することは普通はあってはならない
83 : というか、一般にそれを暗号化とは言わない。 スレ違いなのでプログラム技術板あたりへどうぞ。
84 : 出来ないなら普通に出来ないって言えばいいのに
85 : 暗号化した文字の比較とかの話だからスレ違いってことでしょ 暗号化が出来る/出来ないの話なら>>73 で出来るって結論が出てる
86 : 馬鹿には無理
87 : sqliteってファイルベースのデータベースじゃん その作成されるデータファイルのパーミッションやユーザ権限ってどうなってんの? ユーザ毎に保存してくれる?
88 : 最後の一行がよく分からないけど、実行したユーザの権限で作成されるよ。
89 : ありがとー
90 : sqlite3_close_v2 よいよね
91 : 3.7.15
92 : SQLite3の1つのDBの中に、最大でいくつまでテーブルが作成できるのでしょうか?
93 : >>92 >>1 答えはないけどヒントは書いてある。
94 : 3.7.15.1
95 : .netなんですけど1つ目のテーブル読みながら2つめにコピーしようと してるんですがdatabase file is lockedになります mdbでやってた時は動いててそれをsqliteに置き換えただけなのですが 原因わかりますでしょうか
96 : エスパーじゃないので分かりません コードとかSQL文を貼ってみてはいかがでしょうか
97 : >>93 すみません いろいろと調べているのですが見つかりません。 レコード数やフィールド数はビルドオプションで設定ができるのですが、テーブル数の設定は見つけることもできません。 定数ではなく、環境依存の値になってしまうのでしょうか?
98 : テーブル数の上限はたぶん未定義で環境(ディスク残量など)に依存。 ソースを見ても SQLITE_MAX_TABLES みたいなそれらしき記号定数なし。 ためしに機械的な名前(T_0, T_1, .. T_99999)でテーブルを10万個作成してみたが作れた。
99 : 予想だけど…。 SQLiteは作ったテーブルやインデックス、ビュー、トリガーとかのスキーマ情報を、 同じファイル内の特殊な予約テーブル"sqlite_master"に格納してる。 で、レコード数の上限は2の64乗=18446744073709551616と書いてある。 これをテーブル情報だけで全部使い切るには1800京個くらいのテーブルを作る必要があるけど、 仮に1レコード1バイトしか使わなかったとしても全部使えばsqlite_masterテーブルだけで170億GBくらい必要。 実際にはテーブル情報以外にも格納するから、もう少し減るとは思うけど、事実上無制限。 と、ここまで書いて気がついたけどsqlite_masterが埋まる前にページ数の上限の方が先に来るのかな? アーキテクチャをちゃんと読まないで適当に書いてるけど、sqlite_masterの各行に、それぞれのデータが 格納されているページ番号(の先頭)を指定してた気がするから、ページ番号とB-Treeの先頭の対応が1:1で、 それぞれのテーブルが全部1ページ内に収まってるとすれば、ページ数の上限は2の31乗-2=2147483646だと 書いてあるから、そっちの上限に先に到達するのかもしれない。 どっちにしても通常運用で支障が出ることはないくらい沢山作れそうだけど、 嘘をいっぱい書いてるかもしれないので詳しい人いたら解説お願いします。
100 :あぼーん :あぼーん あぼーん
101 : 10万個もテーブル作れるならもう1データ1テーブルとかでもいいかと思ってしまうわ。 実際にはやんないけどSQLiteで扱う程度のデータならそこまで大規模になるなら別のDB使うだろうし。 それにしても暗号化ないのがちょっと不安になるわ。 案件にもよるんだろうけどみんな暗号化とかそういうの気にせず使ってるの?
102 : 他で暗号化してから格納したら?
103 : 案件によるって書いてあるじゃんw
104 : 気にせずと言うか、SQLiteを使う案件で、かつ暗号化が必要というのに今のところ出くわしたことが無い。 もしそういうのが来たら自前で暗号化して積むか、本家の暗号化オプション買うかの2択かなあ。
105 : 自前で暗号化とかすると検索が面倒になる気がしないでもないけどSQLiteは文字通りLiteなんだからしょうがないか
106 : と言うか先にデータを暗号化してからinsertするじゃ意味無いよね? >>104 はSEEを買うか、代わりにvfsで暗号化レイヤーを実装するか、って話だと思ってた…
107 : >>105 隠したい項目(暗号)をWHERE条件で検索できたら そもそも駄目じゃない?
108 :あぼーん :あぼーん あぼーん
109 : 質問です。 全角半角大文字小文字の英数字が入り交じった項目があって、これらを全て同一視して検索する手段はありますでしょうか。 また、ひらがな、カタカナについても、おなじく同一視して検索する手段はありますでしょうか。
110 : 質問の意味が分からない 同一視って何?
111 : A=A=a=aとして扱いたいんでしょう。
112 : select文を全角で入れたいのかもしれん。
113 : 検索対象の文字列がカラム A に入っているとする。 まずカラム A の文字列の英小文字を英大文字に変換する。 上記で変換したデータの中の、半角英数記号カタカナを全角に変換する。 上記で変換したデータのカタカナを平仮名に変換する。 ここまで変換したら、検索専用カラム AA に格納しておく。 ※必要であれば、ギリシア文字やロシア文字の小文字大文字変換も。 検索にあたっては、キーワードを上記ルールで変換してから、カラム AA に対して where 条件を使う。
114 : >>109 オリジナルデータを入れとくカラム以外に英数を半角大文字とかに正規化して入れとくカラムを作って検索時はそれでやれば?
115 : やったことないけど、sqlite3_create_collation() 使って 比較関数登録して COLLATE 句ないし演算子使うってのは?
116 : WHERE UPPER('ABCdefgHIJKlmn') = 'ABCDEFGHIJKLMN'
117 : 3.7.15.2
118 : sqlite って zerofill できます?
119 : なんで自分で試さないの?
120 : Oracle の LPAD や RPAD 関数みたいな機能のこと?
121 : さすがにSQLiteにquery_cache_sizeみたいなのはない?
122 : さすがにドキュメントは読んだんだよね?
123 : unionは500回までって制限があるんですね unionで片っ端からつなげようという根性も正しくないんだろうけれど、 select結果は一回一回作業用のテーブルに全部突っ込むのがいいのかな
124 : >>123 >unionで片っ端からつなげようという根性も正しくないんだろうけれど、 その通り。設計が悪すぎるので見直すべき。
125 : 500って何か間違ってるw
126 : 最新バージョンをCygwinでC++から利用しているんですが CSVファイルから1行ずつよみこんで PreparedStatementを使用してINSERTする処理なんですが いくつかの行で最終カラムに入れた値だけ文字化けする現象が発生しています。 bindする際の値をデバッグして確認したのですが、その際は特に文字化け等も しておらず(改行コード等の余計なコードも入っていませんでした) INSERTをすると文字化けしています。 なぜか最終カラムにだけ発生します。 TABLE作成時に最終カラムにダミーの項目を追加してINSERTを行うと 文字化けは発生しませんでした。 調べているのですが、原因が分からず困っています。 どなかかお分かりになるでしょうか?
127 : そんな文章で分かるわけないだろ。ここはエスパー募集スレじゃないっす。 再現コード貼ったら誰かが答えてくれると思うよ。
128 : マルチコアCPUで使っても1コアだけ100%に張り付くだけでもったいない気がしたので クエリを行うプログラムをマルチスレッドで走らせてみたら 複数のコアが代わる代わる100%になるだけで実行時間は全然変わらなかったと日記
129 : ここは君の日記帳ではありません どうせプログラムの作りが悪いんだろ
130 : 論文にしてどこかに投稿して
131 : リジェクトされますた
132 : おすすめのSQLitesqliteクライアントを教えてください。 PCでは ・Common SQL Environment ttp://www.hi-ho.ne.jp/tsumiki/ を使ってるのですが、それほど高機能は求めていません。 てんぷれにないってことは、鉄板みたいなのはないのでしょうか? 目的 ・SQL文の予習・復習 for Android2.3 条件 ・無料 ・SQLが発行できる ・結果がExcelのような表で表示される 使用中アプリの評価 ・Start SQL ttps://play.google.com/store/apps/details?id=dev.tarow.ss ○SQLの予約語KBがほしい ○公開プロバイダ(例えば電話帳)にアクセスしたい(その場合はInternetパーミッションなし)
133 : 俺も前探したことあったけど、これといったのは見つからなかったな aSQLiteManagerぐらいかな使い物になりそうだったのは
134 : >>133 レスありがとうございます aSQLiteManagerも使ってみました あれは、タブレットだと綺麗にみれるのかな? 文字が小さすぎてファイルをタップしにくいのと、 たぶん型によって色分けされた表が目に痛くて すぐアンインストールしてしまいました なんか、中国製のも目にとまったけど、 パーミッションみてやめたw 無料で欲しいってのがあつかましいのですが しばらくStart SQLで我慢して ちょくちょくgoogle playをチェックします AndroidでSQL打つ需要ってあまりないのかな
135 : まあ、ないよね。
136 : A5:SQL Mk-2 という開発ツールを使い始めたばかりなんですが、 起動すると何の設定をしなくても「ODBC/SQLite3 Database」というのが表示されます。 これは単に表示されるだけのものなんでしょうか? それとも、設定やフォルダの設置でほかのSQLのように扱えるようになるんでしょうか?
137 : そのA5:SQL Mk-2とかいう開発ツールの作者に聞けば…?
138 : コントロールパネルか管理ツールでデータソース(ODBC)というのが あるからそれで作ってやれば一応使えるよ。 ODBCの範囲内だけどな
139 : 最近興味があってsqliteを調べてるんですが、 みんなはやはりスマホのアプリ開発の為に利用してるんですか? ざっと調べたところだと、複数のユーザからの頻繁な更新を受けるようなwebアプリの利用は厳しいという 情報を見つけたんだけど、古い情報なのでいまはどうなってるのかわかりません やっぱりそういう用途では利用しづらいんでしょうか それともなにか解決策が見つかったりしたんでしょうか
140 : 今はジャーナルモードかえれば結構余裕
141 : sqlite3ってMySQLみたいに use データベース名 ってできないの? 代替コマンドある?
142 : コマンドラインの話ね? 基本的に1ファイル1DBだから必要ないっしょ? ただ、一度に複数のDBをつなげて違うスキーマとして同時に使うっていうような 面白いことならできる $ sqlite3 test1.db sqlite> .databases seq name file --- --------------- ---------------------------------------------------------- 0 main /home/hoge/test1.db sqlite> attach 'test2.db' as 'sub'; sqlite> .databases seq name file --- --------------- ---------------------------------------------------------- 0 main /home/hoge/test1.db 2 sub /home/hoge/test2.db sqlite> create table main.table1 (id text primary key, val integer); sqlite> create table sub.table1 (id text primary key, val integer); (mainは省略可、テーブル名は被らなければ省略可) sqlite> insert into table1 (id, val) values (0, 123); sqlite> insert into sub.table1 (id, val) values (123, 456); sqlite> select t2.id, t2.val from table1 t1, sub.table1 t2 where t1.val = t2.id; 123|456 見たいな。
143 : globとlikeってどう使い分けるんでしょうか? globの方が高機能だが速度はシンプルなlikeに劣るって認識であってますか?
144 : LIKEは標準、GLOBはSQLite拡張、でいいんじゃね
145 : phpから使ってるんだけど PRIMARY KEY AUTOINCREMENTが定義されてるindexフィールドがあるテーブルlogがあります。 そこにinsert into log DEFAULT VALUES;をした場合 その時に作られたindexの番号を取得するにはどうしたらいいの? 即order by desc limit 1しても、その時に作られたと保証はされないですし (同じタイミングで別プロセスに作成されたのかも知れない)
146 : last_insert_rowid() とか使えばいんでね?
147 : 補足すると、トランザクションありの状態で、だよね
148 : PHPでPDOで使ってるんですが、トランザクションを開始してコミットする前に webページを遷移させたからかどうかはわかりませんが、データベースがロックしたままになってしまいました。 PHPからデータベースがロックしているか確認してロックを解除する方法はありますか? ネットで検索しまくりましたが、 「ロックしてるファイルをコピペしたファイルをデータベースとして使えばロックは解除される」 というのしか見つかりませんでした。
149 : PDOで使ったこと無いから知らないけど、普通はロックしてるプロセスが終了すれば解放される。 ロックしたまま無限ループしてるとかじゃない限り、そのうち解放されるんじゃない?
150 : >>149 ループ処理はしてないです。 PC再起動してもそのファイルはロックされたままですね
151 : 再起動してもロックって・・・ ロックファイルでも作ってるのかしら、もしくはなんかの間違い
152 : SQLite自体にロックファイルの概念はないぞ。 そもそも「データベースがロックされたままになった」というのは何を持って判断したの?
153 : ロックされているファイルに対してトランザクションをかけて、executeすると ロックされてるっていうエラーが出た。 とりあえずロックされたファイルをコピペしたファイルを今使ってるので問題はなくなったけど、 またいつこんなことが起こるのか心配…
154 : このへんかな。 http://ja.softuses.com/28862 http://ult.riise.hiroshima-u.ac.jp/~nagato/?firefox つまり firefox が起動中 lock しているこれらの sqlite ファイルが正常に解放される事無く、 firefox が落ちてしまった時に問題が発生するのではないかと。 (中略) database is locked となる sqlite database file であるが、別の場所にコピーすると何事もなかったのように開くことができることに気付いた。
155 : ん、PDOの話じゃないの? ・OS、アーキテクチャ ・ファイルシステム ・使用法、再現コード ぷりーず。
156 : リンクは単にファイルがロックされた件に関する検索の情報です。 他にほとんどなかったので。 PDOかどうかって関係あるんですか…? OSはwindows7 アーキテクチャとは? ファイルシステムはNTFS 使用法はPHPでPDOでトランザクションしてプリペアでupdateをセットし、execute、コミットの順です。 コードは再現できるコード作れたらそれを載せます。
157 : アーキテクチャはIA(インテル)だろ 通常は fcntl でロックしてるようだから ロック中に落ちたらコピーして仕切りなおし、でいいけど Windowsはどうなんかな・・・
158 : 原因を切り分けるためには情報が色々必要ってことでしょ。トラブル解析の基本。 例えばPDOでしか再現できない、とかだとするとPHPのSQLite用PDOドライバのバグなんて可能性もあるからね。 windowsだったら php_pdo_sqlite.dll ってやつ。phpはこのラッパーを経由してSQLiteのAPIを叩いてるわけ。 あとは(特にLinuxの)NFSはファイルロックまわりの実装が弱い、みたいなことがあったりして、 ファイルシステムによっては同様のことがあるかもしれないからファイルシステムの情報も必要、とか。 もちろんPHPスクリプト自体の作りが悪い可能性もあるから再現コードも必要。 >トランザクションしてプリペアでupdateをセットし、execute、コミット とやってるつもりだったが、よく見たら違うこと書いてるとかね。
159 : unlocker入れておくと、ファイルがロックされてるときに、どのプロセスがそのファイルをロックしているか教えてくれる。 ロックされたプロセスからファイルを解放することもできる。 こういうプログラムがあるから、どのプロセスがロックしているのかをプログラムから知る方法はあるのだろうけど、 俺は知らない。
160 : 3.7.16
161 : 3.7.16.1
162 : 3.7.16.2
163 : 3.7.17 http://www.sqlite.org/releaselog/3_7_17.html
164 : AccessからODBC接続したんだけど、テーブルのデータを修正できません。なぜでしょうか?
165 : >>164 >>28
166 : 累計計算するのはどうやるの?
167 : 累計計算って? 窓関数使いたいとか? それともsqlite3_total_changesのこと?
168 : >>167 どうも済みません 学習の為に、PupSQLiteで出納帳作ってみたいのですが、残高が出来なくて困ってます
169 : >>168 SQLite関係なさげ SQL質疑応答スレ 13問目 http://toro.2ch.net/test/read.cgi/db/1343899481/
170 : >>169 有難う
171 : トランザクションの end と comitt の違いは何ですか?
172 : >>171 >>1
173 : >>172 有難う解りました
174 : PupSQLiteで、下記がエラーになります エラーメッセージ 【cannnot start a transaction within a transaction】 ↓ ------------------------- BEGIN; UPDATE test SET [Name]="太郎" WHERE [ID]=2; END; -------------------------- 2行目を UPDATEでなく SELECT文にすると正しく実行されます 何が原因でしょうか?
175 : そのエラーメッセージに原因が書いてあるみたいだけど…
176 : もう少し詳しく教えて頂けませんでしょうか? 100万レコードのUPDATEをするのですが、SQLiteはトランザクションで挟まないと遅いと見聞きしたので、試しに1レコードでやってみたらエラーがでました どうすれば目的が叶えられますでしょうか?
177 : >>176 >>174 >エラーメッセージ 【cannnot start a transaction within a transaction】 > 【cannnot start a transaction within a transaction】 >cannnot start a transaction within a transaction c a n n n o t s t a r t a t r a n s a c t i o n w i t h i n a t r a n s a c t i o n
178 : もう少し詳しく教えて頂けませんでしょうか? どうすれば目的が叶えられますでしょうか?
179 : >>176 まずはメッセージの意味がわかるかどうか そこからだ
180 : 意味は解ります 遅くないように明示的にトランザクションを掛けてUPDATEをするにはどうしたら良いでしょうか? 宜しくお願いします
181 : >>180 このUPDATEクエリは 既に別のトランザクションの中で動いているのだから 改めてトランザクションを作る必要はないのでは?
182 : >>181 有難うございます > 既に別のトランザクション これは、SQLiteがオートで行ってるトランザクションでしょうか? それだと遅いと見聞きしていたものです それともPupSQLiteが親切に勝手に行っているものでしょうか? どちらと思われますでしょうか、ご意見をお聞かせくださいませ
183 : >>182 暗黙のトランザクションはBEGINを明示せずに UPDATEなどをした場合に行われるから この件には関係ないだろう 他にどこかでトランザクション開始を指示していて それを終わらせていないとしか考えられないよ
184 : >>182 まず前提として、 1. SQLite(だけじゃないけど、auto commitがあるRDBMS)では明示的にトランザクションを開始せずに 更新系のSQLを発行すると、自動的にその文の前後でbegin、commit相当の処理が動く。 2. そしてSQLiteの場合、サーバを持たないため、トランザクションが完了していると言うことは、 HDD上のsqliteファイルに完全にデータが書き込まれていることを保証しなければいけない。 3. SQLiteがHDDへのデータの書き込みを完全に保証するためには、HDDのプラッタが2回転するのを待つ必要がある。 一般的な7200rpmのHDDは1分に7200回転=1秒に120回転なので、1秒につき60回のトランザクションが限界(※)。 ( 出典: http://www.sqlite.org/faq.html#q19 ) ※実際にはデータの書き込みも行うので、それよりも少ないはず。 つまり、明示的にトランザクションを開始せずにUPDATE文を大量に発行すると、一回UPDATEするごとに HDDへの書き込みを保証する必要が出る=HDD速度に引っ張られる、というのが、>>176 がどこかで見聞きした 「SQLiteはトランザクションで挟まないと遅い」という怪しい話の正体。 # 余談だけど、そんなわけで同じSQLiteでもインメモリDBだと、そういうことにはならない。SSDとかでも大丈夫なんじゃないかな…? その上で。 >>174 のSQL文を見ると、BEGIN文をロック種別の指定なしで発行している。 ドキュメント(>>1 )を見ると、指定無しの規定値はBEGIN DEFERREDだと書いてある。 SELECT文に変えると実行される理由はDEFERREDのドキュメントを参照してもらうとして、 UPDATEした時にエラーになった理由は>>174 のエラーメッセージ通りなので、 考えられる原因としては、その3行の前に手動でbegin文を打っているけど忘れているか、 そのPupSQLiteとかいうツールが変なことをしているか。後者ならツールの作者に聞かないと分からん。
185 : >>183 >>184 > そのPupSQLiteとかいうツールが変なことをしているか。後者ならツールの作者に聞かないと分からん。 説明良く解りました 有難うございます
186 : そういう、よくわからないときは、本家のsqlite3.exeでSQL文を実行してみるのも手よ。
187 : iosやandroidアプリで、ドラッグ&ドロップでリストのレコードを入れ替えたタイミングで、テーブルに更新をかけ並び順を記憶させたいのですが、何かいい方法はないものでしょうか。 単純にリスト順にすべてのレコードに対してUPDATEをかけるのでは、件数が増えた場合コストがかかりすぎてしまいます。
188 : >>187 諦めろ 処理コストが問題となるような大量データの 更新を携帯端末にさせること自体に無理がある
189 : 入れ替えた時はメモリ上で順番を記憶して ビューを閉じたりする時にデータベースを書き換える
190 : >>187 完全な解決にはならないけど、並び順を連番にせず適度に空きを設けるとか。 …昔のBASIC言語思い出すな。
191 : >>187 一画面以上ドラッグするケースを捨てて、順序を数字で持てば アップデート件数の最大値は表示件数になる。
192 : 並び順(と元のテーブルへの外部キー)だけを保持するテーブルを別に作ればよいと思う。 参照するときはjoinしてorder by
193 : >>192 それで何が解決するのかわからない
194 : SQL Server Compact 4.0 と比べてどっちが良い?
195 : 名前からしてCEに組み込めるかと思ったけど、そういうわけでもないみたいだなw CE用にSQLiteのソース組み込んで使ってる・・・ ちょっと使ってみようかな
196 : Winアプリで2つExeがある場合とかは、同時に接続できるのでしょうか? 片方がトランザクション開始したらコミットするまで、 もう片方がトランザクション開始出来ない、といった程度の問題でしょうか?
197 : 自分で試すことも出来ないの?
198 : インスタンス別じゃん
199 : >>196 Journal_modeで挙動変えられるからそれぞれ試してみて使い方にマッチするのを見つけろ
200 : 拡張モジュールで、任意フォルダ内のファイル名、サイズ、タイムスタンプとかをテーブルのように参照出来るもの、ないですかねえ
201 : その説明じゃどんな仕様を想定しているのか分からん。
202 : SELECT path FROM C:\ WHERE size >= 1000000 みたいなことをしたいってことじゃないかと想像
203 : PowerShellにそんな感じのなかったっけ
204 : ディレクトリを走査して一覧表を作成している間にそのディレクトリの内容が 変わっちゃう場合があるし、それを止める手段もちょっと思いつかない。 こういうの、データベースの一機能として提供した場合に、なんか対処が面倒な クレームとか来そう。
205 : >>200 ですが、やりたいのは>>202 の通りです VIRTUAL TABLEを自作してそれらしい物が出来ました。 公式リポジトリに最近外部モジュールのサンプルが沢山追加されていたのでそれベースに改造して。 >>204 は考慮してない…
206 : PowerShellで良いじゃん
207 : sqliteのスレでその回答に何の意味が有るのかと
208 : System.Data.SQLite をVBAから直接(ADOではなく)使えますか?
209 : ホームページによればSystem.Data.SQLite is an ADO.NET adapter for SQLite。 そもそもADOじゃなくてADO.NET。"直接"が何を差すのかも分からず、 質問が理解できなかったので、熟考の上、再投稿をお願いします。
210 : 知らんクセに偉そうに答えるなよw
211 : .netのdllもVBSやVBAから直接参照できるように書いてあるのも結構あるでしょ 暗号化やテキスト操作なんか
212 : やってみたけど参照できないよ
213 : どうやった? もしかして別のものみてるかな?
214 : AccessのABEで参照設定して Dim testDB With System.Data.SQLite set testDB=.createDatabase("SQLitetest.sq3") .createTable testDB , "testTable" end with
215 : 3.8.0
216 : >>214 アベってVBEのつもりか
217 : mysqlのorder by fieldみたく、指定した順番にselectする方法はありませんか? ・テーブル例 mytable.myid ---------- 1 2 3 4 5 ・SQL例 select myid from mytable order by field myid(1,4,5,2,3); ・取得したいデータ 1,4,5,2,3の順番で取得できるように
218 : select myid from mytable order by case myid when 1 then 0 when 4 then 1 when 5 then 2 when 2 then 3 when 3 then 5 end; 長いけど…。偉い人ならもっとスマートにできるかもしれん。
219 : order by caseなんて初めて知りました。 ありがとうございます。
220 : ●のログをひもづけるためにhttp://pastebin.com/pkEWvP2h というスキーマをsqlite3で作ってデータをロードしてみましたが、 思ったようなスピードが出ません。どうすれば速くなりますか? 問い合わせは↓ SELECT DISTINCT s.email FROM res AS r INNER JOIN thread AS t ON r.thread = t.rowid INNER JOIN session AS s ON r.sess = s.rowid WHERE t.board = '板名';
221 : index作れよ
222 : すんませんCentOS5.9で、php-5.1.6からsqlite-3.3.6を使いたく、 yumでphp-pdoをインストールしたのですが、 Call to undefined function sqlite_open() となって使用できません。 phpinfo()ではpdoとpdo_sqliteが追加されているのですが、他に見るところありますでしょうか。
223 : windowsでsqliteデータベース開きたい時ってどんなソフト使ってる? pupsqliteが異常終了多すぎて乗り換えたい
224 : >>222 そもそもsqlite3.soが入ってないとか >>223 多すぎってほどか分からないけど、確かに時々落ちるね なかなか、これぞってソフトがない…
225 : NaviCat
226 : SQLiteSpy使うか、コマンドラインからsqlite3で操作するかだな
227 : 俺はいろいろ試した結果あれ一択だわ あれ、何だったっけか、えーとちょっと待ってて
228 : 早くしろボケ
229 : PostgreSQL 9.3.0
230 : 3.8.0.2来てた〜 ttp://www.sqlite.org/releaselog/3_8_0_2.html
231 : 思いだした。 SQLite Expert http://www.sqliteexpert.com excel exportとか使わなければ無料版でも十分 navicatは高いし昔から好きじゃないんだよなー
232 : 遅せーんだよボケ、もうNaviCat買っちゃったよ
233 : すまんのう、俺にも生活有るもんで
234 : チラ裏だけど sqlite公式のドキュメントって実に良くまとまってるというか、読んでて関心するというか、尊敬さえする。 知りたい情報は探せばちゃんと載ってるし、それで居て機械的な説明に終始してない。読んでて疑問が浮かんだらその答えが次の行に載ってる。 ユーモア的な表現が所々出てくるのも面白い。 暇な時に用も無いのに読んじゃうくらい。 不満はSQL構文図から説明へのリンクが無いことぐらいかな
235 : MIPS の H/PC2000で使えるSQLlite 落ちてませんか
236 :2013/09/23 ソースは落ちてるのでコンパイルしましょう
TOP カテ一覧 スレ一覧 2ch元 削除依頼 ▲
頼むから正規化しろよ 第二正規形 (283)
DBを「でーびー」って言う人 (131)
SQLite Part.10 (236)
OTN掲示板を生暖かく見つめるスレ (385)
SQLite Part.10 (236)
Oracle>>>>>>SQLServer (240)
--log9.info------------------
【フジ火10】幽かな彼女☆9【香取慎吾】 (514)
熱海の捜査官 PART10 (339)
こんなJINとマルモは嫌だ! 延長戦 (471)
【TBS×WOWOW】ダブルフェイス【西島・香川】part5 (162)
【フジ土23】高校入試20回目【長澤まさみ】 (594)
【金23】お天気お姉さん 6【武井咲】 (329)
最後から二番目の恋 十番目 (290)
NHK連続テレビ小説「あまちゃん」ケバブ Part208 (188)
皆さん!シャトレーゼって知っていますか?その16 (442)
【オダギリ貫地谷】家族のうたがフォーゼに完敗ww (735)
くろねこルーシー (585)
木皿泉ワールド (633)
世にも奇妙な物語の最高傑作って?2 (350)
【東海昼ドラ】ぼくの夏休みpart29 (333)
女優に高身長を求める奴って何なの? (353)
【東海昼ドラ】赤い糸の女 21【中島丈博作品】 (470)
--log55.com------------------
〓SoftBank プラチナLTEを報告するスレ9
今日から20GBサービス申し込み開始
MNPライト乞食&節約厨専用スレ10
【10分かけ放題】Y!mobile ワイモバイル vs OCN
買取拒否
ドコモのPHSについて語ろう! Part45
モバイルセレクション 3章
BL/YT 初心者質問用スレ9