5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

SQLite 9

1 :NAME IS NULL:2011/02/27(日) 01:22:40.55 ID:???
サーバの要らない軽量データベース SQLite についてのスレです。

SQLite Home Page
http://www.sqlite.org/

2 :NAME IS NULL:2011/02/27(日) 01:23:27.45 ID:???
過去スレ

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/

3 :NAME IS NULL:2011/02/27(日) 01:23:37.18 ID:???
ツール等

Management Tools
http://www.sqlite.org/cvstrac/wiki?p=ManagementTools

【GUIツール】 TkSQLite
http://reddog.s35.xrea.com/wiki/TkSQLite.html

【ADO.NET 2.0 Provider】 System.Data.SQLite
http://sqlite.phxsoftware.com/

【ODBC】 SQLite ODBC Driver
http://www.ch-werner.de/sqliteodbc/

【JDBC】 SQLiteJDBC
http://www.zentus.com/sqlitejdbc/

【ADO.NET provider】 System.Data.SQLite
http://sqlite.phxsoftware.com/

【GUI管理ソフト】 PupSQLite
http://www5.plala.or.jp/Pup/

【Firefox add-on】 SQLite Manager
http://code.google.com/p/sqlite-manager/
https://addons.mozilla.org/ja/firefox/addon/5817

4 :NAME IS NULL:2011/02/27(日) 01:23:47.26 ID:???
ネタ

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

SQLiteへの大量のINSERT処理が厳しい (CodeZine編集部ブログ):
http://codezine.jp/blog/2007/10/sqliteinsert.php

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

5 :NAME IS NULL:2011/02/27(日) 01:23:55.79 ID:???
和書

SQLite入門 第2版 (西沢直木 著)
http://www.amazon.co.jp/dp/479811944X
和書で SQLite のみにフォーカスした書籍はこれ一択か。
入門用にはとりあえずこの一冊。

PHP+SQLite実践サンプルブック (豊崎直也 著)
http://www.amazon.co.jp/dp/4883374297
(内容不明。補足よろ)

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 ベースなので情報が古いかも。


洋書

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

6 :NAME IS NULL:2011/02/27(日) 03:08:39.69 ID:???
乙です

7 :NAME IS NULL:2011/02/27(日) 09:31:24.35 ID:???
おもちゃとして楽しむのがベスト。
どんどん遊びましょう。

8 :NAME IS NULL:2011/02/27(日) 10:18:12.54 ID:???
>>1

和書は少し増えてるからテンプレに追加したほうがいいかも。

新標準SQLite
http://www.amazon.co.jp/dp/4797354739/

SQLite ポケットリファレンス
http://www.amazon.co.jp/dp/4774143944/

「PHP+SQLite実践サンプルブック」は6年前の本だし抜いてもいい?

他にOreillyのSQLite本が早く翻訳されないかね。
http://www.amazon.co.jp/dp/0596521189/

9 :NAME IS NULL:2011/02/27(日) 13:59:21.30 ID:???
>>8
こんなのあったのか。とりあえず買った。
技術書の英語なんて日本語と大差ないし。

10 :NAME IS NULL:2011/02/27(日) 14:12:46.83 ID:???
SQLiteに解説書なんて必要ないだろ。

11 :NAME IS NULL:2011/02/27(日) 15:44:14.18 ID:???
SQLiteのSQLで改行コードの置換ってできないんですか?


12 :NAME IS NULL:2011/02/27(日) 16:42:52.17 ID:???
>>11
出来るよ。改行を置換する関数を追加するといい。
http://www.sqlite.org/cintro.html
詳細はここを読んでね。

13 :NAME IS NULL:2011/02/27(日) 21:02:00.19 ID:???
また口だけ神様か・・・

14 :NAME IS NULL:2011/02/28(月) 13:43:30.75 ID:3radngHB
>>12
具体的に説明せよ

15 :NAME IS NULL:2011/02/28(月) 15:38:14.66 ID:???
>>9
SQLiteなんかの解説書読んで何を学びたいの?
何か学べてるの?

16 :NAME IS NULL:2011/02/28(月) 18:11:38.98 ID:???
日本語の解説書は、自分では読まず、布教用に使う。

17 :NAME IS NULL:2011/03/01(火) 07:39:57.86 ID:???
せめてストアドがないと布教には使えません(><

18 :NAME IS NULL:2011/03/01(火) 10:06:28.83 ID:???
節穴か?

19 :NAME IS NULL:2011/03/01(火) 10:07:27.99 ID:???
誤爆すまん

20 :NAME IS NULL:2011/03/02(水) 03:07:04.27 ID:???
>>16
自分では読む価値も無いって思ってる物を人に押し付けるなよw

21 :NAME IS NULL:2011/03/02(水) 03:09:29.11 ID:???
ま、日本語ドキュメントが無いからな…とかいう軟弱は多いな

22 :NAME IS NULL:2011/03/02(水) 08:02:21.57 ID:???
Decimalがない上に開発者が「他使えば」って言う環境じゃ不興には使えません(><

23 :NAME IS NULL:2011/03/02(水) 08:16:42.36 ID:???
ま、日本語ドキュメントが無いからな

24 :NAME IS NULL:2011/03/02(水) 08:43:51.15 ID:???
Decimalが必要な用途でSQLite使っちゃ駄目だろうw

25 :NAME IS NULL:2011/03/02(水) 22:44:30.87 ID:???
弟子丸 忍忍でござるよ

26 :NAME IS NULL:2011/03/04(金) 21:50:44.53 ID:???
SQLite.NETを入れてデザイナで外部キー制約を付けても、一向に反映されない
んですが、もしかしてSQLiteに外部キー制約が実装されていない?

27 :NAME IS NULL:2011/03/05(土) 07:10:09.46 ID:???
>>26
3.6.19以降なら
PRAGMA foreign_keys = ON;
で有効になる。

28 :NAME IS NULL:2011/03/05(土) 15:16:41.78 ID:???
>>27
ありがとうハニー

29 :NAME IS NULL:2011/03/09(水) 23:37:41.98 ID:???
SQLiteって同時にDBアクセスしたりした時の対応とかできないから昔のアクセスカウンターみたいに壊れることあるよ
って同僚から言われたんだがそうなの?
いくら軽量だからっていまどきのDBでそんな初歩的なことをしてないものはないと思うんだけど。

30 :NAME IS NULL:2011/03/10(木) 00:01:49.31 ID:???
>>29
>SQLiteって同時にDBアクセスしたりした時の対応とかできないから昔のアクセスカウンターみたいに壊れることあるよ
>って同僚から言われたんだがそうなの?

んなわけない

31 :29:2011/03/10(木) 00:10:53.57 ID:???
だよな
MySQLみたいなのはいいけど、SQLiteは軽量化するために機能を削ってるから複数の人が同時に書き込んだりするとダメになるとあまりにも真剣に言うもんだからよ。
何かと勘違いしてるのか、それとも昔の古いバージョンはそうだったとかだろうか。

32 :NAME IS NULL:2011/03/10(木) 03:13:02.45 ID:???
アクセスカウンターが壊れるってどんな現象なんだろうか。

33 :NAME IS NULL:2011/03/10(木) 05:24:45.87 ID:???
>>29
前スレにロック周りのことがガシガシ書かれているから、読んでみ。

34 :NAME IS NULL:2011/03/10(木) 09:34:41.40 ID:???
>>32
今はないと思うけどカウンターの動きとして
1.ファイル開く
2.中の数字を拾う
3.数字に+1する
4.ファイルを綺麗にする
5.+1した数字を書き込む
って動作になるけど、ファイルのロックとかがない場合に「4」のときに他の人がファイルを開くと
何もないファイルを開いて、それに+1することになるわけ。
そうすっと0+1でアクセス数が1になってしまうってこと。
壊れるってのとはちょっと違うけどロックがないとタイミングによっては意図しないデータになってしまうというオチ。

35 :NAME IS NULL:2011/03/10(木) 09:53:18.23 ID:???
ロックの無いファイルシステムなんてあるの?
読み取りタイミングでカウント漏れなら普通にあるけど

36 :NAME IS NULL:2011/03/10(木) 10:21:41.99 ID:???
>>32
F5 attack とか?

37 :NAME IS NULL:2011/03/10(木) 10:34:51.31 ID:???
>>35
昔のカウンターはflock使ってないのが結構あったんだよ、KENTのとかね。Windows 98でflockが使えなかったのが原因だと思うけど。

38 :NAME IS NULL:2011/03/10(木) 17:27:45.38 ID:???
>>34
それは別の話じゃ?

39 :NAME IS NULL:2011/03/11(金) 02:58:55.15 ID:h7V2p/UX
>>17
ストアドっていうのは、まとまった処理をサーバー側で実行させるので
いちいちクライアントから実行するよりも高パフォーマンスって話なんだが。

DBエンジンが同一プロセスで動作するSQLiteにストアドなんていらんよ。

プリペアドステートメントを必要な数だけ用意しておいて、
まとめて実行すればいいだけ。


40 :NAME IS NULL:2011/03/11(金) 03:03:37.32 ID:???
>>22
適当にBLOBか何かでDecimalの内部データを格納しておいて、
変換関数を定義すればいいだけの話だろ。

検索やインデックスに使いたければ、カスタムコレーションシーケンスを
定義すればいい。


41 :NAME IS NULL:2011/03/11(金) 06:25:48.52 ID:???
>>39
>>40
たちこめる圧倒的馬鹿臭

42 :NAME IS NULL:2011/03/11(金) 07:08:23.35 ID:???
>>41
馬鹿ではなく最近の若者は布教とかお布施とか大好きみたいだぞ

43 :NAME IS NULL:2011/03/13(日) 16:43:06.58 ID:???
今もファイルロック周りはあやしいよね

44 :NAME IS NULL:2011/03/13(日) 20:08:41.34 ID:???
あやしいのはお前の頭だろうw

45 :NAME IS NULL:2011/03/16(水) 14:10:43.75 ID:???
3の初期のころはひどいバグがいっぱいあったが
最近はかなりちゃんとしてる

46 :NAME IS NULL:2011/03/21(月) 19:06:46.50 ID:???
なんかたまにロックしっぱなしになるな

47 :NAME IS NULL:2011/03/21(月) 19:30:26.03 ID:???
どんなときにそうなるのか
検証していただくと
大変感謝されると思います。

48 :NAME IS NULL:2011/03/21(月) 21:43:49.21 ID:???
>>47
頭の弱い>>46にそんな事期待するなよ
可哀想だろう

49 :NAME IS NULL:2011/03/21(月) 23:50:34.54 ID:???
>>48
そうでしたか。
すみませんでした。

50 :NAME IS NULL:2011/03/22(火) 13:33:42.31 ID:???
検証用に insertしてselectしてdeleteする
だけのプログラムを書いて、100万回起動してみた。
シングルスレッド、シングルプロセスなのに、確かに
database is locked が発生するね・・・

51 :NAME IS NULL:2011/03/22(火) 14:52:50.34 ID:???
>>50
頭悪すぎw

52 :NAME IS NULL:2011/03/24(木) 00:25:31.90 ID:???
前のプロセスが完全に終了する前に次のプロセスを起動してるとかじゃないよね


53 :NAME IS NULL:2011/03/24(木) 15:02:04.42 ID:???
そのCソスを出して欲しいね

54 :NAME IS NULL:2011/03/25(金) 00:41:10.03 ID:???
ソースコードと環境を示さない「検証」は大抵あてにならない

55 :NAME IS NULL:2011/03/25(金) 21:46:03.23 ID:6VhxQ0vt
なんでこのスレって、ヒステリックなやつばかりなんだ??

56 :NAME IS NULL:2011/03/25(金) 23:51:08.49 ID:???
ソースとテスト環境がわからんと何も言えんわな

57 :NAME IS NULL:2011/03/26(土) 06:28:47.24 ID:???
>>55
「お手軽に扱える」といううたい文句に釣られたゴミクズの吹きだまりだから。

58 :NAME IS NULL:2011/03/26(土) 10:03:44.26 ID:???
ヒューリスティック

59 :NAME IS NULL:2011/04/13(水) 09:08:48.85 ID:???
ちょっとしたものならCSVで扱ってますが、DBとかを使う場合はみなさんはどういったことを基準に使いますか?
例えば想定ユーザーが1000を超える場合とか、アクセスが1000超える場合とかあれば教えてください。

60 :NAME IS NULL:2011/04/13(水) 09:50:31.33 ID:???
むしろ、よっぽどの理由がない限りCSVなんて使いません。
基本的にすべてDBを使ってます。

61 :NAME IS NULL:2011/04/13(水) 16:26:12.46 ID:???
>>59
検索をするかしないか、で判断します。
検索をしないならCSVファイルのままでいきます。

62 :NAME IS NULL:2011/04/13(水) 16:45:12.78 ID:???
まぁ 速さ云々言わないなら、DBでいいのでわ?

63 :NAME IS NULL:2011/04/13(水) 17:38:56.62 ID:???
「基本的にDBのが遅い」のか? なんか使い方次第なイメージがあるんだが。

64 :NAME IS NULL:2011/04/14(木) 00:22:44.98 ID:???
工数も入れての事です。

ってCSVのハンドルも結構ややこしいか。
でもライブラリ作ってるだろうし。


65 :NAME IS NULL:2011/04/14(木) 06:52:49.01 ID:???
>>59
データ量にかかわらずSQLite使った方が工数的にもパフォーマンス的にも上だから、
何かしらの要件がない限りそもそもCSV(やTSV)を使おうとなど思わない。
アクセス数がどうとかユーザー数がどうとかじゃない。

何かしらの要件、言い換えればCSVのメリットとは、例えば
マスターデータをエンドユーザがメンテする際にTkSQLiteとかの使い方をレクチャーしたくないからExcelで編集させたい場合とか、
自分でもテキストエディタでいじれた方がメンテが楽な場合とか。

>>61
更新するかというのも大きな要素だと思うね。
管理者のみが更新するマスターデータを読み込むだけならCSVでも全然面倒じゃない(CSVとの工数差が僅かしかない)けど、
更新も伴うと排他処理考えなきゃいけなくなるからSQLite使った方が断然楽になる。

例えば2chの板一覧みたいなデータはCSVやTSVでもいいけど、スレの書き込みの内容を保存するDATみたいなデータをCSVにする気は起きない。

66 :NAME IS NULL:2011/04/14(木) 07:15:18.03 ID:???
他に考えられる、CSV等を選ぶシーンとしては、可搬性が重視される場合かな。
どの鯖でもSQLite使えるわけじゃないから。

ちょっと古い話だけどKENTのPerl CGIがレガシーなコードで非常に非効率なのにもかかわらず人気を得た理由の一つに、環境を選ばないということが挙げられるだろう。
「Perlが動く環境ならどこでも使える」シンプルさが受けたんだろう。あれがもしSQLiteを使ってたとしたらそこまでの人気は得られなかったはず。

tDiaryが非効率なテキストベースのデータストアを使い続けてる理由も「Rubyさえ動けば使えます」ということがウリの一つだからだろうね。

そういう意図のないスクラッチなアプリ書くならわざわざCSV選ぶ意味はない。

67 :NAME IS NULL:2011/04/14(木) 11:42:18.17 ID:???
そういう意味では、標準ライブラリにSQLiteが組み込まれているPython最強
しかしSQLiteが組み込まれているのは2.5以降なのに、世の中は2.4以下のサーバが多かった

68 :NAME IS NULL:2011/04/14(木) 11:54:49.66 ID:???
読み込みだけならCSVでもいいけど
書き込みはいやだなぁ

69 :NAME IS NULL:2011/04/15(金) 00:50:30.62 ID:???
CSVより固定長の方がまだマシ

70 :NAME IS NULL:2011/04/15(金) 03:50:28.94 ID:???
csvにする位ならtsvにするな

71 :NAME IS NULL:2011/04/15(金) 07:22:27.04 ID:???
CSVとTSVって比べる意味が無い気がするんだが……せいぜいWindowsで規定されてるかどうかくらい?

72 :NAME IS NULL:2011/04/15(金) 07:53:01.78 ID:???
タブが使えなくて困る場面は相対的に少ないのでタブ禁止TSVにするとエスケープを考えなくてもよくなる
エスケープ必須でちゃんとした仕様が必要ならばRFCのあるCSVのほうがいいかもしれない

73 :NAME IS NULL:2011/04/16(土) 05:00:48.17 ID:???
1セルにタブや改行が含まれることがないならTSVがいいね。処理もCSVより断然軽いし。

CSVってRFCになってたのか。知らなかった。

74 :NAME IS NULL:2011/04/17(日) 15:16:50.82 ID:???
読み書きに普通にSQLが思い浮かぶ人はSQLite
そうでない人はCSVになるんだと思う。

75 :NAME IS NULL:2011/04/17(日) 16:52:38.85 ID:???
後者の人とは一緒に仕事したくないな…

76 :NAME IS NULL:2011/04/17(日) 19:54:50.76 ID:???
SQLが現実的に使える限り、絶対にCSVは使わないでFA

77 :NAME IS NULL:2011/04/17(日) 22:00:06.38 ID:???
>>76
SQLにこだわる理由は?
noSQLでいけるならそっちがいいし
ただのログならCSVでいいよね

78 :NAME IS NULL:2011/04/17(日) 23:05:14.21 ID:???
ログの出力形式にCSVはないわー。
TSVならわかるけどね。
TSVやSQLiteで簡単に済む問題をわざわざ複雑なCSVにしたがる奴ってただCSVしか知らないだけだろ。

79 :NAME IS NULL:2011/04/17(日) 23:19:39.37 ID:???
NoSQL(笑)

80 :NAME IS NULL:2011/04/18(月) 01:19:39.50 ID:???
実際のところ、RDBMSよりKVSが適する用途ならどんどんKVS使えばいいんだけど、
>>59>>77はそういう次元でものを語ってないから論外だよねっていう。

81 :NAME IS NULL:2011/04/18(月) 03:52:44.85 ID:???
>>78
×CSVしか知らない
○CSVをろくに知らない

まともにCSVを扱おうとするとSQLより圧倒的にめんどくさく、最後に互換性問題でブチ切れる

82 :NAME IS NULL:2011/04/18(月) 17:15:53.70 ID:???
好きな物をつかえよ

83 :NAME IS NULL:2011/04/19(火) 05:29:25.92 ID:???
そこでBerkleyDBですよ、となるのか。

84 :NAME IS NULL:2011/04/19(火) 07:45:39.89 ID:???
BDBみたいなKVSを選ぶのはあり
しかしCSVはまずないな、CSVが適するシーンはかなりのレアケース

85 :NAME IS NULL:2011/04/19(火) 22:40:08.64 ID:???
そよね。
データん中にカンマあったらどうすんのとか。

86 :NAME IS NULL:2011/04/20(水) 17:58:39.98 ID:???
まあたまに外からのデータ受け付けるのに対応することは
あるけどな、エクセルしか使えないような人がcsv出力して持ってくるとか。

でもまあそれでもインポートまでだけどな。

87 :NAME IS NULL:2011/04/20(水) 22:55:39.44 ID:???
CSVで今時自作想定な事に驚いた

88 :NAME IS NULL:2011/04/21(木) 10:42:20.78 ID:???
それほどめんどくさいと言いたいのか?

89 :NAME IS NULL:2011/04/21(木) 15:04:20.54 ID:???
>>85
RFCに則ってつくるだけでいいじゃん
ていうか、テキストなKVSってあんの?

90 :NAME IS NULL:2011/04/21(木) 18:10:12.47 ID:???
CSV扱うのに枯れたライブラリとかあるんだっけ?

91 :NAME IS NULL:2011/04/21(木) 19:07:40.75 ID:???
>>87
何かしらのライブラリを選べる環境で敢えてCSVを選ぶメリットをkwsk

92 :NAME IS NULL:2011/04/21(木) 19:48:28.72 ID:???
>>91
顧客の要求仕様どおりに作ることができる

93 :NAME IS NULL:2011/04/21(木) 19:56:15.36 ID:???
>>92
それは仕様と呼ぶものであってメリットとは呼ばないわな。
複数の選択肢がある中で敢えてCSVを選ぶメリットをkwsk

94 :NAME IS NULL:2011/04/21(木) 19:59:24.73 ID:???
データ永続性

各種データベース形式 20年
CSV形式 1000年
紙 10000年

95 :NAME IS NULL:2011/04/21(木) 20:14:46.66 ID:???
テキストで見れる ってのがでかいかな

DBへインポートもしやすいし
エクスポートも結局CSVだったりするし

TSVは人に説明するのが面倒

96 :NAME IS NULL:2011/04/21(木) 20:51:10.94 ID:???
>>91
>>87がCSVを選ぶ方がいいと考えているレスだと思った理由kwsk

97 :NAME IS NULL:2011/04/21(木) 21:56:12.74 ID:???
いや、ないならないと言ってくれればそれでいいんだけど。

98 :NAME IS NULL:2011/04/21(木) 22:31:02.80 ID:???
紙と墨は2000年の検証に耐えた
との事。

99 :NAME IS NULL:2011/04/22(金) 02:36:17.43 ID:???
まあ話を元に戻すと、>>59のような文脈でのデータ保存形式でCSVを選ぶのはただのアホだよねってことでFA

100 :NAME IS NULL:2011/04/24(日) 04:58:56.89 ID:???
>>92
あほすぎるファクターを持ち込まないでくれ

101 :NAME IS NULL:2011/04/24(日) 12:35:06.04 ID:???
>>100
でもこれが全てでゴールだろ

102 :NAME IS NULL:2011/04/24(日) 15:42:28.54 ID:???
ただのコーディングマシンにとってはゴールかもな

103 :NAME IS NULL:2011/04/24(日) 21:27:33.45 ID:???
>>102
そういうのはマ板でやれよ

104 :NAME IS NULL:2011/04/25(月) 00:09:22.10 ID:bEXHKNc/
複数ヒットするはずなんですが以下のコマンドを打つと最初の1個だけ結果が返ってきます。
SELECT * FROM test WHERE hogehoge = examplehoge
ヒットしたのでそれ以降は検索してないということでしょうか?
DB内のhogehogeカラムにはexamplehogeが10箇所ほどあるので10個ほど結果が返ってくるのを期待したのですが。
環境はSQL3でPHP5.3とPDOを使ってやってます。
念のため結果をvar_dumpしてみましたが1個しか入ってませんでした。

105 :NAME IS NULL:2011/04/25(月) 00:13:44.62 ID:???
SELECT COUNT(*) FROM ...

106 :NAME IS NULL:2011/04/25(月) 01:25:01.42 ID:???
PDOのとこで一個だけ返すメソッド使ってるとか

107 :NAME IS NULL:2011/04/25(月) 04:07:17.71 ID:???
>>106に1票
俺も SQL の問題ではないと見る

108 :104:2011/04/25(月) 07:57:18.87 ID:bEXHKNc/
実際のリクエストは
$sql = "SELECT * FROM test WHERE hogehoge = examplehoge";
$conn = new PDO("sqlite:/test.sql3");
$stmt = $conn->prepare($sql);
$stmt->execute();
$row = $stmt->fetch();
となってます。
複数の環境に入れる可能性があったのでPDOを初めて使っています。

109 :NAME IS NULL:2011/04/25(月) 09:22:06.47 ID:???
試してないけど、こんな感じにすればできるはず

while ($row = $conn->fetch()) {
  $result[] = $row;
}

110 :NAME IS NULL:2011/04/25(月) 12:49:03.28 ID:???
>>108
ループさせてなきゃ最初の1行しか取れないのは当然だろう。
SQLite 関係ない。

111 :NAME IS NULL:2011/04/25(月) 14:05:19.28 ID:???
>>102
設計と実装をごっちゃにすんなよ屑が

112 :NAME IS NULL:2011/04/25(月) 14:32:18.34 ID:???
>>111がごっちゃにしてるようにしか見えない件について

113 :NAME IS NULL:2011/04/26(火) 20:58:29.83 ID:???
>>111はたぶん安価ミスで、ほんとは>>92って書こうとしたんだろ。

114 :NAME IS NULL:2011/04/27(水) 18:48:20.19 ID:???
>>111が酷いな

115 :NAME IS NULL:2011/04/30(土) 20:14:11.60 ID:???
既存のテーブルのカラムの順番を入れ替えるのはどうやるんですか?

116 :NAME IS NULL:2011/04/30(土) 20:34:30.73 ID:???
ALTER TABLE じゃねえの?
つうかスレ違い

117 :NAME IS NULL:2011/05/01(日) 08:55:06.88 ID:???
>>115
なぜ入れ替える必要があるの?

118 :NAME IS NULL:2011/05/01(日) 14:09:43.67 ID:???
そんなもん色々だろ
入れ替えなければいけないケースはあり得ないとでも?

119 :NAME IS NULL:2011/05/01(日) 14:54:59.71 ID:???
だって意味ないじゃない

120 :NAME IS NULL:2011/05/01(日) 15:03:53.33 ID:???
>>119
無計画にカラム追加したテーブルは開発がし辛いからだろ

121 :NAME IS NULL:2011/05/01(日) 15:06:52.92 ID:???
なんで?
設計書が見づらくなる程度で、プログラム上はなんも変わらないだろ

122 :NAME IS NULL:2011/05/01(日) 15:31:37.94 ID:???
>>121
自動生成物が見づらくなるっつってんの
もう黙って

123 :NAME IS NULL:2011/05/01(日) 17:18:23.35 ID:???
>>121
「見づらい」だけで十分変更理由になると思うが?
つうかスレ違いっつってんだろ

124 :NAME IS NULL:2011/05/02(月) 11:38:31.69 ID:???
見づらいくらいなら全部作りなおすだろう。

125 :NAME IS NULL:2011/05/02(月) 16:35:00.56 ID:???
>自動生成物が見づらくなる
ワロスwww

126 :NAME IS NULL:2011/05/02(月) 18:46:30.59 ID:???
ただ ALTER TABLE するだけでお手軽にメンテナンスしやすくなるものをなんでそんなに必死に変更させまいとするのか意味がわからない

127 :NAME IS NULL:2011/05/02(月) 18:49:11.34 ID:???
RDBMSのスレで初心者がよくする質問の一つだからだよw

128 :NAME IS NULL:2011/05/02(月) 19:02:45.63 ID:???
何がそんなに面白いのか分らない

129 :NAME IS NULL:2011/05/02(月) 21:01:56.94 ID:???
バックアップ取って再createする発想もなかったか

130 :NAME IS NULL:2011/05/02(月) 22:41:19.38 ID:???
ADO.NETだと一回作ると気楽に変更できないんだわな

131 :NAME IS NULL:2011/05/17(火) 11:46:00.69 ID:???
ネットワークフォルダにdbファイルおいて、小規模(数人〜十数人)で使うようなの考えているんだけど、
そんなに高頻度で書き換えなければ、トランザクションで書き換えとけば無問題な感じですか?

基本的なことわかってないので、
そういうロック周りのこと解説してあるところありませんかね?

Access使えって話だけど、2007使えんし、VBAだとイロイロキツいのだす。

132 :NAME IS NULL:2011/05/17(火) 13:42:45.26 ID:???
>>131
問題大有りに決まってんだろ馬鹿が

133 :NAME IS NULL:2011/05/17(火) 13:51:53.61 ID:???
>>131
なんでこういうバカってSQLiteでやろうとすんだろ?

134 :NAME IS NULL:2011/05/17(火) 14:27:37.50 ID:???
>>131
まったく問題ない

>>131,132 のような低能が多いから気をつけろよ

135 :NAME IS NULL:2011/05/17(火) 15:00:05.26 ID:???
134はたぶん131と同一人物

136 :NAME IS NULL:2011/05/17(火) 15:21:35.13 ID:???
>>133
バカに何でだめか、バカでもわかるよう教えてやれw

137 :NAME IS NULL:2011/05/17(火) 15:35:20.94 ID:???
SQLiteのドキュメント読めよ
そういう問いにたいしてちゃんと説明しているぜ

結論から言えば更新頻度が少ないならよっぽど大規模サイトでも無い限り問題ないがな

138 :NAME IS NULL:2011/05/17(火) 15:44:20.06 ID:???
>>137
NFSならな。>>131はどう考えてもWinだぞ。SMBでdbファイル共有なんて
考えたくもないわ。

139 :NAME IS NULL:2011/05/17(火) 17:40:21.40 ID:???
>>138
おんなじように、ネットワークフォルダでAccess使うのと、リスク同じくらいじゃないの?
そりゃ避けた方がより良いのは当然だけど。

140 :NAME IS NULL:2011/05/17(火) 18:09:10.58 ID:???
>>138
大丈夫だよ
sambaもファイルロックはサポートしてます

141 :NAME IS NULL:2011/05/17(火) 19:26:41.05 ID:???
素直にPostgreSQLなりMySQLなりSQL Serverなり使えよ…

142 :NAME IS NULL:2011/05/17(火) 21:44:01.46 ID:???
たかがWebサービスがそんなに難しいことなのだろうかと思ってしまうんだが・・・

143 :NAME IS NULL:2011/05/17(火) 23:27:31.38 ID:???
俺もたまにあるが、入れたくても入れられない事情でもあるんじゃないの?
自分で好きなようにサーバーや、クライアントに入れるソフトを設定できない事もある。
融通が全然きかないと。

144 :NAME IS NULL:2011/05/17(火) 23:59:57.59 ID:???
>>137
更新頻度が少ないなんて理由にもならん理由で問題ないとか言える糞脳みそを持ってると人生楽そうで羨ましい

145 :NAME IS NULL:2011/05/18(水) 00:12:56.64 ID:???
>>144
馬鹿には理解できないからなw
恥さらすなよww


146 :131:2011/05/18(水) 00:50:23.23 ID:???
thxです!
どうせ 数回/分 の書き換えなので、ファイルバックアップしながら使ってみることにします。

サーバにRDBMS入れて動かす権限も能力もないのよ… バカでスマヌ

そーいや、昔は毎日のようにファイル壊れてたAccessも、最近はてんで壊れなくなったなァ…
いや、Accessが良くなった訳じゃないけど。
スレチ杉スマソ

147 :NAME IS NULL:2011/05/18(水) 04:48:48.32 ID:???
ならACCESSでやれよ無能

148 :NAME IS NULL:2011/05/18(水) 11:06:01.38 ID:???
>>145
消えろ

149 :NAME IS NULL:2011/05/19(木) 00:46:57.43 ID:???
>>147
要はAccessが使いにくいから、SQLiteで代用できんかって質問だろw

150 :NAME IS NULL:2011/05/19(木) 14:34:05.77 ID:???
>>149
そう思ってたら輪をかけてSQLiteがひどいことが判明した
ってとこですよね。

151 :NAME IS NULL:2011/05/19(木) 15:34:30.97 ID:???
なにをいってるだ
馬鹿じゃないのか?

152 :NAME IS NULL:2011/05/19(木) 15:57:10.42 ID:???
>>151
馬鹿はあなたですよ。ふふっ

153 :NAME IS NULL:2011/05/19(木) 16:30:09.82 ID:???
>>152
馬鹿はあなたですよ。ふふっ

154 :NAME IS NULL:2011/05/22(日) 19:20:36.24 ID:???
          / : : : : : : : : : /: : : : : :` : : : : : ヽ:\
       // : : : : : : : : : /\ : : \: : : : : : : : v:ハ、  な…何なのこの雰囲気…
        : : : : : : : /: : /  丶: : : : : : : : : : : ハ|V{ハ このままじゃあ皆…
       ii : : : : : : : : : /      }: : : : : : : : : : i:i:|ivi:リ
       |i : : : i : : i : :, ー=-‐':|`ヽ:i: : : : : : じじハ
       |i : : : | : :ハ:i|      j|  jハ : : : : |: |i i|ハ, . ヘ、
        ハ : : :iiハi:{ 八     '"芹示 |: : : : ハ: じj/: : : : : ヽ
        V :ハ从,茫ミ、     v:ツ | : : ,/,ハ: V: : : : : : : :/}
          i爪: :\ vリ       ....::::::: ノ : :/r' У: : : : : ,ィ彡'  ,. ヘ、
         ` ミ;ゝ.:: ,        `ー彡|_/: : : : : :/ _/ : : : : :ヽ
            丶    、..:::)   /  |Y: : : : : :/_,ィ勿' : : : : : ,ィ刋
           ,. :'" > . _ . r: ´   / 丶: : : : i三彡': : : : : :ムィ'"
             / : : : : : :_:_:_:_,≪r‐一 ´   / ̄ ̄ ̄`'く: : : : : :/
             ヽ : r<´ ̄ ̄i i| ,ィー…<   /       \: : /   /


155 :NAME IS NULL:2011/05/22(日) 22:11:58.40 ID:???
円環さんは理に還ってくれ

156 :NAME IS NULL:2011/05/24(火) 16:06:03.32 ID:???
SQLiteファイルを分割保存して、一つのSQLとして処理する方法はないでしょうか?

157 :NAME IS NULL:2011/05/24(火) 18:49:17.52 ID:???
>>156
アタッチできますよ。

158 :NAME IS NULL:2011/06/05(日) 07:56:33.34 ID:zgB9UHdm
ほしゅ

159 : 忍法帖【Lv=35,xxxPT】 :2011/06/05(日) 11:41:52.36 ID:???
a

160 :NAME IS NULL:2011/06/07(火) 15:30:44.24 ID:js37uI9c
環境
MacOSX
sqlite3
apache2
perlでCGI
DBD::sqlite
というDBにコネクトしてる状態で
my $insert = "insert into space(hoge) values ('hoge');";
$dbh->do($insert);
などinsert文を実行しようとしたらエラーがでます、select文などは問題ないのですがいったい何が原因なんでしょうか?


161 :NAME IS NULL:2011/06/07(火) 15:56:20.23 ID:???
アクセス権とか?

162 :NAME IS NULL:2011/06/07(火) 21:46:42.26 ID:???
>>160
エラーが出ますって
エラーメッセージって出ないの?

163 :NAME IS NULL:2011/06/07(火) 23:41:45.42 ID:???
>>162
エラーメッセージは出てないんじゃないかな、たぶん
エラーメッセージの出し方から教えてあげるといいよ

164 :NAME IS NULL:2011/06/08(水) 00:21:54.87 ID:???
$dbh->do($insert) or die $dbh->errstr;
でerrorlogをチェックするとか、
$dbh->trace(1, 'trace.log');
でログを吐くとか。

165 :NAME IS NULL:2011/06/08(水) 00:49:40.12 ID:???
環境
sqlite3
Android2.2

アンドロイドで作ったアプリでCSV1からDB1を作成しました。
その後、CSV1の更新ファイルであるCSV2から同じ手順でDB2を作成しました。

CSV2はCSV1のデータをすべて含んでおり、かつ、4行分登録されるデータが多いです。
ところが、作成したDB1とDB2を比べると、データ数の少ないDB1の方がDB2より9k程大きいのです。

データが欠けていないかと、DBファイルをダンプして比較しましたが、
データ自体に欠けはなく、DB2はきちんとCSVの差分だけDB1より多くデータを持っていました。

こういったことが起こる原因について、ご教示願えないでしょうか?

166 :NAME IS NULL:2011/06/08(水) 03:03:38.83 ID:???
>>165
データ量にあわせてDBも大きくなるけど、小さくはならない
アプリがどうやってるかしらんけど、なんか本来のデータとは
別に裏でデータを追加したり削除してるから大きくなった。

167 :NAME IS NULL:2011/06/08(水) 12:48:00.72 ID:yzo9cLWq
エラーメッセージは
[error] [client ::1] DBD::SQLite::st execute failed: unable to open database file(14) at dbdimp.c line 403 at ***.cgi
です
どういう意味でしょうか?

168 :NAME IS NULL:2011/06/08(水) 12:57:15.42 ID:???
「***.cgiの403行目の処理の時点で指定されてるデータベースファイルが開けねーよボケ」

見たまんまなわけだが。

169 :NAME IS NULL:2011/06/08(水) 13:03:26.83 ID:yzo9cLWq
すいません line 14 が抜けてました
[error] [client ::1] DBD::SQLite::st execute failed: unable to open database file(14) at dbdimp.c line 403 at ***.cgi line 14


170 :NAME IS NULL:2011/06/08(水) 13:05:33.32 ID:yzo9cLWq
そして14行目です
my $insert = "insert into space(hoge) values ('hoge');";
$dbh->do($insert);

171 :NAME IS NULL:2011/06/08(水) 13:12:20.28 ID:???
自分でデバッグする気はないようだなw

172 :NAME IS NULL:2011/06/08(水) 13:12:35.06 ID:???
いや、そこだけ見せられてもw
DBIで宣言したsqliteのDBファイルが存在しないんじゃないの?

173 :NAME IS NULL:2011/06/08(水) 20:05:30.16 ID:???
Google翻訳:
失敗し、実行:*** cgiの14行でdbdimp.c403行でデータベースファイル(14)を開くことができません

174 :NAME IS NULL:2011/06/14(火) 00:56:06.64 ID:???
ちょっと教えてください
phpで@sqlite_openで作ったファイルをPupSQLiteで開こうとすると
暗号化されたファイルです。とか出て開くことができませんが、sqlitecc3jだと普通に開けます。
で、PupSQLiteでファイルを作成して、@sqlite_openで読もうとするとエラーになってしまいます。

これはPupSQLiteがあんまり良くなくて、読み込みや保存がうまくできないということでしょうか?

175 :NAME IS NULL:2011/06/14(火) 02:02:55.30 ID:???
とりあえずそのPupSQLiteとやらの作者に聞いてみれば?

176 :NAME IS NULL:2011/06/14(火) 04:17:56.13 ID:???
>>174
PHPは詳しくないんだが、確かPHPでのSQLite接続方法は2つあるはず
片方がSQLite2形式でもう片方がSQLite3形式
でPHP製のSQLiteManagerのソースを検索してみたらsqlite_open関数はSQLite2用らしい

SQLiteCC3JはSQLite2とSQLite3に対応していて
PupSQLiteはSQLite3のみに対応しているからそのせいだね

177 :NAME IS NULL:2011/06/15(水) 22:20:13.52 ID:???
調べてみた所、その通りでした。
しかし、phpの関数を変えてもロリポップはsql3が使えなかったんでsql3使えるレンタルサーバー探してみます。
PupSQLiteは使い勝手がいいんで、こっちに問題がなくて良かったです。
ありがとうございます。

178 :NAME IS NULL:2011/06/19(日) 14:29:00.42 ID:???
SQLiteを複数プロセスから扱う場合、
トランザクションの前後でflockすればいいのか?

179 :NAME IS NULL:2011/06/19(日) 16:07:54.28 ID:???
>>178
そんな必要はない
自動的にロックされる

180 :NAME IS NULL:2011/06/19(日) 20:53:01.04 ID:8vVW7TIm
自作アプリケーションで使用する独自ファイル内の一部分にsqliteのデータベースを
内包させることを検討しているのですが、何か方法はありませんでしょうか?

ファイルの該当部分をメモリ上に読み込み、それをsqliteのAPIから利用できる形に
することが出来れば良いと思うのですが、具体的な手段が思いつかず…。
(イメージとしては、インメモリDBとして展開/保存、メモリ上のsqliteデータをopen/close、等々...)

なお、ファイルフォーマットは、以下のようなものを考えています。
 [独自ファイルヘッダ][独自ファイルデータA][SQLiteデータ][独自ファイルデータB][独自ファイルフッダ]

言語はC、OSはLinuxを考えていますが、将来的にWindowsも視野に入れるかもしれません。

181 :NAME IS NULL:2011/06/19(日) 22:31:00.94 ID:???
RAMディスク作ってコピんのが一番楽だろ

182 :NAME IS NULL:2011/06/20(月) 08:20:15.17 ID:???
>>180
起動時にSqliteをiin-memoryとして接続し、shema作ってやればいいんじゃないの?


183 :180:2011/06/20(月) 19:25:23.30 ID:fmQ7dwYy
>>181
ありがとうございます。
RAMディスク上に展開したものを普通にsqlite3_open、ということでしょうか。
対象がRAMディスクが使える環境ばかりでは無いので、別の方法を検討します…。

>>182
ありがとうございます。
アプリケーションでschemaを決め打ちにしておいてインメモリDBを作成し、
ファイルから読み込んだデータをインメモリDBへ流し込む、というイメージでよろしいでしょうか?
ファイルにあるデータをインメモリDBへ展開する手段が想像できないので、
お手数ですが、もう少し詳しく説明していただけると助かります。

184 :NAME IS NULL:2011/06/20(月) 19:38:11.53 ID:???
そんなんファイルの形式次第だからkwsk言われてもな

185 :180:2011/06/20(月) 21:03:52.34 ID:fmQ7dwYy
言葉足らずですみません。
私の理解力不足で、>>182氏の言っている内容から、
>起動時にSqliteをiin-memoryとして接続し、shema作って
何を「やれば」良いのかが読みとれなかったため、質問させていただきました。

なお、SQLiteデータ格納部分のファイル形式は、何か詳細なイメージがあるわけではなく、
アプリケーションから読み込み、最終的にsqliteのAPIから使用できれば何でも良いと考えています。

186 :NAME IS NULL:2011/06/20(月) 21:48:44.68 ID:???
わざわざ内包する意味は?
どうしても内包したいんだったら、起動時に/tmpにでもコピっとけよ

187 :NAME IS NULL:2011/06/20(月) 21:52:58.16 ID:???
>>185
Sqlite dbをキャッシュとして使用する発想です。
ファイルの内容をin-memory dbに取り込む。
データの更新は、SqliteのAPIは基本SQLの実行以上のことはできなかったと思う(もしかしたら、ユーザー定義関数を使用すればできるかもしれない)ので、このin-memory dbに対してSQLを発行(insert, update, delete)して行う。

最終的にファイルに保存する際、in-memory dbの内容をselect文で抽出し書き込む。

in-memory dbの作成(接続)は、openする時にファイルパスの代わりにmemoryって文字列を渡せばよかったはず(うろ覚えなのでドキュメントで確かめてね)

188 :187:2011/06/20(月) 21:57:32.48 ID:???
ちなみに、ここまでするメリットがあるかどうか分かりません。

なせわざわさsqliteに取り込むのか?そこを説明してもらえれば、別の解決策を提示できるかもしれません。


189 :187:2011/06/20(月) 22:01:52.68 ID:???
例えば、初めからSqliteのdbファイルに保存しておき、元のファイルへは、exportするよう作りをかえるとか....

190 :NAME IS NULL:2011/06/21(火) 05:28:32.98 ID:???
今までDB未使用で自分でファイルに書き出してた人でしょ?
まぁ、一回騙されたと思ってサンプルどおりに実装してみなよ

191 :180:2011/06/21(火) 19:19:51.52 ID:???
>>186-189
皆様ありがとうございます。
ファイル内に取り込みたい最大の理由はファイルの互換性です。

過去に作成したアプリケーションにおいて、以下のようなファイルフォーマットを使用しているのですが、
 [独自ファイルヘッダ][独自ファイルデータA][独自ファイルデータB][独自ファイルフッダ]

アプリケーションの新バージョンを作るにあたって、内部でSQLiteの使用を検討しており、
データ保存の際にはSQLiteのDBも含めて書き出したいため、以下のようなフォーマットを思いついた次第です。
 [独自ファイルヘッダ][独自ファイルデータA][SQLiteデータ][独自ファイルデータB][独自ファイルフッダ]

※過去バージョンの仕様上、新バージョンで書き出したファイルを開く場合は、SQLiteのDB部分を無視し、
 その他のデータ部分のみ参照/編集することが可能、保存の際はSQLiteのDB部(というより未定義部分)はそのまま書き出す。

別ファイル展開も選択肢の一つとして考えていないわけでは無いのですが、そこにデータがあるのに同じ物を展開して
再オープン、というのはどうもスマートではない気がするので、直接読み込む方法を模索している、といった状況です。

>>190
過去スレにそういう人がいたとしたら(いたっけ…?)人違いです。すいません。
サンプルとは…?

192 :NAME IS NULL:2011/06/21(火) 22:28:50.32 ID:fvG5wZhx
>>191
UZEE


193 :NAME IS NULL:2011/06/21(火) 23:57:48.48 ID:???
>>191
センス無いね
そもそも[SQLiteデータ]って何よ?
それに過去バージョンでSQLiteデータとやらを読み飛ばして作業したら、整合が取れないじゃないか

194 :NAME IS NULL:2011/06/22(水) 00:25:23.69 ID:???
ここでsqliteネタをウゼーウゼー言ってるとまたaccess厨が沸くぞw

>>191読んでやりたい事は分かったが俺には思いつかねえw
本体に手を入れてまんまダンプする関数を増やす、とか...   orz

195 :NAME IS NULL:2011/06/22(水) 00:57:56.29 ID:???
>>193
2chでセンスを求めちゃイカンw
>アプリケーションから読み込み、最終的にsqliteのAPIから使用できれば何でも良い
ってあるから、そういうデータなんじゃね?w
例えばsqliteファイルをtar玉ごとメモリに読み込んでdbハンドラに繋げるようなイメージをエスパーしてるが正解かは知らんw

>>194補足
↑のイメージならin-memory dbをそのままダンプしてやってファイルに収める仕掛けを実装すれば
いけるんじゃネーノ?とか思ってるけどsqlite.cを読んだことがないヘタレだから出来るのかはワカランorz

196 :NAME IS NULL:2011/06/22(水) 01:40:33.29 ID:???
>>194-195
昔DRHが近いネタをsqlite-usersに書いてたような気がする。
記憶違いだったらすまん。

197 :NAME IS NULL:2011/06/22(水) 17:48:46.52 ID:???
>>191
DBサイズが固定なら出来る
サイズが変更されるなら当然無理

198 :NAME IS NULL:2011/06/22(水) 17:51:13.07 ID:???
プログラムの改造無しでやる方法を思いついた
Linux限定だけど

199 :NAME IS NULL:2011/06/22(水) 19:58:32.98 ID:???
開発環境 VS2008で
アタッチってできますか?
アタッチはできたみたい(リターン:0)
ですが いざSELECTすると no such table
になってしまいます。。。。

cmd = New SQLiteCommand("ATTACH '" & strdbname & "' AS '" & strname & "'", Me.conn)
cmd.CommandType = CommandType.Text

'SQL実行
intResult = cmd.ExecuteNonQuery()
cmd = New SQLiteCommand
cmd = Me.conn.CreateCommand
cmd.CommandText = "SELECT tablename FROM PDA.tblInfo"
'SQL実行結果をデータセットに格納
Dim adp As SQLiteDataAdapter
adp = New SQLiteDataAdapter(cmd)
 エラー→  adp.Fill(ds)

200 :NAME IS NULL:2011/06/22(水) 22:21:20.96 ID:???
osのファイルキャッシュに載せるんだろ?

201 :NAME IS NULL:2011/06/22(水) 22:22:07.45 ID:???
しまた
>>198


202 :NAME IS NULL:2011/06/22(水) 22:27:07.50 ID:???
ん、何かちんぷんかんぷんなこと言ってるな俺

203 :NAME IS NULL:2011/06/22(水) 22:28:17.75 ID:???
>>197
ヘッダフッタがあるから問題なくね?
普通にできると思うけど全体で見たら遅すぎて話にならない

204 :NAME IS NULL:2011/06/22(水) 22:34:44.79 ID:???
その部分だけinmemoryDBに載せられるんなら速度は気にするほどでもないような?

205 :NAME IS NULL:2011/06/23(木) 00:41:08.76 ID:???
どうしても独自フォーマットのファイルを使いたいなら
SQLをdumpして保存したらいいよ。圧縮くらいはしたほうがいいかもな
使うときは、:memoryにimportね

206 :NAME IS NULL:2011/06/23(木) 19:40:16.74 ID:???
>>205
毎回DB作り直すのかよ

207 :NAME IS NULL:2011/06/25(土) 03:25:45.33 ID:???
>>191
普通に独自ファイルデータとやらをSQLiteDBに突っ込めよ糞ウンコちゃん

208 :NAME IS NULL:2011/06/25(土) 12:29:25.66 ID:???
>>206
インメモリDBなら当然だろ。

209 :NAME IS NULL:2011/06/25(土) 12:30:11.54 ID:???
>>207
頭悪そうw

210 :NAME IS NULL:2011/06/25(土) 21:27:06.64 ID:???
独自データのファイルサイズにもよるから一概に言えないど、
ひとつの方法ではあると思うぞ。

頭悪そうと思った理由書いてくれないかな。

211 :NAME IS NULL:2011/06/25(土) 22:50:59.86 ID:???
>>210
俺は209ではないが、
・スレをちゃんと読んでいる場合
→日本語の理解能力が足りない。頭悪そう。
・スレをちゃんと読んでいない
→常識のない人間。頭悪そう。
・いずれの場合でも
→言葉遣いが明らかに頭悪そう。

っていうことだと思うよ。


212 :NAME IS NULL:2011/06/25(土) 23:08:30.19 ID:???
>>211
要するに「頭悪そう」って書きたかっただけなのか。

それこそ頭悪そうだなw

213 :NAME IS NULL:2011/06/25(土) 23:43:17.66 ID:???
3.7.7.0 ビルドでけた

214 :180:2011/06/26(日) 00:22:51.21 ID:???
>>194-196
近いネタですかー。mail-archiveあたりで探してみようと思います。
ありがとうございます。

>>205-206
DBのサイズが大きい場合の速度は確かに気になりそうですが、
shell.cのdump_*関数を流用するだけで済みそうなので実装は簡単そうですね。
ありがとうございます。

>>207
それが簡単なのは認識しているのですが、前述の通り互換性の問題から
(前バージョンで開けないファイルになる)選択肢には入れていないのです…。
ありがとうございます。


センスと初期設計がまずいのは自覚しております…。
ヒントを沢山いただいたので、この先は自力で頑張ってみます。
皆様色々とありがとうございました。

215 :NAME IS NULL:2011/06/26(日) 00:55:38.27 ID:???
ぶっちゃけアプリ側のデータ提供部分で吸収してしまえばいいだけだと思うんだが・・・
なぜデータまでまとめようとするのか
旧ver→独自ファイルのみ、新ver→独自ファイル+DB
それだけの話じゃねーの?

216 :NAME IS NULL:2011/06/26(日) 01:00:51.50 ID:???
データファイルを単一にしたいと言うことなんだろうとエスパーしてみる。

217 :NAME IS NULL:2011/06/26(日) 01:29:39.01 ID:???
>>214
意味不明な前方互換にこだわるな

ほんの少し調べりゃdumpが真っ先に見つかるだろボケ

その汚物の様なセンスを人前にさらすな

218 :NAME IS NULL:2011/06/26(日) 01:48:18.70 ID:???
まあ案件によっては前方互換が必須とか結構あるけどね。
そういう話なのかは知らないけどw

219 :NAME IS NULL:2011/06/26(日) 02:17:55.21 ID:???
>>216
言いたい事はわかるが・・・それはどうしても外せない要件ではないだろうし
初期設計どうこう言えないクソ設計としか言いようがない

220 :NAME IS NULL:2011/06/26(日) 03:29:30.63 ID:???
>>219
顧客がアホなんだろ。たぶん。

221 :NAME IS NULL:2011/06/26(日) 05:24:04.50 ID:???
> センスと初期設計がまずいのは自覚しております…。
と言ってるんだから別に顧客からの要求じゃなくて自己満足によるものだろ

222 :NAME IS NULL:2011/06/26(日) 08:36:18.68 ID:???
顧客が絡んでるかどうかはわからんし、前方互換がどこまで必須かもわからない。

でも、他人がとやかく言う話じゃないと思う。

223 :NAME IS NULL:2011/06/26(日) 13:21:19.87 ID:???
変態行為をやろうとしてる奴に動機を聞いてるだけで、とやかく言ってるわけじゃないんだが

224 :NAME IS NULL:2011/06/26(日) 19:00:04.17 ID:???
>>223
動機を聞く ってのがまず余計なお世話なんだよな
「お前のためだから」 って態度がむかつくわ

225 : 忍法帖【Lv=14,xxxPT】 :2011/06/26(日) 20:28:23.44 ID:???
YouTubeやニコ動などのヘビーなサイトでもSQLiteって平気ですか?

226 :NAME IS NULL:2011/06/26(日) 20:31:20.11 ID:???
1ファイル1テーブル
1ファイル1データベース

運用方法としては後者が正しいと思いますが、
やたらdbファイルができるシステムを組んでる人がいて、
中身みてみたら1ファイル1テーブルになっていました。
なんか1ファイル1テーブルにする理由とかあるんでしょうか?

227 :NAME IS NULL:2011/06/26(日) 21:08:14.58 ID:???
>>226
>やたらdbファイルができるシステムを組んでる人がいて、
>中身みてみたら1ファイル1テーブルになっていました。
>なんか1ファイル1テーブルにする理由とかあるんでしょうか?

その人に聞いてみたらいいんじゃね。

228 :NAME IS NULL:2011/06/26(日) 23:03:39.16 ID:???
>>225
あまり平気ではない。
DBが壊れてたりとかは無いけど、パフォーマンスは悪い。

229 :NAME IS NULL:2011/06/26(日) 23:49:43.55 ID:???
>>228
>あまり平気ではない。
>DBが壊れてたりとかは無いけど、パフォーマンスは悪い。

ん?「YouTubeやニコ動などのヘビーなサイト」を SQLite
で運用したことあるってことか?

マジなら漢だと思う。

230 :NAME IS NULL:2011/06/27(月) 00:20:05.19 ID:???
>>226
あれ?SQLiteってファイル単位で排他制御が行われるんじゃなかったっけ?

231 :NAME IS NULL:2011/06/27(月) 01:22:45.67 ID:???
>>229
もしかしてSQLiteがファイルロックってことすら知らないの?

232 :NAME IS NULL:2011/06/27(月) 13:40:00.83 ID:???
なにいってんだーw

233 :NAME IS NULL:2011/06/28(火) 15:35:20.60 ID:???
SQLiteのロックって割と信用できないからな・・・

234 :NAME IS NULL:2011/06/29(水) 02:55:09.13 ID:???
シングルユーザーシングルスレッドで使えば問題ない?

235 :NAME IS NULL:2011/06/29(水) 07:59:11.70 ID:???
マルチでも問題ねえよ

236 :NAME IS NULL:2011/06/30(木) 06:00:31.88 ID:???
3.7.7.1

237 :NAME IS NULL:2011/06/30(木) 12:39:52.57 ID:???
ネットワーク越し、Winの共有フォルダとかNFSとか
だと状況によっては・・・

238 :NAME IS NULL:2011/06/30(木) 18:02:52.64 ID:/Ojq8+Ij
MacのターミナルでDBのテーブルにcsv形式のファイルとインポートするときに、
「expected 32 columns of data but found 40」というエラーが出ます。
どうすればインポート出来ますでしょうか。
ご教授願います。

239 :NAME IS NULL:2011/06/30(木) 18:27:34.21 ID:???
カラム数があっていないと書いてある

240 :NAME IS NULL:2011/06/30(木) 20:34:40.33 ID:???
ネタかと思うほどのあほ

241 :NAME IS NULL:2011/06/30(木) 21:00:10.06 ID:???
>>239は優しいな

242 :NAME IS NULL:2011/06/30(木) 21:01:10.90 ID:???
>>240のアホさが際立ってるな


243 : 忍法帖【Lv=12,xxxPT】 :2011/07/01(金) 15:02:43.25 ID:???
ちんこ

244 :NAME IS NULL:2011/07/02(土) 20:46:20.78 ID:???
SQLコマンドを毎回ターミナルから入力しているのですが
楽をする方法はありませんか?

245 :NAME IS NULL:2011/07/02(土) 21:09:03.36 ID:???
SQLコマンドーはファイルに書いておいて
コマンドーラインからリダイレクトで流してもいい。

246 :NAME IS NULL:2011/07/02(土) 21:22:24.44 ID:???
映画見とる場合かーっ

247 :NAME IS NULL:2011/07/02(土) 21:23:43.16 ID:???
リダイレクトで流してもいいと言ったな。あれは嘘だ。

248 :NAME IS NULL:2011/07/02(土) 21:52:13.69 ID:???
>>244
ファイルに入った SQL の実行
.read <ファイル名>

http://www.kkaneko.com/rinkou/sqlite/sqlitecommand.html#eq_4

249 :NAME IS NULL:2011/07/05(火) 20:34:20.66 ID:???
SQLiteってデッドロック起きるんですか?

250 :NAME IS NULL:2011/07/05(火) 21:02:16.76 ID:???
MySQLからの移行を考えています。
test.sqliteというファイルを作ったら、
これはrootでcreate database testをしたということでいいんでしょうか?
それでtest.sqliteに、テーブルを作っていくわけですが、
create table a (
) encoding=utf8 collate utf8_unicode_ci;
みたいのはどうしたらいいんでしょうか?

pragma encoding="UTF-8";

create table a (
);

create table b (
);
のようにやっていき、

SELECT時にも最初に、

pragma encoding="UTF-8";
と入れればいいのでしょうか?

251 :NAME IS NULL:2011/07/06(水) 18:00:39.42 ID:???
varchar(10)とやっても11文字でも普通にinsertできてしまうんですが、
プログラム側でしっかりチェックしろっていうことでしょうか?
check(length(col<=10))とか制約いれてもエラーにはならないようですが
11文字以上でも普通に入ってしまいます

252 :NAME IS NULL:2011/07/06(水) 23:32:23.92 ID:???
>>251
varcharだのintだのってのはただの飾りですから

253 :NAME IS NULL:2011/07/07(木) 09:05:54.96 ID:???
intカラムに'ABC'INSERTしてもOKな仕様だから無問題

254 :NAME IS NULL:2011/07/07(木) 11:06:46.90 ID:???
NULLじゃなくて'NULL'を入れても問題なし

255 :NAME IS NULL:2011/07/07(木) 11:12:14.47 ID:???
男性カラミにSTICKをINSERTしても無問題?


256 : 忍法帖【Lv=17,xxxPT】 :2011/07/08(金) 07:59:29.78 ID:CxszCXG9
FirefoxのアドオンでSQLite Manager開きながらそっちで使えるクエリー試したり
ブラウザから取り出して表示してみたりしてたところ
ブラウザからの書き込みで延々と処理が先に進まない事態がおきました
これはいわゆるデッドロックってやつかもしれませんがどうやって調べるのでしょうか?
MySQLだとSHOW INNODB STATUSなんかで調べれるみたいですけど
SQLiteではどうするのでしょう?
というかDBレベルのロックだからデッドロック発生しないって書いてたのに・・・

257 :256:2011/07/08(金) 13:59:37.74 ID:CxszCXG9
うーん・・・
ChromeとOperaはinsertできるのに
FirefoxとIEはなぜかできないorz
何か情報ないでしょうか?

258 :256:2011/07/08(金) 14:58:49.76 ID:CxszCXG9
ごめんなさい
ヘッダ見ながら作業してたら根本的にinsertプログラムへのPOSTができていませんでした
原因はボタン複数回おすのを防止するJavaScriptの挙動がおかしくて
先の画面へいかないことが原因でした
お恥ずかしい・・・

259 :NAME IS NULL:2011/07/08(金) 18:37:21.24 ID:???
リクエストされたSQLを見れるデバッグ処理くらいは付けようず。

260 :NAME IS NULL:2011/07/10(日) 15:43:02.54 ID:???
携帯ゲームをつくるのにSQLiteを使おうと思ってるのですが、
同時書き込みができないのを考えるとSQLiteは向いてませんかね?

261 :NAME IS NULL:2011/07/10(日) 15:47:29.04 ID:???
書き込むプロセスが1つなら問題ないだろ?

262 :NAME IS NULL:2011/07/10(日) 15:58:32.67 ID:???
スクリプト言語ほど動作が遅くて、多重アクセスがある場合は良い。
C言語が使えるなら、データベースはそれより遅い。

263 :NAME IS NULL:2011/07/10(日) 16:00:07.48 ID:???
携帯にSqliteは組み込まれているのか?
オープンソースだから梱包すれば良いのか

264 :NAME IS NULL:2011/07/10(日) 16:07:45.51 ID:???
携帯ゲームといっても、GREEみたいなブラウザゲームです

265 :NAME IS NULL:2011/07/10(日) 16:07:49.36 ID:???
サーバーでSqliteを使ってモバイルからアクセス来るようなケースか?
マルチ・同時アクセスも処理できるだろ。

266 :NAME IS NULL:2011/07/10(日) 16:14:06.67 ID:???
1日数万ページビューだと、不具合出るらしいぞ。


http://ziddy.japan.zdnet.com/qa4310712.html
PHP5.0+SQLite2.8でユーザー投稿型のサイトを個人運営しています。
1日数万ページビューほどの規模で、
データベースのテーブルのレコード数は数万件、1レコードあたりのカラム数は数十件ほどあり、そのテーブルに1日数百件の投稿があります。
それらのデータは随時更新・削除・検索されます。

データベースファイルへのINSERT、UPDATE、DELETE、SELECTなどが重なると「database is locked」とのエラーメッセージが表示され、
それからもずっとユーザーによるデータベースへのアクセスが続くため、データベースへのアクセスがしづらい、もしくはまったくできない状態が延々と続いてしまいます。

267 :NAME IS NULL:2011/07/10(日) 23:36:30.24 ID:???
他のDBならサーバー側が自前で実装してるところを、OSやFSにまかせてるからな。

268 :NAME IS NULL:2011/07/11(月) 00:09:40.38 ID:???
やっぱそれくらいが限界なのかな?
一日数万ビューって多いのか普通なのかわからんが。

269 :NAME IS NULL:2011/07/11(月) 01:41:15.21 ID:???
1日は86400秒なんだから、数万ビュー/日ってことは数秒に1回か。

270 :NAME IS NULL:2011/07/11(月) 01:50:48.74 ID:???
こういうのは瞬間最大風速しらべないと意味ないよな

271 :NAME IS NULL:2011/07/13(水) 09:09:23.84 ID:???
vacuumしたらサイズが小さくなるって書いてたのでやってみたら35kbぐらいだったのが300kbになったんですが
だまされたでー

272 :NAME IS NULL:2011/07/13(水) 11:38:23.45 ID:???
んなことあるわけないだろ

273 :NAME IS NULL:2011/07/13(水) 17:03:23.57 ID:???
>>271
あるあるw

274 :NAME IS NULL:2011/07/13(水) 19:14:24.77 ID:???
35KBのファイルをVACUUMする必要があるのか?

275 :NAME IS NULL:2011/07/14(木) 03:50:12.45 ID:???
select distinct sid from tableはうまくいくんですが、
select distinct sid, unameみたいに複数指定して取り出そうとすると消えてくれません。
たぶんこの場合sidとuname両方が重複してれば削除ということになるんでしょうが、
sidのみの重複を削除してその他のカラムも一緒に取りたい場合どう書けばいいんですか?

276 :NAME IS NULL:2011/07/14(木) 08:15:42.49 ID:???
削除?

277 :187:2011/07/14(木) 08:26:28.47 ID:???
>>275
sidの重複を排除した際、どのunameを取得するんだい?

278 :275:2011/07/14(木) 13:25:33.51 ID:???
>>277
order byで一番上にきてるものを取得できないかな?と思ってます
無理ですかね?

279 :NAME IS NULL:2011/07/14(木) 14:15:29.18 ID:???
uname以外に無ければ、
select sid,min(uname) from table group by sid
とかできるけど、、、
あとはサブクエリかな

280 :NAME IS NULL:2011/07/16(土) 16:10:35.52 ID:yPv+Kx9j
みなさんはdb作る時、文字コードは何を利用してますか?

281 :NAME IS NULL:2011/07/16(土) 17:27:35.88 ID:???
unicode

282 :NAME IS NULL:2011/07/16(土) 23:11:08.88 ID:???
UTF8

283 :NAME IS NULL:2011/07/16(土) 23:42:03.52 ID:???
作ったデータベースがunicodeだったからそのまんま使ってるわ
プログラムで使用してるのはutf8でデータベースに入れてるのもutf8だけど不都合は今のところ生じてない

284 :>>280:2011/07/17(日) 04:31:36.46 ID:???
みなさんトンクス。

>>283
その場合、例えば sqlite3_column_text16() 呼んだ後に、アプリ側でutf8に変換してるって事ですかね。
あれ? もしかしてsqlite3_column_text()使えば変換してくれるのかな?
sqlite3_prepare系は引数のsql文の文字コードにあわせて読んでやれば、勝手にdbに適した文字コードに変換される?

285 :NAME IS NULL:2011/07/17(日) 09:41:30.17 ID:???
メモリも8GBで4000円を切るようになって、これからは、UTF-32の時代だな
文字ごとに長さがころころ変わるUTF-8は問題外、サロゲートだの何だの無理やり感満点のUNICODEももう役割を終える時期


286 :NAME IS NULL:2011/07/17(日) 22:31:42.88 ID:???
プログラム側でループさせてSELECTの処理速度計測してるのですが、
1レコード増えるだけでだいぶ時間が遅くなってきます。
SQLiteの組み込み関数を使ったり、150レコードと50レコードほどのものをUNIONしたものを、
さらにSELECTしている感じですが、
1件レコードを増やしたら1回のセレクトが5/100000秒増えます。
適切なインデックスは貼ってるつもりで、トランザクション処理も行っています。
単純計算でレコードが1万あったら0.5秒、10万件あったら5秒もかかります。
データベース使うのは始めてなんですが、こういうものなんでしょうか?
それとも僕の設計が悪いんでしょうか?
いらないレコードはどんどん削除したほうがいいんでしょうか?
質問だらけですみませんが、よろしくお願いします。

287 :NAME IS NULL:2011/07/17(日) 23:06:29.54 ID:???
>>286
設計が悪いんだろうな
スキーマ見せれ

288 :NAME IS NULL:2011/07/17(日) 23:07:18.88 ID:???
インデックスが適切じゃないんだろうな

289 :NAME IS NULL:2011/07/17(日) 23:36:12.22 ID:???
初心者ほどツールや環境のせいにしたがるよな

290 :286:2011/07/17(日) 23:39:14.03 ID:???
>>287
こんなかんじになります。

member
id integer pk nn
name text nn

callender
id integer pk nn
uid integer nn --member.id
date integer nn --日付を表すunixtime
todo text nn
unique(uid, date)

default_callender
id integer pk nn
uid integer nn --member.id
week integer nn --曜日を表す数字0〜6
todo text nn
unique(uid, week)

インデックスはcallender.dateに貼っています

これでcallenderとdefault_callenderの曜日を
strftimeでY-m-d形式に変換したものをunionしています。

291 :286:2011/07/17(日) 23:50:37.10 ID:???
追記です。
callender.dateに貼っているのは、
callender側の条件で1週間以内を指定するからです。
where `date` < strftime('%s', 'now')-(3600*24*7)

default_callenderは月曜日にピアノの稽古みたいなのが入っていて、
callenderは7/18(のunixtime)に◯◯さんと食事みたいのが入ります。
unionすると7/18は◯◯さんと食事とピアノの稽古といった具合になります。

292 :NAME IS NULL:2011/07/17(日) 23:59:42.25 ID:???
インデックスが適切じゃない

293 :NAME IS NULL:2011/07/18(月) 00:02:36.71 ID:???
>>290
idにも晴

294 :286:2011/07/18(月) 00:10:05.64 ID:???
>>292
週間カレンダーのSELECTでして、whereはdateしか指定ないですし、
uidにも貼ってみたんですが、こちらはやはり効果がありませんでした。
default_callender.weekについてもやはり効果はありません。
callender.dateはやはり効果がありました。
他にインデックス貼るものはない気がしますが、
そうなると設計自体に問題があるんですかね・・・
strftimeとか使ってるところもマイナス要素なんでしょうか。

>>293
idはpkなのでたぶん最初から貼られてます。

295 :NAME IS NULL:2011/07/18(月) 00:33:14.53 ID:???
strftime('%s', 'now')-(3600*24*7)
これをwhereに書くな
って言うかどっかで見た
マルチだな

296 :286:2011/07/18(月) 00:35:51.99 ID:???
where `date` < strftime('%s', 'now')-(3600*24*7)
を、
where `date` < (select strftime('%s', 'now')-(3600*24*7))
に変えたら1%ほど早くなりました。

>>295
マルチはしていません。
教えていただければそのやりとりを見たいです。

297 :286:2011/07/18(月) 00:54:46.66 ID:???
見直したら不必要なorder byが入ってました。
取り除いたところ30%以上早くなりました。
他にも無駄がおおそうなので後はなんとか頑張ってみます。
お騒がせしました。

298 :NAME IS NULL:2011/07/18(月) 05:56:55.91 ID:???
nn って何だよとしばらく考え込んだが NOT NULL のことか。
人に説明するのに中途半端なオレオレ用語使うなよ…

299 :NAME IS NULL:2011/07/18(月) 06:18:18.79 ID:???
nnは俺のイニシャルだろ

300 :NAME IS NULL:2011/07/18(月) 07:16:48.06 ID:???
オレオレ用語じゃないような
DB設計ツールでよく見るぞ

301 :NAME IS NULL:2011/07/18(月) 09:19:25.87 ID:???
いや、それでも nn を見て not null だと判断できる人間が何人居ると思ってるんだよ

302 :NAME IS NULL:2011/07/18(月) 09:47:40.58 ID:???
わりといるだろ。
知らないなら覚えときな。

PK = PRIMARY KEY
FK = FOREIGN KEY
UNN = UNIQUE NOT NULL
NN = NOT NULL

303 :NAME IS NULL:2011/07/18(月) 10:12:47.48 ID:???
UNNよりNN,Uだな
まぁ略語は察せるようにはなったほうがいいよ
あまり変なものだとキレたくなるけどNNは一般的だから

304 :NAME IS NULL:2011/07/18(月) 10:26:18.36 ID:???
>>301
漏れはすぐに判った

305 :NAME IS NULL:2011/07/18(月) 10:50:09.85 ID:???
ちょっと勉強になったと思う

306 :NAME IS NULL:2011/07/18(月) 11:53:36.82 ID:???
PK FK はサッカーでは有名ですよ。

307 :NAME IS NULL:2011/07/18(月) 11:56:07.96 ID:???
うんうん。
プライマリーキックと
フォーリンキックな

308 :NAME IS NULL:2011/07/18(月) 12:47:00.93 ID:???
FWがFireWallの略だと知ったときはかなりショックだった

309 :NAME IS NULL:2011/07/18(月) 13:41:58.10 ID:???
フレームワークじゃないのか

310 :NAME IS NULL:2011/07/18(月) 14:33:42.32 ID:???
WAF っていうと Firewall のことだったり Framework のことだったり分脈で2分されるよな

311 :NAME IS NULL:2011/07/18(月) 18:27:24.13 ID:???
WAF>ω<

312 :NAME IS NULL:2011/07/18(月) 20:24:19.55 ID:???
VBがウイルスバスターの略だと聞くとイラッと来る

313 :NAME IS NULL:2011/07/19(火) 11:50:05.12 ID:???
>>301
http://www.google.co.jp/search?q=sql+nn&lr=lang_en
の結果を見ても一般的な頭字語とは到底思えないけど
PKと同じ文脈でNNが出てきたら判る
まぁ select * from sqlite_master の結果を張った方が質問する方も回答する方も楽よね

314 :NAME IS NULL:2011/07/19(火) 12:44:01.43 ID:???
Netscape Navigator

315 :NAME IS NULL:2011/07/21(木) 22:24:44.67 ID:???
sqliteって文字数の固定長ないよね
VARCHAR(255)とかTEXT(255)があったほうがFileIOの効率いいと思うし
他のRDBはみんなあると思うがなんでないの?


316 :NAME IS NULL:2011/07/21(木) 23:31:10.14 ID:???
>>315
面倒くさいから

317 :NAME IS NULL:2011/07/22(金) 01:12:36.85 ID:???
>>315
なのに速いんだよな。
なんでなんだろうな。

318 :NAME IS NULL:2011/07/22(金) 01:13:29.84 ID:???
排他処理無いから

319 :NAME IS NULL:2011/07/22(金) 14:05:23.35 ID:???
お前は喋んなくていいぞ

320 :NAME IS NULL:2011/07/22(金) 21:10:18.24 ID:???
違う人物が似たよなものつくればもっと速いはず

321 :NAME IS NULL:2011/07/23(土) 10:38:12.82 ID:???
言い出しっぺの法則

322 :NAME IS NULL:2011/07/23(土) 14:37:17.54 ID:???
>>315
そんなことでFileIOの効率なんざ変わらないから
馬鹿なお前の場合、HDDは4KB単位でしか読み書きできないと覚えておくと良い

323 :NAME IS NULL:2011/07/23(土) 14:48:47.93 ID:???
セクタ単位なら 512 バイトから可能

324 :NAME IS NULL:2011/07/23(土) 21:20:42.29 ID:???
クラスタサイズとブロックサイズの違いもわかってないアホは放置で。

325 :NAME IS NULL:2011/07/23(土) 21:38:53.11 ID:???
HDDもSSDも読み込みたいのはたった1byteだろうと、物理的には前後数十KB〜数百KB読み込んでんだよ
512バイトから可能とか寝ぼけた事言わんように

326 :NAME IS NULL:2011/07/23(土) 22:38:02.82 ID:???
ほら、やっぱり理解できてないだろ。(w

327 :NAME IS NULL:2011/07/23(土) 22:45:45.01 ID:???
半角wを使う奴って馬鹿ばかりなのは何故?

328 :NAME IS NULL:2011/07/23(土) 22:50:19.55 ID:???
>>326

頭悪そうな煽りばかりでなく正解を示したら?

329 :NAME IS NULL:2011/07/24(日) 00:42:36.96 ID:???
仲良くしてね

330 :NAME IS NULL:2011/07/24(日) 01:14:13.90 ID:???
>>328
>頭悪そうな煽りばかりでなく正解を示したら?

適当な HDD のデータシートのセクターサイズ見ればいいだけだろ。

例えば HGST Deskstar 7K3000
http://www.hitachigst.com/tech/techlib.nsf/techdocs/155901D3B251D9A9862577D50023A20A/$file/DS7K3000_ds.pdf



331 :NAME IS NULL:2011/07/24(日) 05:10:40.93 ID:???
やっぱ頭悪いだけだったね

332 :NAME IS NULL:2011/07/24(日) 08:49:32.19 ID:???
秋に基本情報技術者試験受けに行かないとな

333 :NAME IS NULL:2011/07/24(日) 14:32:25.37 ID:???
今年は競争率低いから受かる鴨試練ぞ

334 :NAME IS NULL:2011/07/24(日) 14:37:26.86 ID:???
競争率て

335 :NAME IS NULL:2011/07/24(日) 15:43:53.10 ID:???
定員はないから基準点超えれば何人でも合格する
つまり合格率はあるが競争率は無いな


336 :NAME IS NULL:2011/07/24(日) 20:03:14.27 ID:???
>>331
どこが間違ってるか具体的に指摘してやったほうがいい。
正論でガツンと凹ませてやれ。

337 :NAME IS NULL:2011/07/24(日) 20:11:59.93 ID:???
>>336
無理。頭悪いからw

338 :NAME IS NULL:2011/07/24(日) 20:41:42.60 ID:???
>>331
> やっぱ頭悪いだけだったね

頭悪そうな煽りばかりでなく正解を示したら? (w

339 :NAME IS NULL:2011/07/24(日) 20:59:48.42 ID:???
オレは>>331が正しい解説をしてくれると信じてるよ

340 :NAME IS NULL:2011/07/24(日) 21:01:45.00 ID:???
たまにはそっちを苛めないとね

341 :NAME IS NULL:2011/07/24(日) 21:44:41.93 ID:???
苛めてるつもりだったんだ...

342 :NAME IS NULL:2011/07/25(月) 00:46:46.82 ID:???
ファームウェアが512bytes単位のアクセスを提供してるからって
物理的に512bytesぴったりで読み書きしてると思うなんてクサレ脳みそ過ぎるだろ
一体何のために何十MBもキャッシュ積んでると思ってんだ
馬鹿すぎる

343 :NAME IS NULL:2011/07/25(月) 01:30:30.88 ID:???
あ、もしかして「固定長をサポートしてなかろうとIO効率は大して変わらない」という主張をしてる俺に
「HDDは1sector(512bytes)単位の読み書きをサポートしている」と繰り返してたって事か?
んなこと知ってるから安心してくれ

344 :NAME IS NULL:2011/07/25(月) 01:59:16.46 ID:???
>>342
>物理的に512bytesぴったりで読み書きしてると思うなんてクサレ脳みそ過ぎるだろ

「HDDは4KB単位でしか読み書きできないと覚えておくと良い」とかほざいてた奴が
いたようだが? (w

345 :NAME IS NULL:2011/07/25(月) 02:53:41.86 ID:???
「馬鹿なお前の場合」を抜かすなよ馬鹿…

346 :NAME IS NULL:2011/07/25(月) 06:49:24.50 ID:???
結論

>>324がブッチギリに恥ずかしい

以上

347 :NAME IS NULL:2011/07/25(月) 10:52:40.92 ID:???
>>345
>「馬鹿なお前の場合」を抜かすなよ馬鹿…

馬鹿に嘘教えてドヤ顔?
どんどん深みにはまってるぞ。(w

>>346
そんなに悔しかったの?
反論するなら 4KB がどこから来たのか説明してからにしてくれよな。

348 :NAME IS NULL:2011/07/25(月) 13:59:42.62 ID:???
ブロックサイズのMS語がクラスタサイズってだけやんw
他に何が違うのか教えてほしいわwww

349 :NAME IS NULL:2011/07/25(月) 14:38:47.48 ID:???
このスレID出ないのか

350 :NAME IS NULL:2011/07/25(月) 15:14:47.09 ID:???
ID無くても馬鹿臭は隠せない

351 :NAME IS NULL:2011/07/25(月) 18:23:37.03 ID:???
問題は馬鹿が一人か複数かということ

352 :NAME IS NULL:2011/07/25(月) 19:17:45.74 ID:???
どちらにしろ馬鹿なんだから問題ない

353 :NAME IS NULL:2011/07/25(月) 19:45:12.23 ID:???
複数ならもうこのスレに用は無いが
一人なら全力で追い出す

354 :NAME IS NULL:2011/07/25(月) 19:56:32.15 ID:???
知りようが無いものを行動基準に設定する>>353は馬鹿。
>>353がすべてを自演してない限り>>353含め馬鹿は複数居る。

よかったね。さよなら。

355 :NAME IS NULL:2011/07/26(火) 00:32:49.23 ID:???
クラスタサイズとブロックサイズの違いとは一体なんだったのか

356 :NAME IS NULL:2011/07/26(火) 01:21:47.14 ID:???
これ一人が書いてんのか?なんでここまでスレ違いな話を数ヶ月もダラダラやれるんだ
精神異常か

357 :NAME IS NULL:2011/07/26(火) 01:31:32.23 ID:???
なに言ってんだこいつw

358 :NAME IS NULL:2011/07/26(火) 01:37:41.54 ID:???
いつの間に数ヶ月の月日が・・・

359 :NAME IS NULL:2011/07/26(火) 04:27:38.14 ID:???
時空を超えて数ヶ月未来から書き込んでるつもりなんだろう
精神異常だな

360 :NAME IS NULL:2011/07/26(火) 08:05:27.33 ID:???
viewを作ってWebアプリケーション経由でブラウザからアクセスしてベンチマークをとっていました。
どのSQLがいいかを見極めるためにいくつかviewを作ったり改良したりしながら、
F5を連打して秒数を測っていたのですが、あるタイミングから(たぶんF5を抑えつけたとき)
viewを作成できなくなり、select以外の他の操作も受け付けなくなりました。
トランザクション開始→select * from viewを1000回測って平均を出す→コミット
という感じでやってたのですが、何が原因でどう対処したらいいのでしょうか?
データベースファイルが壊れてしまったんでしょうか?

361 :360:2011/07/26(火) 08:16:51.24 ID:???
ブラウザも閉じて他から参照もされてないと思ったのですが、
削除も移動もできないため、Apacheを止めてみたら削除できるようになりました。
本番環境で同じことが起きたら非常に困るのですが、これデッドロックですかね?
F5押しっぱなしによるApacheの処理が終わらない段階で、
クライアント側で(Apacheとは関係ない所で)ビューを作成してしまったから起きたのでしょうか?
ログもないし原因がわからず困ってます。

362 :NAME IS NULL:2011/07/26(火) 09:26:09.60 ID:???
けんかになってるということは両方同レベル

363 :NAME IS NULL:2011/07/26(火) 10:34:52.22 ID:???
>>360
ロック中にapacheのスレッド状態とか見てなかったの?

364 :NAME IS NULL:2011/07/26(火) 10:44:56.89 ID:???
Apacheじゃなくて
コンソールプログラムから
同じトランザクション、同じクエリをforループでおくりまくってみたら?
人力でF5押すより再現性があると思うし、Apacheが関係しているかもわかるはず。

365 :361:2011/07/26(火) 11:02:16.74 ID:???
>>363-364
レスありがとうございます。

>ロック中にapacheのスレッド状態とか見てなかったの?
Apacheはあまり詳しくなく、見ていませんでした。
エラーログも見てみましたが、さすがになさそうです。

>コンソールプログラムから
>同じトランザクション、同じクエリをforループでおくりまくってみたら?
>人力でF5押すより再現性があると思うし、Apacheが関係しているかもわかるはず。
再現しようと思ってなかなかできなかったので試してみます。

366 :NAME IS NULL:2011/07/27(水) 20:51:42.32 ID:???
どうだった?

367 :NAME IS NULL:2011/07/28(木) 04:53:43.45 ID:???
よかったよ

368 :NAME IS NULL:2011/08/26(金) 14:00:32.32 ID:???
復帰test

369 :NAME IS NULL:2011/09/09(金) 19:18:35.78 ID:aXxL9ygv
ログイン情報を格納したいのですが、
ログイン後に操作するデータベースとファイルを分けたほうがいいでしょうか?
それとも同じファイルでテーブルだけ分ければいいでしょうか?

370 :NAME IS NULL:2011/09/09(金) 23:31:57.78 ID:???
なぜ分けた方が良いと思ったのか、それ次第だな

371 :NAME IS NULL:2011/09/11(日) 00:04:28.03 ID:???
MySQLとかでユーザにつき1つのデータベース付与するのと同じイメージでいいんじゃない?
1つしかデータベース付与されないから全部それでやるしかないでしょ?

372 :NAME IS NULL:2011/09/11(日) 20:45:29.69 ID:???
$sqlite3 -version
すると
>SQLite header and source version mismatch
とメッセージが出て対処法が分かりません。教えてください
初心者スレがあったら誘導してください

373 :NAME IS NULL:2011/09/11(日) 22:11:17.88 ID:???
>>372
Google 知ってるか?

374 :NAME IS NULL:2011/09/11(日) 22:28:59.83 ID:???
そんなもんとっくに調べたわボケ

375 :NAME IS NULL:2011/09/11(日) 22:38:48.38 ID:???
そのメッセージでググればいくらでもヒットするが、英語が読めないのか?

376 :NAME IS NULL:2011/09/11(日) 22:40:17.37 ID:???
>>372
自分で貼ってるメッセージに書いてある通りでしょ。
mismatchだと言ってるんだから同じにしてやればいいんじゃないの?

377 :NAME IS NULL:2011/09/11(日) 22:50:47.53 ID:???
>>375
小学生に何を求めているの?

>>376
その手段が分からない

378 :NAME IS NULL:2011/09/11(日) 23:42:45.63 ID:???
>>377
何でそんなに偉そうに質問してるんだよ。

答えて欲しかったらまず自分の環境とやりたいことくらいは最初に書け。
OSは?OSのバージョンは?SQLiteのインストール手順は?
SQLiteのバージョンは?ヘッダファイルのバージョンは?
利用はコマンドラインから?それとも何かのプログラム言語から?

ちなみに、開発者サイト[http://www.sqlite.org/]からたどれば大抵のことは解決するよ。
mail-archiveへのリンクとかもあるし。

379 :NAME IS NULL:2011/09/15(木) 16:25:17.77 ID:???
偉そうにするとムカついて正論返してくれるじゃん

Ubuntu11.04
インストール手順
公式からsqlite-autoconf-3070701.tar.gzをDL
$tar zxvf sqlite-autoconf-3070701.tar.gz
$cd sqlite-autoconf-3070701
$./configure
$make
$sudo make install
バージョンは不明
利用はコマンドラインから

ちなみに自己解決した。sqlite関連全部消してみて
/usr/local/bin/sqltie3がコマンドで消しても残ってたので管理者権限で消した
$sudo apt-get install sqlite3
したら思った通りに動いた。色んなものが消えたけど

380 :NAME IS NULL:2011/09/15(木) 16:40:19.72 ID:???
それで何時間無駄にしてるんだろう

381 :NAME IS NULL:2011/09/15(木) 19:46:46.63 ID:???
ヒントを全部与えられているんだから自己解決とは言わないだろ・・・w

382 :NAME IS NULL:2011/09/15(木) 21:09:24.32 ID:???
お前らオッサンの癖して揚げ足取りなんて大人気ないな

383 :NAME IS NULL:2011/09/15(木) 22:10:15.98 ID:???
だいにんきと読んでしまったw
おとなげないか?

384 :NAME IS NULL:2011/09/21(水) 23:36:46.60 ID:???
3.7.8

385 :NAME IS NULL:2011/10/01(土) 00:36:05.63 ID:???
>>5 の「SQL辞典」ですが、第2版が出てました。
立ち読みでパラパラと見てみましたが、
SQLite の関数の章の記述が幾分増えているようです。

自分はもう買うつもりないので、買った方いたらレビューよろしくです。

SQL辞典 第2版―7大データベース対応 (Pocket詳解) (堀江美彦 著)
http://www.amazon.co.jp/dp/4798030821

386 :NAME IS NULL:2011/10/14(金) 12:08:04.39 ID:???
訃報: C 言語の開発者、デニス・リッチー氏が死去
ttp://developers.slashdot.jp/story/11/10/13/0224245/

Google+ で Rob Pike 氏が語ったところによると、C 言語の開発者、K&R の R であるところの Dennis Ritchie 博士が亡くなられた。
70 歳 (Rob Pike 氏による Google+ への投稿) 。

長らく闘病中だったとのことで、先週末に自宅で息を引き取ったそうだ。

387 :NAME IS NULL:2011/10/20(木) 06:33:47.96 ID:fKz8HpBa
CREATE TABLEするときの、カラムの型指定で、
http://www.sqlite.org/syntaxdiagrams.html#type-name
↑の、
・型名が複数続くケース
・型名の後に(signed-num)が続くケース
・型名の後に(signed-num, signed-num)が続くケース
って何に使われるんでしょう?

388 :NAME IS NULL:2011/10/22(土) 21:29:55.50 ID:???
よろしくです
SQLiteでこのようなフォーマットのテーブルに
datetime,real,real,real,real
↓この形式のcsvファイルをインポートするのですが
2008-01-02 18:01:00,64.30,64.30,64.30,64.30
↓このように、時間が記録できません
2008-01-02 64.30 64.30 64.30 64.30
アドバイスおながいします

389 :NAME IS NULL:2011/10/23(日) 02:05:49.31 ID:???
>>388
インポートのやり方が間違っているか
取得の方法が間違っているか のどちらかです。

390 :NAME IS NULL:2011/10/23(日) 13:34:53.73 ID:???
バージョンとやったこと全部書かないとな

391 :NAME IS NULL:2011/10/23(日) 18:44:19.13 ID:???
うーむ軽量ねぇ

392 :NAME IS NULL:2011/10/23(日) 18:47:26.89 ID:4TwsFYCq

自作アプリで
5万件のデータに対して抽出処理を行ったけど

勿論、ロジックは同じ
DB接続は数種類切り替えれるような設計になっている


・sqliteは検索結果画面を出すのに数秒かかる
・Oracleに接続を切り替えると、一瞬で検索結果画面が出る

扱う件数が万を超えるような処理になると
実用に値しない


393 :NAME IS NULL:2011/10/23(日) 18:58:32.42 ID:???
>>392
インデックスの張り方間違えてね?
5万件程度なら一瞬だぞ

394 :NAME IS NULL:2011/10/23(日) 19:00:21.38 ID:???
Oracle側はそれなりに最適に動作するよう調整してるんだろうから
SQLite側も同じくらいには高速動作するよう調整しなきゃダメだろ。

395 :NAME IS NULL:2011/10/23(日) 19:12:22.88 ID:4TwsFYCq
>>393
インデックスも何も主キーで問い合わせてるんだがw
同じSQLと処理でこうも違うと致命的だな

396 :NAME IS NULL:2011/10/23(日) 19:22:00.00 ID:???
不思議な話もあるもんだな
うちも10万件程度のを扱ってるけど主キーで取るのに
数秒なんてありえない。それこそ一瞬だわ。
画面に出力するロジックが悪いんじゃないか?

397 :NAME IS NULL:2011/10/23(日) 20:02:42.35 ID:4TwsFYCq
既出の文章ぐらい読め

>>392
「oracleでは一瞬で画面まで出ている」
と書いてるだろう

ロジックは同じで
sqliteの場合だけ異常に遅い

どう考えてもsqliteに問題があるとしか思えん

ちなみにアプリはjava
使用しているJDBCドライバは
sqlite-jdbc-3.6.20.jar

これに不具合があるのかも知れんが、そこまでは知らん



398 :NAME IS NULL:2011/10/23(日) 20:30:17.67 ID:???
ソース見ないと何とも言えない。

399 :NAME IS NULL:2011/10/23(日) 20:50:54.44 ID:4TwsFYCq
同じコードで
同じ条件で処理させて
sqliteの場合だけ異常に遅い
原因はsqlite側に在るのは明らかだ

あとは、sqlite側のドライバの問題なのか?本体の問題なのか?
どっちかだ

仮に
最新版のドライバに更新したら改善されたのならJDBCドライバの問題だろう

それでも解決しなければsqlite本体の問題だろう


400 :NAME IS NULL:2011/10/23(日) 21:47:41.05 ID:???
>最新版のドライバに更新したら改善されたのならJDBCドライバの問題だろう
まず試してから質問しろよ

401 :NAME IS NULL:2011/10/23(日) 22:25:57.75 ID:4TwsFYCq


質問だと?w
何を勘違いしてるんだ?

ドライバの問題だったとしても
sqlite が糞であることには変わりない

そもそも
何で更新しなきゃならんのだ?

sqlite-jdbc-3.6.20.jar
は実用に耐えれるから、当時配布したんじゃなかったのか?

それを普通に使って
数万件程度の問い合わせで、異常に遅くなるようなシロモノだったのか?

いずれにせよ実用には値しない


402 :NAME IS NULL:2011/10/23(日) 22:30:38.34 ID:???
うんこ

403 :NAME IS NULL:2011/10/24(月) 00:02:02.20 ID:???
>>401
>sqlite-jdbc-3.6.20.jar
>は実用に耐えれるから、当時配布したんじゃなかったのか?

誰もそんなの検証してないよ。
sqlite作者とは関係ない、ただの個人が作って配布してるだけだし。
そんなjdbcドライバとoracleを比べてる時点で間違い。

404 :NAME IS NULL:2011/10/24(月) 00:11:48.48 ID:???
何を怒ってるのか知らないが、コマンドラインで試してみたか?
それでも数秒かかるならSQLiteが悪いんだろうがそうでなきゃ
JDBCがヘボいだけかと。

405 :NAME IS NULL:2011/10/24(月) 00:58:16.42 ID:???
主観で遅い遅い言ってないで
マならクエリやスキーマの一つでも張れよ

406 :NAME IS NULL:2011/10/24(月) 02:20:16.49 ID:???
具体的なスキーマと問い合わせ文見ないと何とも言えないけど、
とにかく何かOracleでだけインデックスが効くような使い方してるんだろうな。

例えば count(*) は SQLite ではフルスキャンになるからクソ遅くなるけど、Oracle は一瞬で出る、とかね。

とにかく具体的なスキーマと問い合わせ文出してくれないことにはまともな議論にならんよ>>399

407 :NAME IS NULL:2011/10/24(月) 02:55:42.31 ID:0tWsNn64
信者ががんばってるなw
主キーで書いてるのに虫かよw

408 :NAME IS NULL:2011/10/24(月) 08:08:59.47 ID:???
あ、おとなしくなった

409 :NAME IS NULL:2011/10/24(月) 08:10:46.31 ID:???
いや、純粋に主キーだけが条件ならあり得ないから。
さっさとスキーマと問い合わせ文晒してみ。
まともな話する気がないなら巣にお帰り。

410 :NAME IS NULL:2011/10/24(月) 18:04:48.57 ID:0tWsNn64
検索でコレかよ
使えん糞DBだな

411 :NAME IS NULL:2011/10/24(月) 18:51:27.72 ID:???
>>407-408,410
いいからさっさと晒せ

412 :NAME IS NULL:2011/10/24(月) 19:06:46.47 ID:0tWsNn64
なんで糞なの?
主キーで検索かけて遅延するってどういうこと?
いくらなんでも我慢できん

ほかのDB探すわ

413 :NAME IS NULL:2011/10/24(月) 19:18:23.12 ID:???
まぁ無理に使わんでも

414 :NAME IS NULL:2011/10/24(月) 19:43:51.59 ID:0tWsNn64
糞すぎるDB使っても
いい事なんか無いことわかった

415 :NAME IS NULL:2011/10/24(月) 19:57:25.32 ID:???
>414
再現できるようにするのがフェアじゃないかな

信者じゃないけど
プロトタイプとか簡単なテストはSQLiteで済ませているから糞でも構わない
まぁ、体感的に遅い気はするけど、自分で*DBMS/KVSを書くよりましだろうし

416 :NAME IS NULL:2011/10/24(月) 20:14:43.40 ID:0tWsNn64
> 例えば count(*) は SQLite ではフルスキャンになるからクソ遅くなるけど、Oracle は一瞬で出る、とかね。

おまえ基本知らないだろw

417 :NAME IS NULL:2011/10/24(月) 21:06:32.18 ID:09cja/xi
過疎だから回答ないだけかと思ってたのに
人一杯いるじゃん!
>>387 おせーてよ!

418 :NAME IS NULL:2011/10/24(月) 21:10:20.49 ID:???
他の探すとか言いつつまだ粘着しているのかよ。

419 :NAME IS NULL:2011/10/24(月) 21:18:07.72 ID:0tWsNn64
どんだけ糞なのか
ハkッキリとわかった
まさか主キーで検索してこの座mあとか・・・
使え根ー

420 :NAME IS NULL:2011/10/24(月) 22:09:05.55 ID:???
>>417
よく知らんが、いくつか検索した結果をまとめると
テーブル定義の時点では他のプログラマのために
カラムの文字数や数値の範囲を明示するために使用するようだ。
これはSQLiteで型指定が大雑把すぎることが起因する。

421 :NAME IS NULL:2011/10/24(月) 23:04:40.19 ID:???
>417
>CREATE TABLEするときの、カラムの型指定で、
>http://www.sqlite.org/syntaxdiagrams.html#type-name
>↑の、
>・型名が複数続くケース
知らん

>・型名の後に(signed-num)が続くケース
varchar(20)とか

>・型名の後に(signed-num, signed-num)が続くケース
知らん

422 :NAME IS NULL:2011/10/24(月) 23:14:54.77 ID:0tWsNn64

件数が万単位になると急激に劣化するとか
糞すぎて使い物にならんね
さっさとほかのDBの検討したほうがマシだ

423 :NAME IS NULL:2011/10/24(月) 23:19:17.77 ID:???
>>422
包茎くん、乙

424 :NAME IS NULL:2011/10/24(月) 23:20:32.48 ID:0tWsNn64
しかし件数が万単位になると急激に劣化するとか
どうなってるんだろうな?
驚くばかりだ
他のDBと比較すると歴然とする
実用に耐えれん

425 :NAME IS NULL:2011/10/24(月) 23:25:17.82 ID:09cja/xi
>>420
>>421
はーなるほど
サンクス

それならと、探してみたら明記されてました。
http://www.sqlite.org/datatype3.html
の 2.2 Affinity Name Examples
 Note that numeric arguments in parentheses that following the type name
 (ex: "VARCHAR(255)") are ignored by SQLite - SQLite does not impose
 any length restrictions (other than the large global SQLITE_MAX_LENGTH limit)
 on the length of strings, BLOBs or numeric values.
(数字)つけても意味ない、と。

>・型名が複数続くケース
UNSIGNED BIG INT
DOUBLE PRECISION
VARYING CHARACTER
NATIVE CHARACTER
こういう奴ですね。
結局、こっちも内部の型に変換されるだけで意味はないようですが

426 :NAME IS NULL:2011/10/25(火) 00:48:54.33 ID:???
>>424
サードパーティ製の怪しいJDBCドライバを使っておきながら、原因の切り分けもしないで
SQLiteが糞すぎるの何のアホなこと言うから、主キー云々のアホな回答しか帰ってこなくなる。

そもそも組み込みDBのSQLiteと、Oracle DBを比較している時点で目的が意味不明。
Oracleを使える環境で、Oracleが良いなら、黙ってOracleを使えば良いだけ。

そうじゃなくて組み込みDBを使いたいなら、SQLiteは標準ではC言語用のAPIしかサポートしてないから、
同じJavaで書かれているDerbyなりH2DBなりを使った方が幸せになれるよ。

427 :NAME IS NULL:2011/10/25(火) 07:08:48.75 ID:???
>>426
ただの荒らしにマジレスするなよ

428 :NAME IS NULL:2011/10/25(火) 07:10:29.96 ID:???
もう相手するなよ

429 :NAME IS NULL:2011/10/25(火) 07:37:32.19 ID:gceqE9iT
いまどき正規のドライバを配布してないとか
どんだけマイナーなんだよw
アプリから使う想定してないDBなんか使えるかw

430 :NAME IS NULL:2011/10/25(火) 08:09:28.07 ID:gceqE9iT
最新にバージョンアップしたが
sqlite-jdbc-3.7.2.jar

特に改善傾向なし
これは本体DBの問題に間違いないな・・・

そもそも正規のJDBCドライバを配布してないとか
どんだけ糞なんだよ
DBなんてアプリから使われるから存在するんだろ

まさかコマンドラインのみの使用を想定してるのか?w
どんだけ間口が狭いんだよw


この分じゃあ・NET系統ドライバも怪しいな・・・




431 :NAME IS NULL:2011/10/25(火) 08:15:26.05 ID:gceqE9iT
あまりにも糞すぎてワロタ

いや失望した
と言った方がいいな

まさかjavaからの接続に正規サポートすらしてないとか・・・
今の主流言語さえも対応してないのか?
この糞DBは

一体、どういう使われ方を想定してんだ?w
まさかコンソールからのコマンド入力しか想定してねーのか?w

どうせ、・NET系統ドライバも正規対応してねーんだろ?

アプリからは接続非推奨です!キリッ
って書いとけよw



432 :NAME IS NULL:2011/10/25(火) 08:21:04.44 ID:???
何か根本から勘違いしてる気がする

433 :NAME IS NULL:2011/10/25(火) 08:28:46.56 ID:???
おれタダシイ
世界中バカばっか
と思えるところがすごい
普通じぶんがどこか違ってるんじゃないかって思うよね

次に環境も症状も書き込まずに延々内容のないグチしかないのがすごい
インターネットは双方向のコミュニケーションなのに、ググッてなんでも調べられるからオレ、インターネット得意とかいっちゃうタイプ

434 :NAME IS NULL:2011/10/25(火) 09:00:22.17 ID:gceqE9iT
根本的に使えないな・・・

435 :NAME IS NULL:2011/10/25(火) 09:09:50.41 ID:gceqE9iT
これで10万件とか
増やしたらとまるんじゃね?

と懸念してしまうほど糞すぎる

何なら他のdbでも試みてもよい
たとえばh2、あるいはmYsqlなども候補だが

しかし、まさか10万件程度で異常なほど遅いことにはなるまい



436 :NAME IS NULL:2011/10/25(火) 10:12:23.57 ID:???
>>432-433
勘違いとか何とかじゃなくてただのネタなんだから反応するなよ

437 :NAME IS NULL:2011/10/25(火) 10:23:25.90 ID:gceqE9iT
信者が必死だな
事実が糞なんだから仕方ない

438 :NAME IS NULL:2011/10/25(火) 10:26:53.34 ID:gceqE9iT
論理的に反論さえも出来ないカス信者ども

なぁ、アプリ用途に正規ドライバさえも出さないような
糞dbをどうやって使えばいいんだ?
教えてくれよwwww

439 :NAME IS NULL:2011/10/25(火) 10:30:59.97 ID:???
アプリ用途にSQLite使うとか正気とは思えない
プロトタイプとテスト用途に使ってください

どれくらい遅いのか数値なりグラフなり再現可能なデータセットを示してから議論をお願いしますね

440 :NAME IS NULL:2011/10/25(火) 10:31:22.51 ID:???
使わなきゃいい

441 :NAME IS NULL:2011/10/25(火) 11:03:10.02 ID:gceqE9iT
>>439
おらくる---一瞬
糞db---5秒


このデータ突きつけられて
まだ言い訳するのか?

おらくる最強
そして糞dbは使えない、いくらフリーだからって、もっと良いdbあるだろ?


442 :NAME IS NULL:2011/10/25(火) 11:04:24.07 ID:gceqE9iT
> プロトタイプとテスト用途に使ってください

はぁ?W

そのテスト用とさえも使えないんだよ!

何しろアプリと接続したらボトルネックが凄いんだからW
もう実用に耐えれるレベルじゃねーだろ・・・



443 :NAME IS NULL:2011/10/25(火) 12:48:16.95 ID:???
いつまで無駄な時間使ってるの?

444 :NAME IS NULL:2011/10/25(火) 12:58:54.20 ID:???
>441
君のマシンが糞だったんだろうな、FS見直したらどうだろうか

再現性の無いデータに意味はあるのでしょうか

445 :NAME IS NULL:2011/10/25(火) 13:26:35.29 ID:???
だから反応するなって言ってるだろ、糞ども

446 :NAME IS NULL:2011/10/25(火) 13:49:57.26 ID:gceqE9iT
どうしてこんなに糞なんだろうか?

最初使ってた時は軽量で使いやすいと思ってた
気軽にアプリと接続できたし
特に設定いらなかった

型とか、文字数の厳密な定義なしに自動的に拡張してくれる仕組みも
お手軽さは好感していた

しかし、データが万を超えると
急激にレスが悪化するとは・・・
これは予想してなかった・・・
こんな糞DBを使い続けろというのか?
それは勘弁してくれ

447 :NAME IS NULL:2011/10/25(火) 13:51:10.81 ID:gceqE9iT
>>444
再現性もなにも
毎回異常にレスポンスが遅いんだが
つまり再現率100パーセントだ!

こんな糞DBは使いたくないよ・・・

448 :NAME IS NULL:2011/10/25(火) 14:32:21.03 ID:???
じゃあ使うなって。
お前はここに何を求めて書き込んでるんだ。

449 :NAME IS NULL:2011/10/25(火) 14:38:17.40 ID:???
餌を与えちゃダメだよ
おねだりの芸を始めるようになるから

450 :NAME IS NULL:2011/10/25(火) 15:32:56.98 ID:gceqE9iT
おらくると比べるのは
確かに酷だが

それにしても
たった数万件の問い合わせ如きで異常な遅延が」発生するって
もう絶句だわ・・・


どうやって
こんな糞dbを使えばいいんだ?







451 :NAME IS NULL:2011/10/25(火) 18:31:38.06 ID:???
ここまで粘着されると逆に興味湧かない?w

単なる荒らしって面白くもなんとないし自分に得られる事も何一つとして無い無駄な時間じゃん。

何か目的があるんだろうけど、具体的な構成や問い合わせ方法を聞いても答えが返ってこないのを
見ると、煽って問題無い実例を引き出そうとしてんのかな?

452 :NAME IS NULL:2011/10/25(火) 18:50:14.24 ID:???
既に俺は哀れんですらいるよ。
余程の糞案件にぶち当たって鬱憤晴らしたいんだろうな、とか。

453 :NAME IS NULL:2011/10/25(火) 19:17:26.59 ID:???
いや、性能も何もみんなネタだろ

454 :NAME IS NULL:2011/10/25(火) 19:24:47.54 ID:gceqE9iT
ネタならどんだけいいか
期待していた分、コレだよ・・・



455 :NAME IS NULL:2011/10/25(火) 19:30:46.17 ID:gceqE9iT

どうしてだろうな?

「主キーで検索してるだけ」なんだが
こんなにレスが遅い理由がわからんよ

単純に件数が多いから?

つまり糞dbでFA?


456 :NAME IS NULL:2011/10/25(火) 20:18:16.12 ID:???
>>454
ネタじゃないならマジレスしてやるが、どうしてもSQLiteを使わないといけない案件を抱えていて、
遅くて困ってるなら相談に乗るから、その「主キーで検索してるだけなのに遅い」現象の再現ソースを全部貼れ。

出来ないなら、糞DBかどうかFAを出す材料が無い(最新版とやらのJDBCドライバだって怪しい)し、
遅いと言っているのが本当かどうか証明にもならないから、他の組み込みDBに乗り換えろ。さようなら。

上でも書かれてるけど、SQLiteはC言語用の組み込みDBだからC言語のAPIしか提供していないし、
DerbyはJava言語用の組み込みDBだからJava言語のAPI(JDBC)しか提供してない。組み込みDBってのはそういうもの。
特に理由も無いのに、正規にサポートされてない言語のAPIを使って文句を言うのはただの馬鹿。

あと、速くて素敵なOracle社はSQLiteのスポンサーなので、遅いのが本当ならOracleにも文句言っとけば?

457 :NAME IS NULL:2011/10/25(火) 20:23:51.56 ID:gceqE9iT

> 上でも書かれてるけど、SQLiteはC言語用の組み込みDBだからC言語のAPIしか提供していないし、


この書き方だとCからの呼び出しなら
ちゃんと遅延なく結果が返ってくるように読み取れるんだが

どうせCでも遅いんだろ?

一回試してみるから
そのCのライブラリとやらを教えてくれ

取得部分だけCで書いてみる
そして、それをJAVAから呼び出す



458 :NAME IS NULL:2011/10/25(火) 21:04:21.92 ID:???
>>456
100%ネタなんだからマジレスするなっつってるだろ

459 :NAME IS NULL:2011/10/25(火) 22:01:01.28 ID:???
>>457
知識不足乙。「SQLite」が、C言語で書かれたライブラリの名前。
SQLiteというDBMSがあって、それに接続するためのC言語のライブラリが配布されているわけじゃない。

お前が使っているJDBCドライバも含めて、色んな人が趣味で書いて公開しているSQLiteのJDBCドライバは、
まさにその「取得部分だけC」で書いて、インターフェースをJavaのJNIで叩く、ということをやってるだけ。

その怪しいJDBCドライバの中によほど余分な処理が詰め込まれてるなら別だが、基本的にJNIでもJNAでも
速度を求めるには使い物にならないほど遅いから、わざわざ同じものを自作しても結果が変わらずに時間を無駄にするだけ。
そもそもJavaからCは色々無理がある。別のプロセスを呼び出しなんてやったら更に遅いしね。
まあ、自作して少しでも速度が改善するようなら、JDBCドライバの作者がアホだったことの証明にはなるかもしれんが…。

マジレスついでに聞くけど、そこまでしてSQLiteを使わないといけない理由は?
使い物にならないなら使わなけりゃ良いだけだし、再現ソースも貼らずに文句垂れてるだけだから、ネタにしか見えない。
「SQLiteじゃないと駄目な理由」が言えないなら、ネタは終わりにしてOracle DBを使え。

>>458
マジレスしたいお年頃だったんだ。ごめんね。

460 :NAME IS NULL:2011/10/25(火) 22:26:35.84 ID:gceqE9iT
> その怪しいJDBCドライバの中に


最新にバージョンアップしたが
sqlite-jdbc-3.7.2.jar



これが怪しいのか?
一般に公開されていて、他のサイトでも紹介されてるようだが
何でお前如きが「怪しい」と断言できるんだ?

それなりに定評あるドライバじゃないのか?


まぁ糞dbであることには間違いないがねw







461 :NAME IS NULL:2011/10/25(火) 22:28:52.34 ID:gceqE9iT
>>459

そもそも「公式のドライバ」が無い時点でおかしいだろ!
アプリから接続を想定してないのか?

一体、どんなアプリだったら「公式」の接続が想定されてるんだ?w
お前なら知ってるだろ?w



それともコマンドラインしか使えない糞dbでFAか?


462 :NAME IS NULL:2011/10/25(火) 22:35:11.61 ID:gceqE9iT


> まさにその「取得部分だけC」で書いて、インターフェースをJavaのJNIで叩く、ということをやってるだけ。


sqlitejdbc.dll

まさにコレのようだが
コイツが糞と言いたいのか?

まぁ実際に糞ロジックなんだろうがw


それとも取得部分のsqliteパッケージのコードも糞と言いたいのか?

まぁ実際に糞ロジックなんだろうがw


dbも含めて全部糞なのは間違いない
そこだけは意見は一致するw







463 :NAME IS NULL:2011/10/25(火) 22:36:26.14 ID:gceqE9iT


まぁソースがあるから

どこがボトルネックになってるか
追跡も可能だが

どうせ本体も糞なんだからなぁw



464 :NAME IS NULL:2011/10/25(火) 22:44:28.34 ID:???
朝から晩までご苦労様です

465 :NAME IS NULL:2011/10/25(火) 22:52:50.90 ID:???
ふと思うんだが、Oracleってまだ結構使われてるの?
金融系でもMySQLとか増えてるし、KVSにも流れてるし

466 :NAME IS NULL:2011/10/25(火) 23:36:41.09 ID:???
>>460
本当に朝から晩まで中身の無いレス乙。
ますます文章が支離滅裂になってきたな。

一般に公開されていて、他のサイトで紹介されていても、
「怪しくない」ことの証明にも「それなりに定評がある」ことの証明にはならねえよ。
それとも、怪しくなくて、それなりに定評があったら速度も速いのか?

「SQLiteはCライブラリの名前」だと言っているだろう。「SQLite」という、C言語で使うdllファイルが配布されているだけ。
「公式()笑にJavaから利用できるドライバ」の時点で意味が通じない。Javaの勉強をし直してこい。
馬鹿に分かりやすく説明するなら、「access.dllは公式のドライバが無い時点でおかしい!」と言ってるのと同じ。

あと、馬鹿だから理解できてないみたいだけど、
SQLite本体 + 「取得部分だけC」 = sqlitejdbc.dll で、
sqlitejdbc.dll + 「それ用のJDBCドライバ」 = sqlite-jdbc-3.7.2.jar
だから、ネックはSQLite本体だけじゃなくて、sqlitejdbc.dllにある可能性も、JDBCドライバにある可能性もあるぞ。

もちろん、お前が書いたソースやSQLクエリにネックがある可能性もあるが、
再現ソースが無いなら、そこに問題が無いことの証明と、ネタじゃないことの確認ができないから、やっぱりネタ乙。

何かを質問したりする気が無いなら板違いだから、馴れ合い板か、自分のブログにでも書いてろ。

467 :NAME IS NULL:2011/10/25(火) 23:41:30.14 ID:???
>>465
使うところでは結構使われてるよ。
流れているとは言っても、そう簡単には減らないと思う。

OracleはOracleでSQLiteのAPIをBerkeley DBに載せてみたりして
KVSや、それ以外の可能性も色々試しているように見えるけど…w

468 :NAME IS NULL:2011/10/25(火) 23:52:48.09 ID:???
他のDBが少し増えた、という程度で、Oracle自体が減ったというほどじゃないような。

469 :NAME IS NULL:2011/10/25(火) 23:57:13.43 ID:gceqE9iT
>>466
お前って馬鹿だろ?w

どうしようもない馬鹿だな
一回視ねよw


oracleで一瞬で帰ってくるクエリが
同じくそのまま糞DBで使ってるだけなんだが

何度もそういってるのに理解できないのか?

脳みそ入ってますか?w


確実に糞dbのせいだぞw

解釈のオプティマイザが糞なのか
ドライバの問題なのか

dllも糞なのか知らんが

あぁ全部糞の可能性も高いなw




それとも糞dbには糞SQLを専用に書き直さないとならんのかね?w




470 :NAME IS NULL:2011/10/26(水) 00:00:10.28 ID:UVgFZr+f
> SQLite本体 + 「取得部分だけC」 = sqlitejdbc.dll で、


何いってるんだ?コイツw
脳みそあるのか?

「sqlitejdbc.dll」 自体が糞dbの本体だろ!

それさえも知らんのか?w
一回視ね


この糞dll自体がとてつもなく極悪なつくりになってるんだろうなぁw
マジで使えないわ

まだH2の方が遥かに使えるんだが

何とかしろよ
糞dllを書き直すなりしろよ糞PG




471 :NAME IS NULL:2011/10/26(水) 00:08:05.89 ID:???
いくら吠えても、自分でJavaへのコネクタをC言語で書けない時点で負け犬だろjk

472 :NAME IS NULL:2011/10/26(水) 00:09:34.20 ID:???
>>459,>>466,>>470
「荒らしをスルーできない人もまた荒らし」って言葉、知ってる?

473 :NAME IS NULL:2011/10/26(水) 00:10:27.66 ID:???
間違った、>>470は元荒らしか

474 :NAME IS NULL:2011/10/26(水) 00:13:37.02 ID:???
>>472
日付が変わってIDが違うだけで、>>470は荒らし本体と思ふ。
吠えてると言っても、自分に都合の悪い正論は全部読み飛ばしているだけの遠吠え。

>>465
あんまり詳しくないんだけど、金融系でKVSって、例えば何を使うんだろう?

475 :NAME IS NULL:2011/10/26(水) 00:20:07.43 ID:???
再現ソースを貼らない限り、それが「oracleで一瞬で帰ってくる」かどうかすら証明できてない。口では何とでも言える。

476 :NAME IS NULL:2011/10/26(水) 00:22:15.58 ID:UVgFZr+f
sqlに特殊性なんてあると思ってるのか?w


他のDBでも試しても良いが

間違いなく
糞db以外は一瞬で帰ってくるだろうよ

MYSQLが良いか?それともH2でさえ一瞬で返してくれるさ

たった数万件だぜ!

この程度の問い合わせで一瞬で返してくれない糞仕様dbを体験したのは初めてだぜ・・・




477 :NAME IS NULL:2011/10/26(水) 01:02:45.28 ID:???
俺が使ってるsqliteのdbもたった数万件だけど、oracleと同じクエリ投げて一瞬で帰ってくるから>>476のsqliteが遅くても正直どうでもいい。

478 :NAME IS NULL:2011/10/26(水) 01:18:13.61 ID:???
俺が使ってるSQLiteもたった数百万行のDBだが一瞬でSELECT返ってくるから他の奴がいくら遅くてもどうでもいい

479 :NAME IS NULL:2011/10/26(水) 01:19:31.27 ID:???
なんでSQLiteのdllで検証しないのか

なんで朝から晩まで粘着しているのか

データベースのスキーマは?

480 :NAME IS NULL:2011/10/26(水) 01:49:43.42 ID:UVgFZr+f

しかし糞DBは
何という遅さなんだ?

マジで使う気がしないわ

どうやったら数万程度の問い合わせでこうなるんだ?

データが10万件超えたらどうなるんだ?

もうすぐ増えると思うが


考えただけでも怖いわ・・・・




481 :NAME IS NULL:2011/10/26(水) 01:51:14.74 ID:rCz++wh/
俺が使ってるのは200万件くらいのSQLite DBだが、リレーションの親子関係も含んだ
それなりに複雑なクエリーでも 20ms くらいで結果が取得できてる。

どうせ >>476 が作った DB は「主キー」とやらがただのカラムで、
インデックスなんか1個も作ってないんだろう。


482 :NAME IS NULL:2011/10/26(水) 01:56:19.59 ID:???
>>467
> OracleはOracleでSQLiteのAPIをBerkeley DBに載せてみたりして
kwsk

483 :NAME IS NULL:2011/10/26(水) 01:57:06.56 ID:UVgFZr+f
馬鹿がいるなぁ

明確にPRIMARI KEYでテーブル作成して
そして主キーで検索かけてるんだが

これでも現実を否定するのか?

信者はツライなぁww



お前の言う複雑なクエリってのが

どうせwhere句に条件チョット入れただけのお子様SQLだろうがw



484 :NAME IS NULL:2011/10/26(水) 01:58:13.20 ID:???
月別、日別などにして、肥大化させないと速い。

485 :NAME IS NULL:2011/10/26(水) 01:58:47.73 ID:UVgFZr+f


ひょっとして糞dbってに
PRIMARI KEY
と指定しても

アホだからインデックス構造すらないのかな?www

どうりで検索アホなわけだよwww


なーんだ基本のにPRIMARI KEY構造さえも無かったのかよww
そりゃ使えんわwww




486 :NAME IS NULL:2011/10/26(水) 01:59:12.86 ID:???
起動時、チェック時が時間くう。サイズが小さいと速い。

487 :NAME IS NULL:2011/10/26(水) 02:00:03.68 ID:UVgFZr+f

俺が間違ってたよ

万を超えるデータになってしまったのが悪かった

糞dbに万以上の問い合わせなんて土台無理だったんだよ・・・
すまんな糞dbと糞信者ども

ざまぁwww



488 :NAME IS NULL:2011/10/26(水) 02:02:03.28 ID:???
>>483
いえいえ、自称PRIMARY KEY(笑)だけで検索するような
赤ちゃんSQLよりは遥かに複雑でございますよ

で、CREATE TABLE と SELECT 文はいつになったら
見せてくれるんですかね?


489 :NAME IS NULL:2011/10/26(水) 02:03:47.05 ID:UVgFZr+f
>>488
明確にPRIMARI KEYでテーブル作成して
そして主キーで検索かけてるんだが


それでも
たった数万件で超絶遅延が起こるワケだが



これでも現実を否定するのか?
信者はツライなぁww

ないてるのか?ww




490 :NAME IS NULL:2011/10/26(水) 02:06:03.22 ID:???
>>489
そりゃぁ PRIMARI KEY (爆笑) じゃぁ主キーにはならないよなぁw


491 :NAME IS NULL:2011/10/26(水) 02:08:24.03 ID:UVgFZr+f


はぁ・・・

しかし、こんな糞dbは今まで見たことも聞いたことも無いわ


普通は主キーで問い合わせるのが一番高速なのだが

この糞dbには主キーの概念すらないのか?

どうせ
テーブル作成時の指定なんて、ただの飾りなんだろwww


そりゃサーバーとして動いてないような糞dbなんだから
マジでお子様db以下だよ

こんな糞dbに大事なデータなんて預けられんわ




492 :NAME IS NULL:2011/10/26(水) 07:18:06.98 ID:???
だんだん面白くなってきた。
このままずっと続けていって欲しい。

493 :NAME IS NULL:2011/10/26(水) 07:26:18.32 ID:???
なんか開発してるみたいだけど
その生産力の無さに驚くわ

494 :NAME IS NULL:2011/10/26(水) 08:01:37.43 ID:???
>>482
最近のBerkeley DB。
http://www.oracle.com/jp/products/database/berkeley-db/index.html

Wikipediaにもちょっと説明があるよ。
http://en.wikipedia.org/wiki/Berkeley_DB#Architecture


ちなみに、OracleがSQLiteに出資し始めたのが去年。(その前から色々やってはいたみたいだけど。)
http://blogs.oracle.com/berkeleydb/entry/oracle_join_the_sqlite_consort
http://journal.mycom.co.jp/news/2010/07/06/032/index.htm

495 :NAME IS NULL:2011/10/26(水) 12:49:43.80 ID:???
というかoracleとsqliteの二択ってどんな案件

496 :NAME IS NULL:2011/10/26(水) 12:54:54.20 ID:???
pure java のファイルDBってなかったっけ?

497 :NAME IS NULL:2011/10/26(水) 12:56:10.23 ID:???
oracleは別立ての鯖で動いてるってオチじゃなかろうな。

498 :NAME IS NULL:2011/10/26(水) 22:03:31.63 ID:???
20万件ほどのデータに対して、主キーに条件を入れて検索したら、瞬殺だよ。
ちなみに、ODBC経由。
javaは知らん。
どうせvacuumやreindexとかやってないんだろ。

499 :NAME IS NULL:2011/10/26(水) 22:23:10.63 ID:???
>>496
いくらでもあるよ。

500 :NAME IS NULL:2011/10/27(木) 11:12:09.78 ID:VqqPO7vL
H2

3万ほどデータ突っ込んでみた

問い合わせ一瞬



501 :NAME IS NULL:2011/10/27(木) 11:13:28.88 ID:VqqPO7vL

おらくる
H2


一瞬だった


さて糞dbは?数万件のデータで糞遅延・・・



使い門にならんよ



502 :NAME IS NULL:2011/10/27(木) 11:21:50.87 ID:VqqPO7vL


javaで書かれた
H2さえ一瞬だぞ


Cで書かれたという糞db様は?
えっ?遅延だと?

使い物にならんね・・・

503 :NAME IS NULL:2011/10/27(木) 11:22:59.78 ID:VqqPO7vL


間違いなく

sqlliteは糞dbである
ことが証明されました!


この糞dbを使いこなすには
特殊な技術がいるんかね?

特殊技能認定受けてるのかね?ww



504 :NAME IS NULL:2011/10/27(木) 12:00:03.50 ID:???
>>498
だよね。 sqliteでも数万件程度なら一瞬で検索が終わる。
上のほうで遅い遅いと騒いでる人がいたけど、問題解析能力が
無いのかな。

505 :NAME IS NULL:2011/10/27(木) 12:01:02.61 ID:???
むむ、レス番が飛んでるぞ。
例の荒らしがNGパターンに引っかかったのか

506 :NAME IS NULL:2011/10/27(木) 16:56:36.88 ID:VqqPO7vL


H2

5万件データ

初回問い合わせ 0.5秒

次回からはキャッシュが利いてるようだ
一瞬



どっちにしても一瞬の出来事だ





507 :NAME IS NULL:2011/10/27(木) 16:57:09.01 ID:VqqPO7vL


さて
糞dbは?


数秒もかかるんだけど、それも毎回


なんで、こんなに糞なの?




508 :NAME IS NULL:2011/10/27(木) 16:58:05.37 ID:VqqPO7vL



全くロジックは同じ


・Oracle さすがの一瞬


・H2意外に高速



・糞db、やっぱり糞は糞ですね・・・


もう糞dbを使うのは疲れるよ・・・




509 :NAME IS NULL:2011/10/27(木) 17:03:55.59 ID:VqqPO7vL


おらくるに勝てないのは
仕方ない

だがH2でも一瞬で出来ることが

なんで糞dbになると出来ないの?
糞だから?
それを言っちゃあおしまいだよ


510 :NAME IS NULL:2011/10/27(木) 20:37:40.45 ID:???
>>509
何度も自分でいっとるやん。議論おわっとるやん。議論する気無いやん。
前も聞いたんだが、ここに何を求めて来てるの?
問題を解決する手段が欲しいのなら状況をきちんと晒せと言われてるし、貴方以外の環境での反論も出てるわけだが、それへ反証する気も無いの?

511 :NAME IS NULL:2011/10/27(木) 21:03:31.20 ID:???
>>510
荒らしてれば、同じ環境でこれだけ速いみたいな反証が出てくると思ってるんじゃない?

512 :NAME IS NULL:2011/10/27(木) 21:28:59.08 ID:VqqPO7vL
>>510
> 状況をきちんと


俺のレスをちゃんと読んだ?

これ以上
どう説明しようがあるんだ?


主キーで検索して、このザマだぞ・・・

こんな糞db使いたくないよ




513 :NAME IS NULL:2011/10/27(木) 21:46:11.95 ID:???
     /: : : : : __: :/: : ::/: : ://: : :/l::|: : :i: :l: : :ヽ: : :丶: : 丶ヾ    ___
     /;,, : : : //::/: : 7l,;:≠-::/: : / .l::|: : :l: :|;,,;!: : :!l: : :i: : : :|: : ::、  /     ヽ
    /ヽヽ: ://: :!:,X~::|: /;,,;,/: :/  リ!: ::/ノ  l`ヽl !: : |: : : :l: :l: リ / そ そ お \
   /: : ヽヾ/: : l/::l |/|||llllヾ,、  / |: :/ , -==、 l\:::|: : : :|i: | /   う う  前  |
.   /: : : //ヾ ; :|!: イ、||ll|||||::||    ノノ  イ|||||||ヾ、 |: ::|!: : イ: ::|/   な 思 が
   /: : ://: : :ヽソ::ヽl |{ i||ll"ン    ´   i| l|||l"l `|: /|: : /'!/l     ん う
 ∠: : : ~: : : : : : : :丶ゝ-―-      ,  ー=z_ソ   |/ ハメ;, :: ::|.   だ ん
   i|::ハ: : : : : : : : : : : 、ヘヘヘヘ     、  ヘヘヘヘヘ /: : : : : \,|.   ろ な
   |!l |: : : : : : : : :、: ::\    、-―-,      / : : :丶;,,;,:ミヽ   う  ら
     丶: :ハ、lヽ: :ヽ: : ::\__  `~ "      /: : ト; lヽ)   ゝ
       レ `| `、l`、>=ニ´        ,  _´ : :} `   /
         ,,、r"^~´"''''"t-`r、 _  -、 ´ヽノ \ノ   /    お ・
       ,;'~  _r-- 、__     ~f、_>'、_         |  で  前 ・
      f~  ,;"     ~"t___    ミ、 ^'t         |  は  ん ・
      ,"  ,~         ヾ~'-、__ ミ_ξ丶     |  な  中 ・
     ;'  ,イ ..          ヽ_   ヾ、0ヽ丶    l         /
     ( ;":: |: :: ..          .`,   ヾ 丶 !    \____/
     ;;;; :: 入:: :: ::      l`ー-、   )l   ヾ 丶
     "~、ソ:: :い:: :     \_  ノ ,    ヾ 丶

514 :NAME IS NULL:2011/10/27(木) 21:47:25.59 ID:???
おい・・・
まさか延々とつぶやいていたのは状況を説明していたつもりだったのか・・・

515 :NAME IS NULL:2011/10/27(木) 22:00:11.98 ID:???
糞なら使うなよ。いつまでも、未練がましい。

516 :NAME IS NULL:2011/10/27(木) 22:14:01.51 ID:???
だからネタにマジレスするなよ。それこそ荒らしの思う壷。

517 :NAME IS NULL:2011/10/28(金) 00:00:52.79 ID:???
道具も使う側次第ってのはITいりゃすぐわかると思うんだがな〜

518 :NAME IS NULL:2011/10/28(金) 00:26:57.83 ID:???
適材適所
SQLiteはどの環境でもすぐ使える手軽さだけで十分
中規模以下のアプリケーションにしか使わないし問題ない

519 :NAME IS NULL:2011/10/28(金) 00:54:15.68 ID:???
他に話す事もないんだよな
大抵の疑問点は本家で解決するから
そんな物にも躓ける ID:VqqPO7vL がうらやましい

520 :NAME IS NULL:2011/10/28(金) 08:31:43.42 ID:rXEAeOdb
使いこなす?w

主キー検索で問い合わせてるのに
マトモに返してくれない
遅延糞dbをどうやって使いこなせば良いんだ?w

裏技でもあるんか?w


521 :NAME IS NULL:2011/10/28(金) 11:03:46.68 ID:???
主キー主キーと連呼する様を見てると
覚えたての専門用語を縦に、詳しい人たちの中に割って入ろうとする馬鹿みたいで
ほほえましいな

522 :NAME IS NULL:2011/10/28(金) 16:00:11.78 ID:rXEAeOdb
一応おらくるのPなんだがw

523 :NAME IS NULL:2011/10/28(金) 17:37:40.70 ID:???
oracleのP持ち様がsqlite如きにこんな時間割いて構ってくださるなんて
通常ありえないことだよな。ありがてぇありがてぇ。

524 :NAME IS NULL:2011/10/28(金) 18:32:42.40 ID:rXEAeOdb

ほぅ、その存在を知っているのかね君は

もちろん
糞dbには無い資格なのだよ


ちなみにP取ったら
バッチと賞状が貰えるの知ってたかね?



525 :NAME IS NULL:2011/10/28(金) 18:33:31.48 ID:rXEAeOdb

ついでに
嬉しくてクリアケースも買っちゃったw

商売上手なおらくるだよw


526 :NAME IS NULL:2011/10/28(金) 19:38:31.96 ID:???
おっさんがついていけなくて拒否反応出してんのかと思ってたらPです(キリッってガキじゃねーかよw

527 :NAME IS NULL:2011/10/28(金) 19:40:55.91 ID:rXEAeOdb
驚いたか?

お前らと素養が違うんだよ

底辺の諸君、どうだね?w
糞dbは楽しいかね?w


528 :NAME IS NULL:2011/10/28(金) 20:03:31.14 ID:???
俺もoracle p持ちだけどsqliteに主キー検索で問い合わせて高速に帰ってくるから、もっと素養が高いわ。

529 :NAME IS NULL:2011/10/28(金) 20:06:14.12 ID:rXEAeOdb
羨ましいか?w

ここの馬鹿住民に

スーパーマンの俺が登場したのも何かの縁だ


糞dbの無力さと
信者の馬鹿さ加減を思い知るが良い

530 :NAME IS NULL:2011/10/28(金) 20:12:23.99 ID:???
>>529の無力さと、オラクル信者の馬鹿さ加減を思い知ることができた。
ありがとう。

531 :NAME IS NULL:2011/10/28(金) 20:16:31.50 ID:rXEAeOdb
どういたしましてw


さて酒気ーでさえ糞遅いのならんとかならんかね?

催促の
インデックスなんだが

データ的にはこのインデックスで最適なんだがねぇ

データが重複が多いのなら、別のインデックスを考慮するが


ユニークなデータだからな



勿論他のDBではH2も高速だった


つまり結論は糞dbは劇主ということだ




五時変換は許せ
治すのメン土井w


おrくるのPより








532 :NAME IS NULL:2011/10/28(金) 20:27:06.03 ID:???
PってPinkってことでいいんだよね?

533 :NAME IS NULL:2011/10/28(金) 20:28:43.05 ID:rXEAeOdb

好きに解釈してくれ



534 :NAME IS NULL:2011/10/28(金) 20:30:08.34 ID:???
うわ1分で返ってきた。気持ち悪い。

535 :NAME IS NULL:2011/10/28(金) 20:52:10.83 ID:rXEAeOdb



糞dbを使いながら


楽しいか?



全く使えんし使う気にも慣れん



歩優れ・マイ、いるんなdb使ってきたが


これほど糞dbははじめた


糞すぎるな信者も糞だ






536 :NAME IS NULL:2011/10/28(金) 20:57:14.28 ID:???
全角英数は馬鹿しかいない定説の好例をありがとう

537 :NAME IS NULL:2011/10/28(金) 20:57:21.00 ID:???
Enterを押す手の震えが激しくなってるようですが
アルコールが切れてませんか?

538 :NAME IS NULL:2011/10/28(金) 21:01:26.39 ID:rXEAeOdb


さて糞db信者の諸君



そろそろ糞dbなんて
見切りつけていいかね?




馬鹿馬鹿しいよ

使う気になれんのだ


539 :NAME IS NULL:2011/10/28(金) 21:09:49.89 ID:???
そうですか

540 :NAME IS NULL:2011/10/28(金) 21:20:30.30 ID:rXEAeOdb


そろそろ


こんな糞dbは見切りつけようと思う



だって糞なんだもん


主キーで問い合わせてこんなレスだよ


壊れてるんじゃね?設計段階からw




541 :NAME IS NULL:2011/10/28(金) 21:58:49.37 ID:???
文章がおかしいと思ったら日本人じゃないのか。納得。

542 :NAME IS NULL:2011/10/28(金) 22:10:14.30 ID:rXEAeOdb


残念だが



おらくるPtosite


もう・・・



ああ、なんちう糞dbなんだよ


主キーで検索かけてるのに

このザマですか?


糞dbすぎるんだが



543 :NAME IS NULL:2011/10/28(金) 22:19:46.15 ID:???
無駄な改行といいずいぶん若い奴だな
厨房かも知れん

544 :NAME IS NULL:2011/10/28(金) 22:25:27.15 ID:???
いい年したおっさんがやってたら
痛いを通り越して哀れみを感じる

545 :NAME IS NULL:2011/10/28(金) 22:35:52.89 ID:???
ちょっとビックリしたね

546 :NAME IS NULL:2011/10/28(金) 23:40:11.84 ID:rXEAeOdb


驚くなよ

おれがPだからと言って

そりゃマスタだからね


俺は君の、おまいらの一億倍のスキルもってんだよ



それでも糞dbには手を焼いてるけどね




547 :NAME IS NULL:2011/10/28(金) 23:48:17.32 ID:???
驚いた。俺と同じPなのに、俺が高速で出来る「SQLiteで主キーで検索」が出来ないなんて…。
きっと、君は俺の一億分の一くらいのスキルしか無いんだろうな。

548 :NAME IS NULL:2011/10/28(金) 23:51:37.13 ID:rXEAeOdb

糞dbは知らんのだよぉ

おらくる様なら
どのインデックスで検索するとか
統計情報で分析するんだがねぇ

なんせ糞dbだから、たちが悪いんだよねぇ・・・

困ったなぁ




549 :NAME IS NULL:2011/10/29(土) 00:11:18.97 ID:???
ちっとぐぐったらこういうページが見つかった。
ttp://kzworks.at.webry.info/200809/article_67.html
レコードのサイズが大きくてOSのメモリを使い切ってしまうことがあったみたい。
今でもそうなのかは素人なのでよく分からない。


550 :NAME IS NULL:2011/10/29(土) 00:26:06.60 ID:???
>>549
資源の上限の話だったら本家のドキュメントにちゃんと書いてあるよ。
http://www.sqlite.org/limits.html

551 :NAME IS NULL:2011/10/29(土) 01:05:19.78 ID:???
自分の使えないものはダメなもの

こんな考えを持つゆとりさんが増えているようです

552 :NAME IS NULL:2011/10/29(土) 02:42:41.90 ID:???
>>550
勉強になりました。感謝。


553 :NAME IS NULL:2011/10/29(土) 10:23:39.42 ID:bPqXvzbh


s2とすぷりんぐマスターの俺


おらくるPの俺


でも糞dbだけは解析する気せんせん

時間の無駄だよ
こんな糞db



554 :NAME IS NULL:2011/10/29(土) 10:35:43.25 ID:???
おはようございます。今日精が出ますね。

555 :NAME IS NULL:2011/10/29(土) 11:44:55.06 ID:bPqXvzbh

糞db

きらいだぁ


556 :NAME IS NULL:2011/10/29(土) 12:02:02.44 ID:???
人の話を聞く気無し、問題解決をする気無し、挙句の果てに架空の資格取得自慢話。

プラチナ持ってる奴って、こんなに頭悪いわけないよね?

むかつく上司が持ってるけど仕事はできる。
尊敬する上司も持ってるけど、こっちも当然仕事できる人。

単なる荒らしと思わざるを得ないんだが、
こうゆう荒らしって、そんなに面白いもんなのか?純粋に不思議だわ。

557 :NAME IS NULL:2011/10/29(土) 12:31:43.30 ID:???
昔のプラチナは大したことないらしいよ

558 :NAME IS NULL:2011/10/29(土) 12:40:15.68 ID:???
>>555
毎日楽しみにしてます
これからももっと長文いっぱいお願いします

559 :NAME IS NULL:2011/10/29(土) 14:05:14.46 ID:bPqXvzbh
>>557
。。。。


それ言うか世w

板ww
ぐさっときたぞぉ



560 :NAME IS NULL:2011/10/29(土) 15:51:00.88 ID:???
これがエアー資格ってやつなのか

561 :NAME IS NULL:2011/10/29(土) 15:55:16.63 ID:bPqXvzbh
Phaほんとだよぉ

嘘いうりゆうないじゃん


562 :NAME IS NULL:2011/10/29(土) 20:31:50.51 ID:bPqXvzbh

実はじゃヴぁとおらくるの達人なのdれすよ

ふぁふぁふぁ

なんでもきいてよ

563 :NAME IS NULL:2011/10/30(日) 12:52:59.26 ID:???
今日はおらくるPさん来ないのかな
毎日楽しみにしてるんだけど

564 :NAME IS NULL:2011/10/30(日) 13:44:50.73 ID:VHdVZn4y
pですお

565 :NAME IS NULL:2011/10/30(日) 16:21:06.53 ID:???
もっと、僕のSQLiteをもっといっぱいdisってくださいハァハァ

566 :NAME IS NULL:2011/10/30(日) 16:22:12.35 ID:???
お前のものじゃねえよ

567 :NAME IS NULL:2011/10/30(日) 16:24:26.73 ID:VHdVZn4y

糞db
全く使えん

どうして・・・

酒気ーでkんさくしてろのに
このザマかよ

糞すぎてつかうきなくしたわ




568 :NAME IS NULL:2011/10/30(日) 16:34:47.08 ID:???
笑いが止まらなくなった。
なんかに似てるよな〜と思ったらバイオの日記じゃんw

「やと ねつ ひいた も とてもかゆい 」

569 :NAME IS NULL:2011/10/30(日) 16:37:46.97 ID:VHdVZn4y

使えないdb

誰が何とかしてくるのか

立ち尽くすような絶望の日歩

さぁ立ち上がろう、

でも糞dbのせいsで経ちあがっれないよぉ・・・


なんでこんなに糞なの?


なんで主きでアクセスsちえるのに治安するの?

誰か教えて


570 :NAME IS NULL:2011/10/30(日) 16:37:53.65 ID:???
かゆい うま

571 :NAME IS NULL:2011/10/30(日) 17:07:01.85 ID:???
同じ事を何度も何度も繰り返し書き込むのは、なんて病気だっけ?

むしろ、これbotか?

572 :NAME IS NULL:2011/10/30(日) 17:14:06.90 ID:VHdVZn4y
同じdbをしつこく使うあば
馬鹿って誰?

信者?それとも病気?W


573 :NAME IS NULL:2011/10/30(日) 17:39:13.59 ID:???
もっと、もっと罵ってくださいハァハァ

574 :NAME IS NULL:2011/10/30(日) 17:39:54.62 ID:VHdVZn4y
信者って
きもい

575 :NAME IS NULL:2011/10/30(日) 18:51:13.21 ID:???
信者ってのがよく分からんけど、このスレに書いてる奴はSQLiteしか使わないとでも思ってるのか?

576 :NAME IS NULL:2011/10/30(日) 19:28:21.90 ID:VHdVZn4y
うん

577 :NAME IS NULL:2011/10/30(日) 19:32:45.21 ID:???
なんだ。ただの馬鹿だったのか。

578 :NAME IS NULL:2011/10/30(日) 19:37:20.91 ID:VHdVZn4y
信者って
どうして阿呆なんだ?

こんな糞dbを後生大事にしてどーなるwww

579 :NAME IS NULL:2011/10/30(日) 19:39:34.67 ID:???
なるほど。ここ数日間で一番スレに書き込んでるに違いない>>576は、素晴らしすぎるSQLiteをもっと広めるために頑張ってる、と。
すげぇな。高度すぎて分からなかったわ。

580 :NAME IS NULL:2011/10/30(日) 19:57:28.37 ID:???
糞dbってだけじゃなくてもっと酷く罵ってくださいハァハァ

581 :NAME IS NULL:2011/10/30(日) 20:02:27.39 ID:VHdVZn4y

素晴らしいdbですよ

本当に層思います

僕らの忍耐力を鍛えてくれる

いつ帰ってくるかもわからんほど
待たされる

そのいらいらを我慢しなきゅならん


そういう意味では最高の精神鍛錬のdbですよww



582 :NAME IS NULL:2011/10/30(日) 20:03:21.75 ID:VHdVZn4y

このdbは
僕らに我慢の大切さをおしえてくれましたwww

主キで問い合わせても
糞遅いこともあるんだ

だから我慢しなきゃ

そう教えてくれる最高のdbですよwww



583 :NAME IS NULL:2011/10/30(日) 22:39:50.29 ID:???
全然我慢できてねえじゃん。

584 :NAME IS NULL:2011/10/30(日) 22:56:09.90 ID:VHdVZn4y

何でkんな糞使い続けなきゃならんの?

もう限界だわ

見切りつけていいかな?


我慢の限界だわ



585 :NAME IS NULL:2011/10/30(日) 23:12:20.51 ID:???
別に誰も強要してないんだから、使いたくなければ使わなければいいだろ。

586 :NAME IS NULL:2011/10/30(日) 23:44:41.12 ID:???
>>440で答えは出てたんだけどな

587 :NAME IS NULL:2011/10/31(月) 00:21:11.03 ID:y87CNCpL

しかし、主キーで検索かけてうのに

何で糞なんだろうな

遅延にもほどがあるんだが

いい加減にしないと

もう二度と使う気が起こらんよ


だってH2でさえ一瞬なんだが



588 :NAME IS NULL:2011/10/31(月) 00:25:36.75 ID:???
今日の分のNGIDをこんなに早く提供してくれるとは

589 :NAME IS NULL:2011/10/31(月) 00:41:11.45 ID:y87CNCpL

糞dbなんて嫌いだからね


俺をNGにしたら

一日たりともスレが伸びてないだろw


俺に反応するスレもNGにしてるんお?


まぁ糞信者どもは阿呆だなw


590 :NAME IS NULL:2011/10/31(月) 09:49:04.43 ID:???
おらくるPさん今日もいっぱい罵ってくださいハァハァ

591 :NAME IS NULL:2011/10/31(月) 15:23:02.07 ID:???
今日は忙しいのかな?

592 :NAME IS NULL:2011/10/31(月) 16:51:27.31 ID:???
なんてたってPだからな・・・引っ張りだこなんでしょw

593 :NAME IS NULL:2011/10/31(月) 20:26:20.52 ID:y87CNCpL
P持ちは本当ですお

経験もそれなりにある
ノウハウも持ってる


だが糞dbだけは使えませんな


提案できませんわ、こんな糞db




594 :NAME IS NULL:2011/10/31(月) 22:07:28.73 ID:???
>>593
おい、何サボってんだよ。引っ張りだこなのはわかるが書き込み少なすぎだろ。

595 :NAME IS NULL:2011/10/31(月) 22:41:30.19 ID:???
おらくるPさんもっと…ハァハァ

596 :NAME IS NULL:2011/10/31(月) 23:26:46.46 ID:???
くるくるPさん…

597 :NAME IS NULL:2011/10/31(月) 23:44:20.87 ID:y87CNCpL
羨ましいか?

好きこそものの上手なれだ

勿論、金はかかったが
充分元が取れるよ



598 :NAME IS NULL:2011/10/31(月) 23:44:49.82 ID:y87CNCpL

懐かしいなぁ

試験受けた

今は昔


しかし受験料高いんだよなぁw



599 :NAME IS NULL:2011/10/31(月) 23:53:21.91 ID:???
高いけど会社持ちだったから別に・・・。

600 :NAME IS NULL:2011/10/31(月) 23:57:22.52 ID:y87CNCpL

良い会社だねぇ
俺は自費だったわ・・・



601 :NAME IS NULL:2011/11/01(火) 18:31:08.64 ID:???
いつ取ったの? 9i?

602 :NAME IS NULL:2011/11/01(火) 22:06:08.72 ID:???
おらくるPさんはもう僕のSQLiteたん罵ってくれないの?

603 :NAME IS NULL:2011/11/02(水) 07:01:08.55 ID:???
くるくるPさん…ハァハァ

604 :NAME IS NULL:2011/11/03(木) 01:09:02.98 ID:???
おらおらPさん…ハァハァ

605 :NAME IS NULL:2011/11/03(木) 14:41:37.76 ID:???
おくらるPさん…ハァハァ

606 :NAME IS NULL:2011/11/03(木) 23:56:22.55 ID:???
おらくるサボんなよ!

607 :NAME IS NULL:2011/11/04(金) 22:19:03.81 ID:???
僕のSQLiteたんのこと相手してくれないおらくるPさんなんかもうキライだ!

608 :NAME IS NULL:2011/11/05(土) 00:35:56.19 ID:???
きらいきらい!

609 :NAME IS NULL:2011/11/06(日) 21:42:13.03 ID:???
2011 November 1
3.7.9

610 :NAME IS NULL:2011/11/07(月) 00:10:54.99 ID:???
まあ、DB知らないやつなんだから、何ほざいても、負け犬Pは仕方が無い。

611 :NAME IS NULL:2011/11/07(月) 05:17:22.84 ID:???
DBってな〜に

612 :NAME IS NULL:2011/11/07(月) 21:42:02.89 ID:???
>>611
不便で高速なエクセル

613 :NAME IS NULL:2011/11/07(月) 23:01:43.58 ID:???
2万件くらい入ってるテーブルをselectして100〜200件位を取得しているのですが、
iPhone3GSで大体0.05〜0.1秒かかっています。
これをせめて0.01秒くらいまでチューニングしたい。

create table TBL_A (
COL_A INTEGER NOT NULL
, COL_B INTEGER NOT NULL
, COL_C INTEGER NOT NULL
, COL_D INTEGER NOT NULL
, COL_E INTEGER NOT NULL
, COL_F INTEGER NOT NULL
);
create index IDX_A on TBL_A(COL_A, COL_C, COL_B, COL_D);

select COL_A, COL_B, COL_C, COL_D, COL_E
from TBL_A
where COL_A <= 200
and COL_B >= 100
and COL_C <= 4000
and COL_D >= 3000
;

explain で確認すると
6 OpenRead 0 49 0 9 00
7 OpenRead 1 1323 0 keyinfo(4,BINARY,BINARY) 00
とあるので、キー読みは出来ているのではないかと思うのですが、
そもそも読み方が良く理解出来ていないのかもしれません。

インデックスを COL_A, COL_B, COL_C, COL_D や COL_C, COL_D, COL_A, COL_B、
それぞれ1列ずつ4つ作ってみたりしてみましたが今より遅くなってしまいました。

あと、何か検討出来ることはあるかしら?

614 :NAME IS NULL:2011/11/08(火) 00:08:51.44 ID:???
>>613
条件式の並べ替えかな。
結果が少なくなりそうな順序がわかれば少し高速化できるはず。

615 :NAME IS NULL:2011/11/08(火) 00:10:18.32 ID:???
たとえば、COL_D >= 3000 でばっさり300件くらいに絞れるとか
そんな都合のいい条件があれば、それを最初にするといい。

616 :613:2011/11/08(火) 00:43:27.53 ID:???
>>614さん、レスありがとう御座います。

COL_A〜COL_Dはそれぞれ均等に分布していて、条件の数字は可変なんです。
なので COL_D >= 3000 では確かに300件くらいになるかもしれないのですが、
他のタイミングでは COL_D >= 300 とかになってしまうので、あまり効果が無さそうです。
後だし情報で申し訳ないです。

やっぱり2万件ってのと範囲指定で複数条件ってのが厳しいのかなぁ。

617 :NAME IS NULL:2011/11/08(火) 02:45:58.95 ID:???
ハードウェア的にはどれくらいの速度が期待できるの?
まさかそれも分からずに0.01秒くらいにならないかなぁーとか言ってるわけじゃないよね

618 :NAME IS NULL:2011/11/08(火) 03:21:48.58 ID:???
>>617
0.01秒くらいは普通に見込める。
ていうかiPhone3GSって書いてあんだし手元で試せるだろ。

619 :NAME IS NULL:2011/11/08(火) 04:53:55.74 ID:???
手元にないけど、手元で試せるなら速度でてるってことで万々歳じゃね?

620 :NAME IS NULL:2011/11/08(火) 20:20:51.50 ID:???
データベースの物理サイズを数メガに分割すると速い。

621 :NAME IS NULL:2011/11/09(水) 02:01:39.45 ID:???
kwsk

622 :NAME IS NULL:2011/11/09(水) 03:06:39.33 ID:???
>>618が試してくれりゃあいいんだけどな。
てか、回答もしてやれよと思うわ

623 :NAME IS NULL:2011/11/10(木) 02:28:33.49 ID:soAweL/z
最近のsqlite3のコマンドプロンプトでは、UTF-8の文字を入力してもビット落ちしてしまうんですけど、この問題に遭遇して解決された方はいませんか?


624 :NAME IS NULL:2011/11/10(木) 02:45:58.36 ID:???
BASE64エンコードなど

625 :NAME IS NULL:2011/11/11(金) 21:04:50.48 ID:???
おらくるPさん…ハァハァ

626 :NAME IS NULL:2011/11/13(日) 21:10:38.54 ID:???
TEXT型のフィールドに0001と入れると1になってしまいます。
仕様ですか?

627 :NAME IS NULL:2011/11/13(日) 22:00:04.44 ID:???
0001を入れたのか"0001"を入れたのかどっちなんだ

628 :NAME IS NULL:2011/11/13(日) 22:03:46.28 ID:???
>>627
Navicat for SQLiteでテーブルを開いた状態で入れました

どっちになるんでしょう

629 :NAME IS NULL:2011/11/13(日) 22:10:09.08 ID:???
>>628
Navicatのサポートに聞け。

630 :NAME IS NULL:2011/11/15(火) 08:31:49.33 ID:bVKL53qp
メインスレッドでINSERT発行し続けて、
別スレッドでたまにCOMMITするとどうなりますか?

つまりメインで
BEGIN TRANSACTION
INSERT
INSERT
...
BEGIN TRANSACTION
INSERT
INSERT
...

をやっていて、
あるトランザクションでINSERTが出揃った時点で
別スレッドでCOMMITすると、次のトランザクションが(メインで)開始してしまいますが、
ロックされてINSERTできない、みたいなことになりますか?

631 :NAME IS NULL:2011/11/15(火) 18:38:30.00 ID:???
自分で試せ

632 :NAME IS NULL:2011/11/15(火) 19:34:21.82 ID:3Q3XMG+/
BEGIN TRANSACTION tran1
処理a
BEGIN TRANSACTION tran2
処理b
COMMIT TRANSACTION tran2

COMMIT TRANSACTION tran1

↑こーゆー感じで実行すると、
COMMIT TRANSACTION tran2 の時点で処理aと処理bがCOMMITされちゃうんですが、
処理bだけCOMMITしたいときはどうすればいいんでしょうか??

633 :NAME IS NULL:2011/11/16(水) 12:18:12.64 ID:???
ここの荒らしさんも報告したら規制対象にいれてくれるの?

634 :NAME IS NULL:2011/11/16(水) 12:40:40.14 ID:???
ここで聞かれても困ります
http://www.2ch.net/accuse2.html
を見てください

635 :NAME IS NULL:2011/11/16(水) 14:24:36.91 ID:???
>>632
begin;
savepoint tran2;
release tran2;
commit;

636 :NAME IS NULL:2011/11/27(日) 01:31:12.61 ID:???
話題無い時は本当に無いな。
一応の保守。

637 :NAME IS NULL:2011/11/28(月) 03:26:17.05 ID:c+RTLTZb
あったああ

638 :NAME IS NULL:2011/11/29(火) 06:03:53.66 ID:PoYxGkxU
10万件男の話なんだけど、これ本当に起こっているなら、原因はサイズです。
データベースが一つのファイルで構成されている関係上、性能が劣化しやすいんです。
ここら辺はベンチとればすぐわかります。
プラットフォームの性能で変わるので一概に言えないのですが、個人的に10GBを
一つの目安としています。
64ビットのOSでは制限が緩くなる可能性があります。
ファイルサイズとメモリーの関係について文書が用意されていたはずです。

BLOBに写真を突っ込むような使い方をする場合、設計をよく考えなければなりません。

639 :NAME IS NULL:2011/11/29(火) 09:11:36.55 ID:???
ネタにマジレスすんなよ

640 :NAME IS NULL:2011/11/29(火) 20:41:37.76 ID:???
データ型TEXTのフィールドに、改行を含んだ文字列を書き込みたい場合、
SQL文はどのように書けば良いのでしょうか?
どなたかアドバイスを頂けると助かります。
よろしくお願いいたします。

641 :NAME IS NULL:2011/11/29(火) 20:50:37.60 ID:???
念のために聞くが、SQLiteの話だよな?

642 :NAME IS NULL:2011/11/29(火) 22:21:28.78 ID:???
>>641
はい、そうです。

643 :NAME IS NULL:2011/11/29(火) 23:12:53.22 ID:???
何が聞きたいのかさっぱり分からん。

SQLiteは改行を含む文字列がTEXT型フィールドに入れられるか、という質問?
 →だとしたらYES。普通のinsert文でOK。

TEXT型フィールドに改行を含んだ文字列を入れたらエラーになったが、どうすればいいか、という質問?
 →だとしたら問題のSQL文を書くこと。

SQLiteに限らず、SQL文全般の質問
 →だとしたらスレ違い。

644 :NAME IS NULL:2011/11/30(水) 16:53:31.12 ID:???
sqliteのコマンドラインツールから操作するときの話じゃね?

645 :NAME IS NULL:2011/11/30(水) 19:56:20.49 ID:???
自演っぽい

646 :NAME IS NULL:2011/11/30(水) 20:07:00.64 ID:???
っぽいというか。

647 :NAME IS NULL:2011/11/30(水) 21:27:01.26 ID:???
テーブルで初期に設定したフォーマットを出力するにはどうしたら良いですか。

648 :647:2011/11/30(水) 21:32:13.02 ID:???
自己解決しました

649 :NAME IS NULL:2011/11/30(水) 23:11:57.74 ID:???
>>633
>>644
そうそのコマンドラインツールでの話です(^_^;)
コマンドラインでテキストを挿入する際、
改行コードを入れるにはどうするのでしょうか?

650 :649:2011/11/30(水) 23:14:04.33 ID:???
>>649アンカミスしました。
>>633 でなく>>643 です。


651 :NAME IS NULL:2011/12/01(木) 00:10:10.20 ID:???
>>650
普通に改行すれば改行コードごと入るけど馬鹿なの?

652 :NAME IS NULL:2011/12/01(木) 00:28:19.05 ID:???
>>651
ありがとう
正に馬鹿でした

653 :NAME IS NULL:2011/12/02(金) 02:48:33.94 ID:???
皆様にはくだらない質問でしょうが聞いてください。
あるテーブルのある列を集めて別のテーブル(ビュー)を作るのがリレーショナルデータベースだと分かりました。
では、そのビュー(テーブル)自体を一つのレコードとして集めたテーブルを作るのはリレーショナルデータベース
ではどうするのでしょうか?
例えば、十月売上品テーブルを作るのにメーカーテーブルや色テーブルから列を集めたのですが、
その売上品テーブル自体を一レコードとする年間売り上げ品テーブルを作るには
どうしたら良いのでしょうか?

654 :NAME IS NULL:2011/12/02(金) 03:07:08.58 ID:???
group byしてsumする

655 :NAME IS NULL:2011/12/02(金) 22:07:59.97 ID:???
以下のような状態でprimary keyに対してlike演算子を使用したのですが
検索が非常に遅くなっています
これをはやくする方法はないでしょうか

create table dictionary(spell text primary key, content text);
select * from dictionary where spell like 'run%'

656 :647:2011/12/02(金) 22:24:04.54 ID:???
フルテキストインデックスを利用する

通常は、Like演算子を使って検索するが、この方法で結果を得た場合にデータ量によっては、数分程度の検索時間になることがある。

http://blog.livedoor.jp/akf0/archives/51005817.html

657 :NAME IS NULL:2011/12/03(土) 00:51:00.50 ID:???
>>653-656
ここはSQLiteのスレであって、SQLの文法相談所ではない。

 SQL質疑応答スレ 12問目
 http://hibari.2ch.net/test/read.cgi/db/1316769778/

こっちへ。

658 :NAME IS NULL:2011/12/03(土) 01:26:01.33 ID:???
>>656
それ SQL Server の記事みたいだけど SQLite でも使えんの?

659 :NAME IS NULL:2011/12/03(土) 01:56:11.79 ID:???
SQLiteの全文検索を使ってみる
http://blog.mwsoft.jp/article/34911345.html

SQLiteで全文検索 - DiaryException
http://d.hatena.ne.jp/LaclefYoshi/20110604/1307175819


660 :NAME IS NULL:2011/12/03(土) 09:35:35.30 ID:???
>>654
ありがとうわかった気がします。

661 :NAME IS NULL:2011/12/03(土) 18:27:36.55 ID:???
>>657
おもしろいな

662 :NAME IS NULL:2011/12/12(月) 12:58:12.11 ID:yToQ1TQG
ためになったよ

145 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)