2get
すくらいと
4さまget阻止
5 :
NAME IS NULL:2006/02/25(土) 16:04:54 ID:RhNDLCTJ
これってノーパソ一台で細々しこしこ作るのに向いてる感じ。
かと言ってDBのパフォーマンスがショボイということはぜんぜんない。
サーバの引越しなんかも楽そうでいいと思う。
6 :
NAME IS NULL:2006/02/25(土) 17:28:19 ID:wiqm2zU6
複数プロセスからの同時アクセスをさばくのを主目的とする場合は向いてないが、
それ以外なら問題ない(例えばMySQLより速い事もあるぐらい)という認識であってる?
複数プロセスからでも更新が少なく検索中心な使い方なら向いてると思う
これから始めるんですが
結局v2とv3のどっち使えばいいわけ?
v3のファイルフォーマットはどんどん普及していくんでしょうか?
それともv4くらいでv2のファイルフォーマットに戻ってしまうんでしょうか?
それともv4でまたファイルフォーマットは変わってしまうんでしょうか?
安定志向なら3.2.8、少し先のシステムを開発するなら3.3.xの最新。
これから始めるなら2.xはあり得ない。
つかっているサーバーが2.xなんですよ。
個人的には3.x使いたいんですけど自分で組み込む事なんて出来ないですよね?
一応要望として3.x入れてくれと頼んでみたけどたぶんダメなんだろうな。
バックエンドがあるわけではないんだから、自分でコンパイルして
$HOME以下にいれちゃったらだめなの?
Apacheかphp.iniの設定変えなきゃいけないんじゃないんですか?
試しにini_setでphp.iniのextension_dirを指定してみたけど
自分が指定したパスにはならなかった。
情報小出しかよ。
最初から自分の環境をできるだけ詳しくきちんと説明してよね。
14 :
前スレ983:2006/02/27(月) 15:40:03 ID:???
再現コードプリーズな人がいたので
#!/usr/local/bin/perl
use strict;
use DBI;
print "Content-type: text/plain\n";
print "\n";
my $dbh = DBI->connect( 'dbi:SQLite:/tmp/dbfile', undef, undef ) or die;
my @arr = $dbh->selectrow_array( 'SELECT 10' );
print $arr[0], "\n";
$dbh->disconnect;
もうこんだけですわ。
ふつうにプログラムとして実行したり、ApacheのCGIでは期待どおり 10 って答えがくる。
mod_perl生かすと、レスポンスはこんなで
GET /ccc.perl HTTP/1.0
HTTP/1.1 200 OK
Date: Mon, 27 Feb 2006 06:29:34 GMT
Server: Apache/2.2.0 (FreeBSD) mod_ssl/2.2.0 OpenSSL/0.9.7e-p1 DAV/2 PHP/5.1.2 mod_perl/2.0.2 Perl/v5.8.8
Connection: close
Content-Type: text/plain; charset=utf-8
apacheのエラーログには
DBD::SQLite::db selectrow_array failed: not an error(21) at dbdimp.c line 398 at /home/ほげほげ/ccc.perl line 12.
前スレ
>>996のリンク先みたいなのは一応チェックしたつもり。
そのわりには or die とか書いちゃってるな・・・・
DBI/DBDのモジュールが最初からロードされてるってあたりに
何かあるんだとは思うけど、そこまで調べるのもなぁ。
15 :
前スレ983:2006/02/27(月) 15:43:16 ID:???
あ、空白行詰めちゃった。エラーメッセージの出るのは line 7 ね。
SQLiteのライセンスってなに?
>>16 これを読め。PDSと宣言してある。複製、改変、出版、使用、販売、配布は自由だ。
ttp://www.sqlite.org/copyright.html SQLite Copyright
The original author of SQLite has dedicated the code to the public domain.
Anyone is free to copy, modify, publish, use, compile, sell, or distribute the original SQLite code,
either in source code form or as a compiled binary, for any purpose, commerical or non-commerical, and by any means.
I can't thank you enough!!
Thank you again.
十分に感謝できません(><)
思わず辞書ひいてしまった英語力の無い俺・・・orz
21 :
NAME IS NULL:2006/03/02(木) 01:19:04 ID:2b2ggTvt
主キーとしてemailアドレスを定義してあるのですが
仮に同じemailアドレスを追加しようとした場合にphpの
sqlite_query()が
column email is not unique in
みたいなエラーを出力します。これを利用者にはわかりやすい形で
エラーを出力したいので、既に存在するemailアドレスを入力しようと
したというエラーの内容を取得したいのです。
INSERT文を発行したときに直接このエラーを取得することはできるのでしょうか?
それともINSERTする前処理としてSELECT文を発行して同じemailアドレスが
存在しないかどうかチェックするという方法が一般的なのでしょうか?
>>21 >SELECT文を発行して同じemailアドレスが存在しないかどうかチェックする
これでいいんじゃねーの?
>>21 SELECTでいいんじゃね?
複数のプロセスから同時にアクセスするのなら、
トランザクションを併用する感じで。
sqlite3で日本語を扱う場合の選択肢はutf8だけなの?
>>26 そう思ってたほうが良い。CのAPI叩くならUTF16(=wchar_t)も可。
>>26 日本語のカラムの検索とかしないのであれば UTF-8 以外でも問題は無いかと。
でもまあ UTF-8 で揃えておいた方がトラブルは少ないと思われ。
29 :
NAME IS NULL:2006/03/06(月) 14:36:13 ID:gpouinl4
(><)
sqliteを、perlからサブルーチンのように使う方法はありませんか?
>>30 >>32 DBI + DBD::SQLite → SQLite 3.x
DBI + DBD::SQLite2 → SQLite 2.x
>>33 ありがとう。sqliteはコンパクトで気に入っています。
レンタルサーバーで、DBを使いたくてsqliteを動かしたいのです。
sqlite2とsqlite3があって、互換性が無い。そしてCCのプログラムであるまでは
わかりました。ローカルのWindowsでsqlite.exeの
コンソールで動く所まで出来ました。
英語は良いけど、日本語が表示できないね。
DBIとDBDの意味がまだわかりません。
ODBCのようなインターフェイスならセットアップが必要なのかな?
perlのクラスで、perlライブラリのように置くだけでよいのかな?
レンタルサーバーなのでroot権限が無いけど、使えるのだろうか、
コンパイルとか、セットアップとか必要だと思うのだけど。
perl-cgiのソフトだと、そのままコピーしてHPに置けば動くけど
sqliteの場合はどうなのでしょうか?
素人質問でごめんね。
35 :
NAME IS NULL:2006/03/07(火) 09:12:56 ID:KtUI6IfI
レン鯖でDB動かそうという時点で無謀な悪寒。
いい業者見つけな。
SQLite スレでそれを言っちゃあおしまいな希ガス
>>37 廉鯖だったらMySQLとか使えば(使えるとこを選べば)良いんじゃない?
SQLiteってクライアントで気軽にファイル感覚で使ったりするのに向いてる気が
するんだけど。
>>35 ありがとう、
ローカルWindowsで、sqlite.dllの動作確認と
Windowsの DBD-SQLiteのインストールまで出来ました。
perlのテストプログラムは動いているようです。
perl+sqliteのサンプルプログラムは無いようです。
たしかに、DBDを使うならMySQLなどを使った方が簡単だし。
perlよりもphpの方がsqliteとの親和性に優れているようだし。
なんというか、perlからsqliteをサーバーで手軽に使える方法は無いのか、
Linuxでperlからsqliteへ接続するのに、WindowsのDLLのようなしくみが無いのかな?
もう少し、perl+sqliteでやってみます。
40 :
NAME IS NULL:2006/03/07(火) 18:54:21 ID:KtUI6IfI
さくらのライトプランでSQLite使ってるよ。
DBとサイトの規模を間違えなければ何の問題もなし。
ロリポップが使えるんじゃなかったかな。
案外SQLiteは格安鯖でも動くね。
さくら、XREA、ロリポ
MySQLが貧弱ぎみなさくらはないと困るね。バックアップも超簡単だし。
ただ、Perlだと2系オンリーかつデフォじゃなくて、PHP4の鯖はほとんど非対応で、5.0は2系がデフォで使えて、5.1はPDOに移行してsqlite関数はデフォじゃなくなってWinではDLLすらついてこなくなった…だっけ?
Sqliteの wrapper でなんとかならんかと思ったが、これもややこしい。
46 :
NAME IS NULL:2006/03/08(水) 05:05:07 ID:IoPLqugD
こんにちは。
DelphiでDBを使ったフリーソフトを作りたいのですが、
Firebird Embedded Server
SQLite
のどちらかにしようと思っていますが決め手が無く迷っています。
レコード数は1万件程度です。ストアドやトリガは使いません。
また、日本語のテーブル名や列名は使いませんが、データ自体
は日本語(SJIS)を含みます。
どちらが良いのでしょうか?
よろしくお願いします。
>>46 ライセンスの話だけど、前者はIBL後者はPDS。
C/S型と違って組み込みの場合、DBMS本体とアプリケーションが
密接に繋がるので自由度の高い方=後者(SQLite)を薦めるよ。
IBLはGPLとかと親和性がないしね。
# とか言いつつ自分はMySQLを組み込みに良く使ってるんだけどね。
ああ、SJISのデータなのか...
S-JISだろうがなんだろうが全部UTFにしてつっこめばいいんじゃないの
UTF-8に変換してから入れてください。
検索条件に Shift_JIS を使わないのであれば、そのまんまでも問題ないと思う。
そうでないなら
>>49-50 で。
MySQLって組込機器で使う場合のライセンスってGPL ?
デュアルライセンスだからGPLもありだが嫌なら商用ライセンス買えっつーかスレ違い。
このスレで聞けばSQLiteを薦められるのはわかりきったことなので
単に背中を押してほしいだけなのかも
まあSJISからUTF変換で失う物は大きいけどな。
ソース有るんだから、弄ってSJISで突っ込めるようにしちゃうのが吉。
無料(GPL)なら、その弄ったソース公開してくれ。
いやGPLじゃねーだろ。
>>41 ライトでどうやって入れたの?
確認しないで聞くけど、もしかして最初から入ってる?
58 :
NAME IS NULL:2006/03/08(水) 16:07:23 ID:155sE1/A
Ruby では使えないってことか。うーん。
60 :
NAME IS NULL:2006/03/08(水) 20:54:18 ID:155sE1/A
>>59 「Perlでは使えるんだからRubyにも入れてくれ」と頼んでみれば?
>>46 ボーランド製の開発ツール使うなら、FBのが親和性高いかもしらん。
63 :
NAME IS NULL:2006/03/09(木) 23:46:23 ID:/9VbNMHQ
質問。
SQLiteでのエスケープは、なにをなにへ変換したらいいというドキュメントってありますか。
likeの%や_をどうエスケープするのか分からないのですが。
エスケープは
\%
\_
じゃなかったっけ?
SQLiteじゃなくて標準SQL(?)の仕様だと思うから、
SQLiteのドキュメントには載ってないのかも。
66 :
NAME IS NULL:2006/03/10(金) 01:02:50 ID:lAGTMU4a
SQLiteとMySQLとPostgreSQLってデータベースサーバとしてはどれがいいの?
これから使いたいんだが、メリットとデメリットを教えて欲しいス
>>66 少なくともSQLiteはデータベースサーバではない。
69 :
NAME IS NULL:2006/03/10(金) 22:30:27 ID:lAGTMU4a
>>68 よくわからなかった。
自分はまっとうにSQLを知らない、と言っている人の説明をどう受け止めたらいいんだか。
将来的には入社する会社がPostgreSQLらしいから、それを使っていくんだろうけど、
どうも弱小な会社なのでそんなに開発に時間をかけられないんだと思う。
そこで、使えるのならば「簡単に使える」と本に書いてあったSQLiteで開発していくことも可能なのかな〜とか何とか。
だから、SQLiteのメリットとデメリットだけでも教えておくれよ(ry
>>69 手元に本があるなら、その本に何かしらヒント書いてないの?
利点
・デーモンプロセスなしでも動く(導入が簡単)
・設定項目がほとんどない
・少ないメモリで動く(のか?)
欠点
・ストレージエンジンを指定できない。細かい性能の調節がむずかしい
・他プロセスがDBにアクセスした場合の性能がよろしくないかも
・頻繁にバージョンアップしていて煮詰まっていない感じ
早い話が接続クライアントが山ほどあって、DBを使いながらも
バックアップも同時に取りたくて、さらには「最近アクセス増えたから負荷分散
しましょう」みたいな凝った使い方はどうもできないらしいってこと。
えっとね、ここにはお前さんのママはいないんだ。
一から十まで教えてもらおうとせずに自分で調べてみようよ。
PostgreSQL と SQLite じゃそもそも適用範囲が違うんだよ。
開発に時間がかけられないからSQLiteっていうほど簡単な話じゃないんだよ。
これから入社するみたいだけど、DBの選定なんてお前が関与する話じゃないだろう。
本で読んだ〜なんて言ってたら馬鹿扱いされちゃうぞ。まぁ馬鹿だけど。
72 :
NAME IS NULL:2006/03/10(金) 23:56:57 ID:lAGTMU4a
>>70 レスありがとうです。
丁寧な内容にも感謝です。
本に載ってるのって、さわりだけしか書いてなくてあとは使い方のみだったので
比べることはできなくて。
単一ユーザのみ使用の小規模アプリケーションなんかに組み込んで使うことには適しているかもってことですかね?
結局はこれが一番大事なことだったのかも知れないですけど
登録や更新、検索といった一連の操作の方法は、SQLiteでもPostgreSQLでもMySQLでも変変わらないのですかね?
>>71 一応ググってから書き込みしてみたんですけどね^^;
まぁ業務未経験ならこんなもんだろ。
そんな邪険にせんでもいいんじゃないかね。
一番重要なのは、どういう使い方をするのかって点。
一般的なDBは、サーバとクライアントが通信してDBのデータをやりとりするんだが、
これだと常にサーバプログラムが立ち上がってる必要があるので、
ちょっと使うのでも導入が大掛かりになってしまう。
しかし、サーバとの通信手段さえ確立されていれば複数クライアントとデータがやり取りできる。
SQLite等の組み込み用途DBは、プログラムが直接データを読み書きする。
これだとサーバプログラムは必要ないので、プログラムとDBをセットにしてパッケージし、
そのまま使う事が出来るので、導入も簡単で可搬性が高い。
ただし、複数クライアントで使うには向いていない。(不可能という訳ではないが)
DBは案件、予算によって使い分けなければいけないんで、
どれがいい悪いって一概に言えるもんじゃない。
>72
そりゃSQLなんだからいっしょだよ。細かい部分に違うところはたくさんある
けど、 それを言ったら MySQL と Postgres だって違うところはたくさんある
でしょ。そんな感じ。
ちなみに、 SQLite でも、1つのファイルに同時に複数のクライアントが接続
して読み書きすることくらいは普通にできる(3以降なら)。でも負荷分散とか
細かいチューンが無理ってのは70の言う通り。
小規模なもの他には、サーバプロセスを立てない方がいいようなシステムに向
いてる。利用者には SQL を使っているとは特に言わないが、内部ではデータ
を SQLite で扱っていたりとかね。
>>72 本を読むってのは、記述を目で追うことではない。
ググるってのは、Googleにキーワードを指定して[検索]ボタンを押すことではない。
もう社会人手前だ。そろそろ学生気分は終わりにしよう。
76 :
NAME IS NULL:2006/03/11(土) 01:05:06 ID:gdPjcqBv
>>73、
>>74 その答えが欲しかったんです。
ありがとうございました。感謝
>>75 あなたが言うレベルにはまだ遠いでしょうが、
あなたが言う"形式"じゃなくて、ちゃんと調べてきたのですよこれでも。
けど、精進しますね。どうもです
>>76 まああれだ、
>>75 の言いたいことも分かるんだよ。
社会人として一人前になるってことは、できるだけ
自分自身で解決を図るってことなんだ。人に説明を
求めるということは、その人のリソースを
多かれ少なかれ消費することを強いる行為だという
ことを知っておいた方がいいと思うんだ。
人に犠牲を強いる行為を、自分の当然の権利だと思っては
いけない。常に他人に対する配慮を忘れてはいけない。
おじさんが新社会人の君に言えるのはこれくらいだ。
まあ、頑張ってくれ。
まぁ、sqliteは初心者には不向きだろう。
あまりにも日本語解説文書が少なすぎる。
MySQLとかpgとかの解説書籍は大量に出回ってるし。
ただドキュメントが少ないってのは、実務者にはデメリットだが
勉強の素材としてはSQLiteは適してると思うよ。
SQLiteは機能が少なく規模が小さい。英語のドキュメントは結構あるが
日本語ドキュメントがないので翻訳の勉強になる。
(またその成果を公開すれば日本語ドキュメントの一人者となれるオマケ付き)
他のDBMSと比較しないと評価できないこともあるのは事実だが、
その為にはひとつの事を良く知ることも大事だしね。
SQL初心者が英語苦手とは限らんだろ
デーモン管理とか分からなくても SQL の学習ができるのは
メリットだと思う。
まぁ今なら XAMPP とかあるから、一緒っちゃ一緒だが。
お前らなんだかんだいって優しいな
永遠にデータが増えずに、アクセスみたいな協調作業皆無の用途向けだろ。
データが増えて、例えば全社的に活用しようとなると、作り直し覚悟。
最初からボラクルで作るというのもありだと思うけどね。
>>68はSQLiteの作者がTclのコア開発メンバーでテストが
全てTclで書かれていたり、アイコンをTclと同じにしてたり
するのに、ラッパーの一つにTclを上げていないので
SQLiteオタクとして俺は認めない。
SQLiteは好きだが正直言ってTclはいかがなものかと思う。
SQLiteが好きってのもなぁ。
88 :
NAME IS NULL:2006/03/12(日) 02:01:25 ID:Tnoh9TTj
みなさん色々と口は悪い人もいるけど
いい人たちばかりだと思いますよ。
社会に出る前から社会勉強させてもらってる感じでうれしいです。正直
リアルではほぼありえないですから。居酒屋の酔っ払って絡んでくるオヤジくらいw
2chのFLASHに意外と感動系が多いのも頷けます
みなさんありがとう
今出来ることをやってみようと思います
嫌いなのか?
こんなスレでいい人ばかりって、一体どんな殺伐リアル世界を生き抜いているのかと。
自分一人の孤独な世界じゃね? そりゃ殺伐だわ。
タイトルがSQLite2系専用スレみたいだね。
DBはノウハウの世界なんで、実際に使ってみんと判らん事が多いよな。
使い込んでみてボラクルじゃないと無理と分かっても、無料から有料にはなかなか稟議降りんけどな。
ボラクルの代わりにオプソいじりで体壊してあぼーん確定。
後任者はボラクル導入で安泰。
ところがそこで変な営業がM$とかIBMにかぶれて……
世にうまい話などそうそうないなと傍観しつつ趣味人はSQLiteと気ままに戯れる
まあ営業依頼なら素直に従って、トラブルで業務止めてやればいいかと(w
営業上の付き合いで導入する代わりに、売り上げ伸ばすってのは良く有る交渉テクだし。
売り上げ伸びねえなあと思ったら、あっさりリプレイスすればよろし。
まあ趣味だと何でもいいね。所詮自己満足さえすれば要求は満たせるし。
>>97 Linuxの使い方はこのスレやこの板じゃなくてLinux板へどうぞ
ぉーぃ
sqliteを使ってる人、おねがいします。
こんな奴Linux板に来られても困る
インスコしたら、SQLの書き方聞きに来そうな奴だ
なんか最近地味に賑わってますね
Windows版で慣れてから、Linux版触れば良いんじゃない?
つーか、大人しく自分でなんとかするのを諦めで業者に頼むべき。
日本語話せないのに、日本に来るぐらいアフォ。
どの業者がおすすめですか?
・・・うちかな
URLを書かないと わからんがな
フリーライダーとしての能力を駆使するんだ。
フランス語喋れないけどフランスに行きました。
>110ツアーだろ?
違うって、、、1人もいないのか
sqliteを使ってる人、、、1人もいないのか
いるわけない
何この流れ?
ヒント:春
業者も嫌がる無料のsqliteだしな。
ボラクル案件じゃないと儲からんよ。
嫌がるの?まあCだし組み込みだし、ノウハウの割りに旨みないかもね
無料である以上ぼったくり出来ないだろ。
無料だからハード代ぐらいしか取れんよ。
> まあCだし
SQLite 以外は C じゃないものなの?
DB屋はJavaしか使えない事が多い。php屋も居るね。
SQL Serverを知らない方ですか?
VB廚も居るか。
アパチのモジュールとか弄れなさそう。
>>122 既に回答も出てるけど、最近はODBCや言語特化のドライバとかが一般的でしょう。
SQLiteみたいな組み込み用途のものとは一線を引いてると思う。
SQL ServerといえばVC#
おいおいWin鯖でApacheはないだろ…
>>129 ライセンスの問題って解決したんだっけ?
つーか Apache の話題はどこから出てきたんだ
IISのモジュール書ければ、アパチ廚よりスキル高いかも。
>>133 同意。あれ書ける人は無駄にスキル高いと思う。
>130
200/XP Proならいいんじゃなかった?
9x系とかXP homeがアウト。
200てなんじゃいorz
2000ね。
XP Pro はサーバ用途に使っちゃダメだろ
あと接続数の問題もあるぞ
基本的にはローカルで1人〜数人で使ってますって
状況でなければ Win + Apache は不可
モジュールを作るときはSQLiteを使ってあげてくださいね><
FreeBSD & MySQL(DB) & SQLite(Logger)
こんな構成どう?ナウくない?
FreeBSEの時点でダメ。
MySQLとsqliteの開発者のOS使え。
ところがXPで鯖建ててる所は多いのが現実。
そりゃBSEじゃだめだろうなぁ
BSE・・・
FreePSEならばあるいは...
147 :
NAME IS NULL:2006/03/19(日) 20:15:54 ID:XdLgWdOb
SQLiteでSJISデータを扱いたいのですが、
どのような注意が必要でしょうか?
よろしくお願いします。
>>147 とりあえずこのスレをざっと読んでからわからないことがあればまた質問してください。
SJISで使えるようにソースの変更が必要。
どう変更すればいいかは自分で考えてくれ。だれも要求無いし作っても居ない。
幸いおまいにはソールを見れる。あとはおまい次第。
ソール
BLOBのカラムにバイト列として流せばいいんじゃないのか。
UTF-8を使わない理由はなんなんだろうか?
SJISといいながらCP932の文字も使うから?
iモードサイトに使うから
CP932ならOKだろ?問題はMS932では?
UTF-8は日本語を3バイトで扱ったりするし
UTF-32が一番高速なんだろうか
CP932 と MS932 は何が違うん?
Shift_JISとCP932なら大違いだが。
CP932=Shift_JIS
MS932=Windows-31J
違ったっけ?
CP932というのがそもそもMSの発明品だからMS932も同じものを指す。
CP923といっても、IBM CP932とMS932=CP932 と2通りある
>>158 違うよー。あんまりデタラメ書かないでよー。
更に日本語仕様で932のバリエーションが有る。
DBの文字コードをUTF-8にしてスクリプト側でcp932に変換すればおk
>>161 違うよーって書くのは情報がないからやめてほしいな
正しい情報を書いてよ
違うよーユタは田舎じゃないーーよ
>>165 「違ったっけ?」と聞かれてるから答えただけだよー。
正しい情報は他の人が答えてるよー。
168 :
NAME IS NULL:2006/03/20(月) 20:34:56 ID:nlw/67wH
そもそもDBの文字コードってなんなのさ?
UTF-8にSJISをそのままぶち込んで、何が悪いの?
order by ? like % ? それだけか?
utf-8 に sjis を?
そりゃまずいだろ
DBには何つっこんでもいいよ
でも周辺ツールがUFT-8じゃないとダメなのでUTF-8推奨
検証して、結果を報告してくれ。
言い出しっぺがやってくれ。
ツールをsjis対応にしてパッチ曝してくれ。
>>168 length, substr あたりもダメみたいね。
ネットでSQLite管理ツールを2つほど拾ってきたが、どっちも不安定だな。
ツールで表示中に別プログラムからcreate tableすると、再表示の時に落ちたりする。
拾ってきた2つのツールの名前をよろ
sqliteでmysqlのマスタ-スレーブ運営のようなことできるの?
"マスタ-スレーブ運営"に該当するページが見つかりませんでした。
>>178 SQLite 自体にそういう機能は無いので、
やるなら自力でそれ相当の機能を実装するしかないと思います。
マスタースレーブって、組み込みDBの範疇超えてるよ。
アクセスでクラスター構成組めたらいいのにぐらいトンデモ。
ノートパソコンのsqliteと、webサーバーのmySQLのデータを
マスタースレーブで同期を取るのは、難しいですか?
中身をCSVか何かに落としてMySQLに流すような処理書けばいいんじゃね?
dumpで突っ込めばおk
>>182 ノートPCにもMySQL入れればいいだけの気が。
hotcopyは実装されてますか?
クエリ処理が行われているときでも安全にdumpできる機能です
ノートもMySQL入れる方がスマートだな。
あるいはノートは鯖のMySQL参照にするとか。
189 :
NAME IS NULL:2006/03/22(水) 21:35:35 ID:v2sfmRd0
前スレで100000/日ヒットのサイトでもSQLiteはOKていうのを見てちょっと安心した。
今、サイトの制作をPHPでやってて、SQLiteを使ってテストしてんだが、楽でいいよこれ。
バックアップもファイルのコピーだし。
オレはどちらかというとデザイン屋なんで細かい所はわからんのだが。
http://www.sqlite.org/cvstrac/wiki?p=WhenToUseSqlite ↓Exciteの翻訳
SQLiteがよく働いている状況
ウェブサイト
通常、SQLiteは安値のためのデータベースエンジンとして中型のトラフィックウェブサイトに
優れていた状態で働くでしょう(すべてのウェブサイトについて99.9%言うことになっています)。
SQLiteが扱うことができるウェブ・トラフィックの量はもちろんウェブサイトがどれくらい大い
にデータベースを使用するかに依存します。
概して、100000ヒット/日より少なくなるどんなサイトも罰金を扱うべきです。
100000ヒット/日の図は困難な上限ではなく、内輪な見積りです。
SQLiteは、その量の10倍のトラフィックで働くためにデモをしました。
埋め込まれたデバイスとアプリケーション
SQLiteデータベースがまず管理を必要としないので、SQLiteは無人で動作しなけれ
ばならないデバイスかサービスと人間のサポートがなければ良い選択です。
SQLiteは携帯電話、PDA、セットトップボックス、そして/または、器具での使用の
ための良いフィットです。
また、それはダウンローダブルな消費者アプリケーションにおける埋め込まれたデ
ータベースとしてよく働いています。
おお、すげ。一人だけで10万くらいのファイルを
管理したいんだけど大丈夫かな。
同時接続数はデフォルトで10だっけ?
だとしたら10000は限界じゃね?
あー100000の間違い
デザイン屋で細かい所はわからん奴がPHPで作ったサイトなんて
駄目に決まってるじゃん。www
同時接続数ってのは「1つのプロセスが同時に何個のSQLiteファイルを開ける
か」っていう数値だっていう話が前スレになかったっけ?
同時に1つのSQLiteファイルにアクセスできる数は10個くらいは余裕だよ。
ってか1つのファイルに同時にアクセスできるプロセスの数なんて、OSとかファ
イルシステムがむしろ関わってくるんじゃね。
ぶっちゃけ、MySQL並みに負荷に耐えられる?
組み込みに過度な期待はしないほうが。
なんでMySQL使わないの?
確かに。MySQL並みが欲しけりゃMySQL、Oracle並みが欲しけりゃOracle使えばいいんだよな。
あ。Oracleは金の問題があるけど。
アプリ配布したいから MySQL とかだと別途インストールなのが手間で。
>>199 スイッチできるように作るのが自分のためにもよいかと
その手間と負荷のどっちが大事かによるかと。
ODBC対応にしていろいろ選べるようにしとくと、楽では有る。
ODBC にするの?
どうかなぁ
ODBCにコネクションだけやらせて、生SQL流し込めば。
そこでSQLインジェクション被害ですよ
それならsqliteならローカルにdbファイルあるから弄り放題だし大差はない。
セキュリティ考えたら、アプリ配布自体が無謀だね。
SQLiteだとSQLインジェクション被害にあわないと思っている奴が居るなw
そりゃ外に公開すれば、だれかしら
イタズラを仕掛けてくるでしょうな。
逝ってよし
2ちゃんねる懐かし言葉祭りはここですか?
はにゃーん
懐かしいな。5〜6年前に戻ったみたいだ(藁
だいじょうぶ、ぜったいなんとかなるよ!
さくらカードか。
Sakura LinuxでSQLiteを使うスレはここですか?
さくら、SQLite大好きだもん!
うむ、さくら鯖ではSQLiteを使うのが妥当な判断だ。
そういやサクラインターネットでもMySQLじゃなくSQLiteを使う奴がひそかに存在するらしいな
SQLiteManager使ってる?
つかってない
>>219 11個?あるMySQL鯖の多くが糞重だからSQLiteとBerkeleyDBしかまともに使えない状態
DBって共有するもんじゃないしなあ。最適化せずにどんどん重く出来るし、我慢比べ?
>>223 SQLiteの場合(PostgreSQLもか)はどんどんでかくなる。(ファイルサイズが)
だからバキュームしてダイエットさせないと。
ちなみにうちのPOPFileが使ってるSQLiteは10MBぐらいに肥大化してた。
バキュームしてやったら3MBぐらいになったよ。
(2年間バキュームせずに使ってたから)
テーブルをリファクタリングしてくれるアプリってあったっけ?
>>224 ファイルサイズでかくなってもそれほど重くはならないよね?
あんまり頻繁にバキュームするのも考えものだ。
>>224 その程度ならいいんじゃないの
ZODB の爆発に比べればかわいいもの
SQLite3.xのC/C++APIの使い方が載った本もしくはHPってないでしょうか?
>>22の本はC言語が載ってなさそうなので。
PHPの情報は多いのに、C/C++の情報は少ないね・・・
230 :
224:2006/03/27(月) 22:44:54 ID:???
>>226 ディスク容量の無駄遣いなだけで処理速度にはほとんど影響はないようで。
>>227 うん。
だから気づいたときにやる程度で。
(そもそもこれまでは2年間放置だったわけだし)
2年間でPOPFile経由のメールは約32000件。
それで7MB程度の無駄。
あまりたいした量でもないからいいけど。
(32000のうちスパムが23000以上もあった。←こっちの方がよっぽど問題かも)
>>228 使ったことないので知らないですがそんなに無駄使いDBなんですかZODBは。
使い方のサンプルみたいのが欲しいなと思ったんだけど、
やっぱり公式のリファレンスを読んでいくしかないか。
>>232 使い方のサンプルまとめてくれよ。頼んだぞ
人柱になろうとしないとそこで試合終了ですよ
正直、公式のドキュメントでダメなようでは使いこなせるようになるとは思えない。
ってくらい簡単だと思う。
しかし、なぜかみんな人柱を避けるよな。
Macなんか標準でインストールされてるのにな。
人柱っつーか、この場合は「自分では普通に使えてるけど
人に見せるような形にするのはマンドクセ」だろ。
漏れも普通に使えてるから、「人柱」っつー感覚がよーわからん。
マカー自体が人柱だと思う。
今更32bitのintel core買わされてみたりとか、OSにsqliteビルトインされてみたりとか。
誰のためにもなってないんだから人柱は違うと思う。マカは死んでくれ。
>>240 ビルトインはいいけど怒涛のバグフィックスについていけるのだろうか・・・
MySQLのアップデートでも大変だしな。
平気でダンプして、リストアしてくれなんて書いてあるし。
知らずに再起動するとDBファイル壊してあぼーんかもね。
ご利用は計画的に
>>239 ありがとう。
読んでみて3.xのAPIの使い方が大分わかりました。
コールバックも未だ健在のようなので安心しました。
>>242 Apple のサポートでアップデートしていこうなんて
のは期待しちゃダメでしょ。「ローカルで動く」以上の
メリットなんかないよ。なんだかんで言って自分で
環境整えないと。
何の話をしてるんだか
Appleは邪悪、Appleに騙されてはいけない、Appleの製品を買ってはいけない、という話
アポーに騙され続けてるマカは馬鹿って話じゃないの?
ここはあぽー被害者のスレ?
251 :
14:2006/03/30(木) 18:41:10 ID:???
>>14で動かなかったやつ、FreeBSD ports をアップデートして
p5-DBD-SQLite-1.11_2 と sqlite-3.3.4_1 になったので、
もっかい mod_perl ありで試してみたら、
あら不思議、ちゃんと動きましたよ。
ふぅむ。しばらくこれで試してみるか。
単にapache再起動すれば動くと言うヲチじゃないの?
253 :
NAME IS NULL:2006/03/31(金) 00:42:28 ID:dwOttQ6c
SQLiteもなんとなくよさそうじゃないか
うん。なんとなくよいよ。
なんとなくね。
アクセスと同じで、何となく良さそうと思って使い始めてデータが溜まって来ると限界が見えて来る。
まあそこでまた他に乗り換えてもいいと思うけど。
1万件あたりがボーダライン。
12万件はOKでしょ。 郵便番号検索で問題なし。
257 :
224:2006/03/31(金) 04:39:46 ID:???
>>257 pcweb.mycom.co.jp は重いからクリックしたくない。
>255
1万件でダメってどんな使い方だよ。
index張ってなくても大丈夫なくらいじゃないか?
insertとかするときにトランザクションしてないってオチじゃないよな?
検索だけなら分かるけど、頻繁に書き込み削除するにはちょっと……
更新も問題ない。 マルチタスクに対して弱いだけ。
200万件でもいける
しかしFSが「もたない」。
264 :
NAME IS NULL:2006/03/31(金) 16:06:36 ID:Dek8vIiK
マカーでPostgreSQLからSQLiteに移植中。
50万件のデータ登録が終わって、とある計算をさせたらPostgreSQLでは数秒で終わるところが40分…
とりあえずvacuumとanalyzeやってみたらファイルサイズはぜんぜん変わらないけど数秒に短縮された。
>>240 最初から入っているやつはsqlite3コマンドで日本語が表示できないし、コンパイル時のフラグ(スレッドセーフとか)がどうなっているかわからないから自分でビルドした。
265 :
NAME IS NULL:2006/03/31(金) 16:28:13 ID:HUzJr/wC
SQLiteってMS Accessっぽいイメージだから、1つのDBファイルに複数のテーブルが作れるんだよね。
だとすると複数のDBファイルにそれぞれテーブルを1個づつテーブル作った方がアクセスの混雑を防げるってことなのかな。
>>264 適切に index 張ってないと激遅なことがあるけど、そういうことだったりするのかな?
indexがあっても使わない状態だったんだろう
indexってどうやって作るの?
マカーだから意味不明だけど、DBってそういうもの。
チューニング次第で速度違うよ。
271 :
264:2006/03/32(土) 01:32:38 ID:xA4OUPPY
>>266 必要と思われるindexは張ってあるつもりなんですけどね。277行もわけわからんコードが出てきて
途中で見るのあきらめたんですけどexplainでIdxGTとかIdxInsertとか出てくるから使われてるんじゃ
ないんでしょうか?
まぁ、SQLite初心者(というかDB初心者)なもんで、index張っただけではだめでanalyzeすれば
数百倍のスピードになるってのに驚いたってだけの話です。すみません。
>>271 > explainでIdxGTとかIdxInsertとか出てくるから使われてるんじゃないんでしょうか?
explain で出てくるからと言っても、
的外れなとこにしか index 効いてなかったりすることもありえるしねえ。
explain で見れる VDBE ってアセンブラみたいで面白いよね。
273 :
NAME IS NULL:2006/03/32(土) 02:48:14 ID:8gFnwqj/
>>271 SQLiteもANALYZEって有効なのか!?
274 :
NAME IS NULL:2006/03/32(土) 02:53:55 ID:8gFnwqj/
>>273 コマンドがあることは、もちろんわかっていたが、
それなりに有効であることが驚いた
これでアナル紳士も安心です
277 :
271:2006/03/32(土) 03:18:33 ID:xA4OUPPY
>>271,274
PostgreSQLで同じ50万件のデータでvacuum fully analyzeしようがしまいが関係ない
のに比べると、SQLiteでは有効どころかanalyze必須って感じでしょうか。
278 :
271:2006/03/32(土) 03:21:43 ID:xA4OUPPY
sqlite wiki のベンチ結果を見ると、とても postgresql を使おうとは思えませんね。
というか、今日が3/32であることに驚いた。
ああ、そうだね。エイプリルフールだね。
analyze はともかく vacuum はあまり関係ないんじゃね?
あと、「○○は必須」とか結論づけるにはそれなりの根拠を提示しなきゃ。
ベンチマークの際のスキーマやクエリはどんなのとか、実際にどんなデータを入れたとか。
PostgreSQLはベンチマーク対策に自動で最適化してるだけでしょ。
sqliteはそこはじぶんでやるしかない。常駐プロセス無いし。
Mac ユーザが認めるのは SQLite / MySQL だけであって PostgreSQL ではありません。
286 :
271:2006/03/32(土) 17:23:57 ID:nbmYK9+s
>>282 あ、申しわけない。現在のデータやクエリからすれば自分にとっては必須って意味です。
271にはsqliteは向いてないので使わない方がいいよ。
アクセス使えないようなものと思ってくれ。
288 :
NAME IS NULL:2006/03/32(土) 20:44:06 ID:Mqd1mPmS
MDBのファイルをSQLiteにエクスポートしたいんだけど、
できますか?
ACCESSを使ってODBCで繋げばできると思っていました
が、エクスポートしたSQLiteのファイルをSQLite管理ツール
で開けません。
ちなみにMDBでは、数値型、文字列型のほかに、メモ型や
日付型、Yes/No型なども使っています。
290 :
271:2006/04/02(日) 05:16:05 ID:SAes8MGY
>>287 「アクセス使えないようなもの」とはどういうことでしょう?
マカーなんでアクセスは一度も触ったことないもので。
292 :
NAME IS NULL:2006/04/02(日) 11:15:01 ID:fOB+y3Wz
>>290 たぶん最初のレスの50万件のデータ登録をするというのが
使えないといったことじゃない?
SQLiteが使えないとなると、同じような仕組みのアクセスも使えない
ということを言いたいんじゃないだろうか
50万件ぐらいは、余裕かと思うが
所詮マカー。
ファイルメーカでも使って毎年アップグレード料金払ってくれ。
295 :
NAME IS NULL:2006/04/02(日) 22:01:15 ID:C1hqpv2b
>>288 ACCESSで"エクスポート"したテキストファイルをSQLiteに"インポート"したい
ってことでしょうか?
それともその逆?
エクスポートしたSQLiteのファイルって何?テキストファイル?
SQLite管理ツールって何? sqlite3.exe のこと?
296 :
NAME IS NULL:2006/04/02(日) 22:02:52 ID:C1hqpv2b
マカーならopenbaseだったかもあるよ。
開発ツール入れてるなら自動的にJDBCのドライバもインスコされてる。
しかし。
Versions 3.2.8 が download出来なくなってるんだが、「なかったこと」になったのか?
今の、3.3.4 だってバグはあるだろうに。どうなってんだ、SQLite。
落とせるじゃないか。脅かすな。
>>299 Downloadページにはないけど、cvsかなんかで拾ってるの?
>>295 管理ツールはSQLiteManagerだと思われ
>>301 ふざけたことを言うな。日本では法律違反だ。
でもリンクが無いと、不正アクセスと判定されてもおかしくないけどね。
で、日本のどの法律の第何条に反しているのでしょうか?
なんだ、ワカラン奴もいるのか。
罰として 2ch を巡回して監視することを義務づけるぞ。
で、それに該当する判例を提示できるのでしょうか?
そのまんまの不正アクセス防止法ってのがある。
うっかりタイプミスしてもつかまるのか、バカすぎる
おいおいなんでマジになってんだ?
ネタ元が分かっててかみついてるやつはどんだけ
野暮なんだよ。
315 :
NAME IS NULL:2006/04/04(火) 11:53:20 ID:VEC6uW6l
>>189 一日10000HITでもOKならブタマン2個くらいに十分だろう。。。
時代は毛蟹
この稼業のヤバさを理解してなかった自称セキュリティ研究者が闇の組織に嵌められた事件ですね
>>312 残念ながら不正アクセスにはなりませんので。
そんなことを残念がってもなぁ。小さい小さい。
顧客情報を SQLite で管理してて、ディレクトリトラバースで情報漏洩、とか・・・
Apacheはデフォルトで特定の拡張子しか公開しないように設定されているべきだ。
暗号化して格納しとけばいいじゃん?
無茶苦茶言いよんなあ。
そりゃ、利権屋だからな。むちゃくちゃ言うのがお仕事だ。
326 :
NAME IS NULL:2006/04/04(火) 20:03:28 ID:TNnVYgJ5
288です。変な書き方で申し訳ありません。書き直します。
MDBのデータ(テーブル)をSQLiteにコンバートしたいと思っています。
AccessでMDBファイルを開き、テーブルをODBC経由でSQLiteに
エクスポートすればよいと考えましたが、NGです。
(SQLite管理ツールで開こうとすると、データ形式が違うと怒られる)
MDBファイルをSQLiteにデータコンバートする方法をご存知の
方いますでしょうか?
やっぱり意味が分からない件について
>>326 1. SQLiteのDBファイルにテーブルを作成する
2. MDBから1レコード読み込む
3. SQLiteのDBファイルに1レコード書き込む
4. 2-3をレコードの数だけやる
5. 1-4をテーブルの数だけやる
でいいのでわ?
コンバータはもちろん自分で作らなければいけません。
それってさあ、SQLiteのバージョン違いの問題でね?
330 :
NAME IS NULL:2006/04/04(火) 23:20:03 ID:BXVJH7DL
>>326 正直、さっぱりわからない・・・
まず、
(1)SQLite管理ツールの説明が未だにないんだけど、結局何?
SQLiteのホームページでは管理ツールというものはないけど
sqlite3.exeでいいの?それとも他のツール?
(2)その管理ツールでの操作方法ってのはどんな手順?
(3)「SQLite管理ツールで開こうと・・・」と書いていることからすると
もちろん、SQLite=>ODBCドライバ=>ACCESSという方向でアクセスしようと
しているみたいだが、これって出来ることを事前に確認しているの?
それとも、出来るだろうと言う勝手な思いこみでやろうとして挫折してい
るの?
326がやったことorやろうとしているのは
1. SQLiteをODBC登録しておいて
2. AccessでODBCリンクテーブルとして開き
3. 恐らくAccessのクエリでINSERT SELECTして中身を突っ込み
4. しかる後に謎のソフトウェア「SQLite管理ツール」でSQLiteのファイルを開くとNG
でいいんだろうか?
……悪いことは言わんからAccessからはCSVで吐いてそれをSQLiteに突っ込むようにしとけ
(うる覚えだが.importコマンドでCSV取り込めたはず > SQLite)
SQLインジェクションとかもタイプミスっていい訳で、不起訴に持ち込めるのか?
そんなに検察は甘くないよ。
334 :
NAME IS NULL:2006/04/05(水) 01:10:48 ID:vlpfs5DU
>>331 この1.なんだけど、SQLiteのODBCドライバってあるんだっけ?
>>332 敵は検察ではなくてその背後に居る闇の組織
338 :
NAME IS NULL:2006/04/06(木) 11:49:20 ID:+TpY7uvz
3.3.5 age
正直、毎日 Fixedされていて出来たバージョンを使う気にはなれない。
340 :
NAME IS NULL:2006/04/06(木) 11:59:40 ID:hfrJqHAC
以下のようなテーブルがあり、要注意顧客は6件、顧客マスタは11万件登録されています。
create table 要注意顧客 (
顧客登録番号 integer primary key,
コメント text
);
create table 顧客マスタ (
顧客登録番号 integer primary key,
顧客名 text,
(以下約60行省略。顧客マスタに「コメント」はなし)
);
この2つのテーブルで次のnatural joinを使ったSQLを実行するとかなり遅くて4〜6秒かかってしまいます。
サブクエリを使った方は一瞬なのですが。
select * from 要注意顧客 natural join 顧客マスタ order by 顧客登録番号;
select * from 顧客マスタ where 顧客登録番号 in (select 顧客登録番号 from 要注意顧客) order by 顧客登録番号;
この現象に関して、なにかSQLiteを使う上で注意することはありますでしょうか?
CSVファイルをインポする方法を教えてください
343 :
NAME IS NULL:2006/04/06(木) 13:00:44 ID:yD6uDMQC
>>340 select * from 要注意顧客 natural join 顧客マスタ order by 顧客登録番号;
fromに顧客マスタを書いた場合は?
要は、要注意顧客と顧客マスタを入れ替えるって事なんだけど
あと、EXPLAINのアクセス順序などは?
顧客マスタを1行ずつ読んで、要注意顧客から同じ顧客登録番号の
顧客を探そうとしているのではないの?
>>342 sqlite3 コマンドで以下を実行してみ
.separator ,
.import CSVファイル名 テーブル名
2ちゃんのDATファイルをインポートする方法を教えてください。
348 :
340:2006/04/06(木) 14:29:55 ID:hfrJqHAC
>>341 3.3.4です。
>>343 要注意顧客と顧客マスタを入れ替えても時間がかかるのは同様のようです。explainの内容はこれから調べてみます。
349 :
NAME IS NULL:2006/04/06(木) 15:15:07 ID:UyyfILq/
>>348 あとは、ANALYZEしてみたらどうだろう
>>340 order by 要注意顧客.顧客登録番号 にしてみるとか。
>>344 ありがとうございました。
おかげさまでテーブルとして使えるようになりました。
ただ、テーブルのテキストに""が付いたままなんですが、
これを外して返す方法はないものでしょうか?
352 :
340:2006/04/06(木) 22:59:09 ID:atpiY9/Q
353 :
NAME IS NULL:2006/04/06(木) 23:24:37 ID:F9pAc8EH
>>352 駄目でしたか・・・
気になるなぁ
一見副問い合わせしているSQL文の方がコストがかかりそうなんだが、
何故こちらの方が早い?(VM用のOpecodeもこちらの問い合わせの方が
ステップ数が多くなり時間がかかりそうに見えるが、単純な処理の
集まりなのか??)
もう少し、調べる価値ありそうですね・・・
>351
.importコマンドではむりぽ
あらかじめテキストから""を取り去っておくか、
""が邪魔なフィールドにUPDATE 〜 SET FLD = substr(FLD, 2, length(FLD) - 2)
を掛けるか。
csvを読み込める管理ツールを使えばいい。
つか、プログラム書けよ。w
2006 April 5 (3.3.5)
* CHECK constraints use conflict resolution algorithms correctly.
* The SUM() function throws an error on integer overflow.
* Choose the column names in a compound query from the left-most SELECT instead of the right-most.
* The sqlite3_create_collation() function honors the SQLITE_UTF16_ALIGNED flag.
* SQLITE_SECURE_DELETE compile-time option causes deletes to overwrite old data with zeros.
* Detect integer overflow in abs().
* The random() function provides 64 bits of randomness instead of only 32 bits.
* Parser detects and reports automaton stack overflow.
* Change the round() function to return REAL instead of TEXT.
* Allow WHERE clause terms on the left table of a LEFT OUTER JOIN to contain aggregate subqueries.
* Skip over leading spaces in text to numeric conversions.
* Various minor bug and documentation typo fixes and performance enhancements.
いちおうコピペしときますね
ttp://japan.internet.com/busnews/20060410/12.html 『SQL Server』のモバイル版、Microsoft が無償提供へ
Microsoft は6日、データベースソフトウェア『SQL Server』製品ファミリに、新しいモバイル版
『SQL Server Everywhere Edition』を加え、今年後半に無償リリースする計画を発表した。
SQL Server Everywhere Editionは、企業向けSQL Serve 製品モバイル版『SQL Server Mobile』の
機能を減らしたもので、ダウンロードも利用も無料になるという。 Microsoftは、すでにPDAをはじめ
多くの携帯型コンピュータが搭載している『Windows Mobile』の一部として、
SQL Server Everywhere Editionをモバイル端末に組み込む計画も明らかにした。
同社のSQL Serverマーケティング担当ディレクタIllya Bukshteyn氏は、取材に対し次のように
述べている。「モバイルアプリケーションに単一ファイルとして文字どおり組み込み可能な、
軽量かつ超小型のデータベースを求める声が、わが社に多く寄せられていた。われわれは
SQL Server Everywhere Editionでそうした声に応えた。レポート機能やビジネスインテリジェンス
(BI) 機能を備え、かつアプリケーションを運用できるデータベース製品が、無料で提供されることは非常に珍しい」
SQL Server Everywhere Edition は、無料で利用できるが、SQL Server 製品ファミリの他エディションにアクセスしたり、それと同期するには、クライアントアクセス ライセンス (CAL) が必要となる。
Microsoft は、ユーザー単位のライセンスと、クライアント機器単位のライセンスの両方を提供している。
配布に制限があっても、ダウンロードさせればいいから良いかもね。
Windows以外でも使いたいから、SQLiteつかうけど。
DBD::SQLite 1.12 (SQLite 3.3.5)がでたね。
PerlでSQLite使ってる人にしか関係ないけど。
サクラインターネットとかの格安系レンタル鯖で使ってる人は多いんじゃね?
あそこMySQLとか使えるらしいけどDB鯖は糞重いらしいし
>>361 でも3.3系だからすぐにVerUPするというのは少なそう
(3.x→3.3はいけても3.3→3.2以下はファイルの互換性ないから)
363 :
NAME IS NULL:2006/04/18(火) 20:24:29 ID:481GgRil
SQLiteの3.3.5にてShift-JIS漢字が入ったフィールドでLike は
前方一致しかできないの?
like '%う%' で あいうえおが入ったフィールドがヒットしないんだけど
あ%だとヒットする。。。
なんで勝手にShift JISで入れておいて検索できるなんて思うのかねぇ。
UTF-8だとあほれど。
3.3.5からスレッドサポ
367 :
NAME IS NULL:2006/04/18(火) 22:32:12 ID:BLZwRK4u
>>363 Oracleみたいにデータベースのキャラクタセットがあればいいのにね
残念でした
>>363 ヒットするけど。おまえの環境が変なんじゃないの?
おまえの環境はよく知らないけどさあ・・・
>>364-367 師ね。何勝手にできないって決め付けてんだよ馬鹿ども
おまえらのせいで不当な評価を受けてんだぞマジむかつく
>>368 師ね。何勝手にできるって決め付けてんだよ馬鹿。
370 :
NAME IS NULL:2006/04/19(水) 21:28:48 ID:I2OoS4TO
厨のお陰でSQLiteの評価がまた下がりましたw
UTF-8なら仕様として大丈夫なように作ってある。
他のコーディングで勝手に入れたても運がよければ動くでしょ。
評価も何もそれが仕様。
372 :
NAME IS NULL:2006/04/19(水) 23:15:49 ID:MALuFueF
>>368 誰の評価が下がってるんだ?お前のか?それともSQLiteのか?
何勝手に怒ってるんだ?
SQLite3は仕様としてUTF8しかサポートしていない
UTF8しかサポートしていない=評価が下がると思っていること自体おかしい
下手なキャラクタセットを下手にサポートされるよりまし
Oracleみたいにと発言したは、勝手にShift-JISを入れて勝手に出来ないと騒いでいるからであり、
それを遠回しに馬鹿にしただけ
何勝手に騒いでんだ
時々で良いですから
SQLite3には16というサフィックスのつく関数もあることを
思い出してください。
>>373 すんません。その通り
あと、本家で文字コードはUNICODEしかサポートしていない旨
記載したページがあったはずですがどこにあったかわかりますか?
今回の話題のときにURLを載せようと思い色々と探したのですが
見つけることができませんでした
>>376 そうだっけ?まぁいいやどっちでも
キャラクタセットがShift-JISでないことは確かなことだし
時々で良いですから
IANAではShift-JISでなくてShift_JISであることを
思い出してください。
おまんこエンコード
>>379 ,-ー──‐‐-、
,! || | ,-ー──‐‐-、
,-ー──‐‐-、 !‐---------‐ ,! || |
,! || | .|:::i ./´ ̄ ̄.ヽ.i !‐|--------┤
!‐|--------┤ |::::i | |\∧/.|..|| |:::::i /´ ̄ ̄ヽi
.|:::i /´ ̄ ̄`ヽi |::::i | |__〔@〕__|.|| |::::i |. 卍 ||
.|:::i |.(´・ω・)|| |::::i |.(´・ω・`)|| .|::::i |.(´・ω・)||
|::::i |. . . || |::::i | キング || |::::i |. テラ i|
|::::i |カワイ.ソース|| |::::i | カワイソース.|| |::::i |カワイ.ソース||
|::::i L__________」| |::::i L___________」| |::::i L__________」|
|::::i : : : : : : : : | |::::i : : : : : : : : : | .|::::i : : : : : : : ::|
`'''‐ー-----ー゙. `'''‐ー------ー゙ `'''‐ー-----ー゙.
テーブルがあるかどうかってのは、pragmaで調べるしかないのかな?
reindex は、インデックスがない tableにかけるとエラーになる?
>>381 SELECT count(*) FROM sqlite_master WHERE type = 'table' AND name = '<テーブル名>';
あれば1、なければ0
384 :
NAME IS NULL:2006/04/21(金) 18:34:28 ID:OVrbyPfy
DelphiからSQLITEを使いたいのですが、扱い方を解説しているサイトがありましたら
教えてください。
はじめは他のDBを考えていたのですが、データ量が多かったりスピードを求めるのなら
絶対にSQLITEに汁!と他言語の人に言われたので興味がありまして・・・
ちなみにレコード数は最終的には100万を超える予定です。
漏れだったら、オラクルとか使うなあ。
100万レコード消えたら痛くない?
>>385 オラクルってSQLiteより消える確率低いの?
>>387 そういうことも知らないんだったらSQLiteを使わない方がよい
有料と無料のソフトを比較するのは、
どうかと思われ。
用途が違う。
>>389 もともと100万件を超えるレコードを扱うんだったら
データ量とスピードを求めるのだったら、SQLiteという他人の意見を
そのまま鵜呑みにするであれば、どんな素人が使用してもそれなりに
堅牢なデータベースを使用する方がよいとのこと
まるでオラクルはどんな素人が使用してもそれなりに堅牢なような言い方だな。
ありえねーよ。www
Oracleもそれなりにチューニングしないと
パフォーマンスでない品。RACとかパーティショニングとか使うならなおさら。
反対に、SQLiteでやらせてみて、どうなるか報告してくれ。
>>396 SQLite スレで何をほざいているのか
>>397 オラクルでやれよって、言うより面白いだろーが。な、試しに SQLiteでやらせてみようぜ。
>>398 は?だから SQLite スレで SQLite でやりたいっつー話をしてるのに、「試しに SQLite で」って何なんだよ?
おおおおおおおおおおおおおおおおおおおおおお
まままままままままままままままままままままま
んんんんんんんんんんんんんんんんんんんんんんんんんんんんんんんんんんん
>>399 そもそも
>>385が唐突にオラクルなんか持ち出すからだろ。
まるでSQLiteに100万レコード入れると消えると言わんばかりのオラクル厨。w
書き込みがすべて自分宛だという、自意識の強い方がいらっしゃいます。
実際、100万レコード程度入れたら消えた、って人いる?
速度求めるならRACで逃げれるオラクルでしょ。
SQLiteで100万レコードのDBファイル壊したらしゃれに成らん。
SQLite3で作って、SQLite4でDBフォーマットが変わって、あぼーんの可能性が高いよ。
100万ユーザ分のレコードとかだと、サイトの信用にも関わるよ。
東証だってオラクル使ってるから、ごめんなさいで許された訳で。
SQLite使ってたら袋だたきに成ってたと思う。
元の質問がどういう話だったかよくわからんのだが、
速度求める話なのか?
オラクルを導入するコストを掛けれるケースの話なのか?
SQLiteで100万レコード入れるとDBファイルは壊れるのか?
SQLite2で作ったDBファイルを.dumpコマンドでSQlite3にmigrationできなかったケースはあるのか?
どれだけサイトの信用を求められている話なのか?
100万レコード、100万ユーザ分を扱う話なのか?
そもそも東証の話なのか?
>>407 >>384 > ちなみにレコード数は最終的には100万を超える予定です。
100万回読んで出直してこい
>>406 オラクル信者うざい。おまいが思ってるほどオラクルは信用されてないよ。
何か勘違いしているようだが、誰も東証のボケシステムを許しちゃいないだろ。w
>>409 じゃあデータベースでは何が信用されているのさ?
何かを無条件に信用しているような奴の作ったシステムは信用できないよね。w
Oracle>DB2>Sybase>Firebird>PostgreSQL>MySQL>SQLite
みたいな一次元の序列でしかモノを判断できなくなってたりしてるのかな?
実際に100まんこのデータを突っ込んで壊れる証明をしてから叩きましょうね^^
100くらいでいいのか
>>413 俺のは100まんこに突っ込んだら壊れるだろうな……。
1まんこですら真剣勝負だor2
壊れないって。アホか。しょうもないところつっこんでんじゃねーよ。
問題はファイルが破損したら100万レコード全て一度に失うって話だろ。
ファイルがいつの間にか破損してるような環境では何動かしても変わらんような気がする
以前SQLiteのDBファイルが壊れたことあったよ。
クエリ発行しても結果が返ってこなくなって、ロックしたような状態になった。
ファイルのバックアップに差し替えて対処したよ。
差分でバックアップ取れればなあ・・・
421 :
418:2006/04/24(月) 11:54:34 ID:???
>>420 PerlモジュールのDBD-SQLite-1.09だったから、
DBのバージョンは SQLite 3.2.2
DBファイルが壊れたのは、開発中のシステムの話。
仕上がったシステムでも同じバージョンのSQLite使ってるけれど、
なんともないです。
詳しく分析したわけではないが、プロセスを強制終了させると
DBファイルの状態が不安定になるみたいだった。
壊れ方は、レコードがいくつか消えるってタイプじゃなくて
DB全体が死んでしまうってタイプ。
「プロセスは最後まで実行しろ。無茶な使い方したときはシラネ」
ってことみたい。
ただハード異常や人為的ミスが原因でDBファイルが突然死する可能性は
ありそうだから、ちゃんと動いているように見えても
バックアップは取っておかないとだめだと思う。
>>421 3系でもプロセスが変になると壊れることはあるのか。それは仕方ないか。
公式サイトのドキュメントには、
3系ではトランザクション中に電源落ちても壊れないぜ、
みたいなことが書いてあったと思ったけど、まあ何事も完璧はありえないやね。
モジュールに問題があるんじゃないの
結局スピードはOracle>Sqlite
データが落ちる可能性Sqlite>Oracle
でFA???
まあ、SQLiteは使い方によっては結構速いし、
ライセンスもパブリックドメインで制限無いし、
そう考えるとすごいよね。
May you find forgiveness for yourself and forgive others.
まあ、そういうことじゃねえの?
とはいえ、実用的かどうかはそれぞれ個人によって異なる部分でもあるわけで。
また新キーワードが出てきたなw
この流れでなぜ「実用的」という言葉が出るのかが分からない。
時々、話の流れについて行けなくて、「今俺が××について話してるんだ」ってなもんで空気が読めない奴、いるよな。
SQLite、RDF Schemaのサポートはあり?
432 :
NAME IS NULL:2006/04/26(水) 11:02:00 ID:0FXR+P3P
dbに初めてチャレンジしようと思っています。
そこで設計仕様についてちょっと教えてください。
1秒ごとにデータを登録するDBを考えているのですが、
量が大きくなるので出来るだけ小さくしようと考えています。
そのため、日時を最初の位置を今年の5月1日0時0分0秒として、
次のデータを1秒その次を・・・と日時のデータを登録せずに、
データだけ追記指定校と思ったのですが、これだと土日をどう処理するかが
うまく思いつきません。
読み込み側で何行目を読んだかを読み出し、土日の時間を除去して・・・
と計算してやることも可能ですが時間がかかってしまいます。
何かいい方法は無いでしょうか。
>>432 日本語、というか問題の説明能力をもうちょっと身につけないと、これから
社会に出て苦労すると思うよ。何故唐突に土日の話が出てくるの?
というか、何故 SQLite スレ?
出来るだけ小さくっつってもそれじゃあ元も子もないので、
CREATE TABLE hoge ( time INTEGER, value INTEGER );
みたいなテーブル (value の型は適当なのにする) にして、
時刻には UNIX time (意味はぐぐって調べてちょ) を指定するのが良いんじゃないかな。
>>432 一秒ごとにデータを挿入するプログラムを土日は止めればいいじゃん。
>>431 あると思うほうがおかしい。
>>431 なにか勘違いしているとしか思えないが…
そういうのはRDFデータベースに期待するものじゃないのか?
>>437 やってみます。
>>438 金が無いので立ち読みしに行ったのですが、Cの本ばかり。。。
VBは無いぽ。
>>439 その手もありますね。ちょっと色々検討してみます。
>>421 > PerlモジュールのDBD-SQLite-1.09だったから、
> DBのバージョンは SQLite 3.2.2
おおっ。俺の知りたかった情報が!
関係ないところでありがとw
DBD-SQLite-1.09ってPerlに標準バンドルされるようになったの?
DBD-SQLite-なんたらが、どのバージョン使っているのかって
どこを見ればわかるんだろう・・・?
ちょっと探したのだけど見つからなかった。
あーChangesか。あー。
なんで気づかなかったんだろ。
READMEしかみてなかったんかな。
CoreListっていうのを使って標準バンドルか調べられることがわかったから調べた。
どうやらDBD-SQLiteはPerlにバンドルされていないようだ。(最新版は知らない)
以下チラシの裏
なんでうちのレンタルサーバにDBD-SQLite入っていたのかな?
レンタルサーバー屋さんがブログかなんかサポートしたときに入ったのかも。
とりあえず、標準装備のデータベースが容量少ないので
SQLite使って開発中w
SQLite Control Center 3のアイコンが
ポケモンボールに見えて困る。
>>432 実行サイズや速度ばかりに捕らわれて、どんどん可読性の低い成果物を作る
典型的なタイプだな
一緒に仕事したくねー、日時のフィールド一つ追加する位でそんなに速度変わらんし
変わったとしてもCPUを一つ上のクロックにしてもらえば解決する程度じゃねーの
タイプの問題じゃなくて単に勉強不足なだけな気が。もっと勉強しる、と。
>>432 #include <time.h>
#include <stdio.h>
main()
{
char buf[1000]; /* 入力バッファ */
struct tm tm_start; /* 起点となる時刻 */
time_t start_time;
struct tm *tm_work; /* 処理対象時刻 */
time_t work_time;
time_t offset; /* 起点からの相対時間 */
tm_start.tm_sec = 0; /* 秒 */
tm_start.tm_min = 0; /* 分 */
tm_start.tm_hour = 0; /* 時 */
tm_start.tm_mday = 1; /* 日 */
tm_start.tm_mon = 4; /* 月(注: 1月の値が0) */
tm_start.tm_year = 2006 - 1900; /* 年 */
start_time = mktime(&tm_start);
printf("開始時刻: %d -- %s", start_time, asctime(&tm_start));
while (scanf("%d", (time_t *)&offset) != EOF) {
/* 対象時刻 = 起点時刻 + 相対時間 */
work_time = start_time + offset;
tm_work = localtime(&work_time);
switch (tm_work->tm_wday) {
case 0: /* 日曜日 */
case 6: /* 土曜日 */
printf("SKIP!!n");
continue;
default:
;
}
printf("処理対象時刻: %d -- %s", work_time, asctime(tm_work));
}
}
何のこっちゃ
つか441をよく読むと
>VBは無いぽ。
いや、AccessなくてもMDAC入ってればADO(Jet OLEDB)でmdb扱えるからVBならそっちにしとけ……
.NETならスマソ
CREATE TABLE tmp (
id1 INTEGER,
id2 INTEGER,
koubutu CARCHAR(128)
);
id1には社員に振った番号、id2には社員ごとに0から順番に採番
koubutuには好きな食べ物が入ってます。
id1が0の社員を例にとると
id2=0,koubutu="焼き肉"
id2=1,koubutu="ラーメン"
id2=2,koubutu="いなり寿司"
のようにしたいのですが、id1,id2の組みあわせでプライマリキーに
設定はできないのでしょうか?
PRIMARY KEY (id1, id2)
>>451 id2の必要性に疑義を唱えたくなったが、やめとく
454 :
NAME IS NULL:2006/05/03(水) 16:43:33 ID:cddYFusE
SQLiteはかなり楽だった
PHP5が使える鯖にUPしたとたんに使えたよ
バックアップもファイルなので簡単
掲示板やブログ程度ならこっちの方がいいんじゃないかな
実績が、というか使ってる人が少なそうなので業務で使うのは少しだけためらうけど
でもこれから増えてくるんじゃね
ライバルは生テキストファイル。
sqlite3の実装を解説してるサイト無い?
>>456 質問の意図がわからない。
実装というのはどこに、どんな形で、誰が使うの?
一人で使うアプリケーションに実装したいのか、
皆が使うWebサービスに使用したいのか、
それとも一人で使うが利便性を考えてWebサービスにしているのか・・・
はたまた、単なるクライアント/サーバ形式のアプリケーションとして
使いたいのか?
sqlite3の内部構造を知りたいってことじゃね?
460 :
456:2006/05/04(木) 15:47:27 ID:???
>>457 >458さんが仰ってる通りで
sqlite3の内部構造を知りたいんです。
特に内部で使ってる仮想マシン(?)の。
>>459 あら、本家にありましたか。
参考にしてコード追ってみます。
アリガトでございますた。
最終的にはソースコードを読めばいい。
それにまさる情報源は他にない。
462 :
456:2006/05/04(木) 16:25:44 ID:???
>>461 えぇ、そうなんですけど。
予備知識としてアーキテクチャの概要だけでも
持ってると読みやすいかと思いまして。
まぁ、sqlite3のコードにはドキュメント代わりに?
コメントがイパーイついてるんでかなり読みやすいんで助かります。
#コピペしたままで修正して無いのもありましたが・・・。
あとsqlite3の内部関数でググってたら
sqlite3.2.2ですけど、コード読みに助けになりそうなページあったので
貼っておきます。
http://www.srcdoc.com/
sugeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee!!!!111!!!!
>>462 doxygenを使って自分で出した方が、もっと詳細にみれるよ。
>>384の中の人です。
一応dbテストソフト完成しました。
サンプルのありか教えてくれた
>>386さんありがとうございました。
データ量が増えて消えるかどうかはぼちぼち実験していきます。
1週間で50万レコードほど追加されていくので2〜3週間後には結果が分かるかと。
ちなみにレコード追加は約5秒ごとの定期的に発生しますが、そのうちの最新1000レコードを
追加と同じ間隔で読み出しが発生し、1時間ごとに約5000レコードを読み出して計算処理するものです。
ランダムアクセスはほとんどありません。
>>385 個人情報は入ってないので信用問題とかは発生しないのですが消えたら痛いです・・・
でも、もし消えたとしても20万ほど出せば購入は可能です。
買うと高いので自作dbで代用しようってのが最初の趣旨なもので。
念のために二つdbファイル作って片方をメイン、もう片方をバックアップ用のサブとして使う予定ですが、
意味があるのかちょっと不明w
最初はデータ蓄積と簡単な読み出しだけにして実験してみます。
dbが飛んだら飛んだら必ず報告します。
>>466 これDOS窓アプリだった。GUIアプリがありましたら教えてください。
最初にコマンドプロンプトを開いておいて、
その中で実行してみりゃ問題が起きてることが分かる筈なんだが。
>>468 466のアプリではデータの量とかはある程度見れる。
で、SQLite control Center3日本語版ってのをDLしてやってみたんだが、テーブルすら見れない。
なんで他に何か無いかなと思ってね。
あれっ?と思って試しにSQLite2形式のdb作ったら中身はきちんと見れた。
でもSQLite3形式は駄目だった。
もちろんSQLite Cotrol Center3は3.3.4対応だったんで、dllは3.3.4で合わせてます。
>>471 ちょっといじってみたが、Indexの有無も見れないんだな。
476 :
NAME IS NULL:2006/05/08(月) 01:56:57 ID:Y84GoNEV
2系と3系ではスピードの差はあまりないのかな
バージョンの違いがなんなんだろ
3系は大量アクセスにもちょいと2系よりマシとか
2と3の違いなんかHistory読めば分かるだろ
今更2.xはありえねーよ
4が出たら、
今更3.xはありえねーよ
って言いそうだな。
そして何も考えずに4にアップデートしてdbファイル壊して泣くと。
>>480 馬鹿じゃねーの?
両方使った上で言ってるんだが。
3 => 4 で db ファイル壊しちゃうような香具師はどんな DB 使ってもダメだろ。
2が安定版で3が開発版なんですが。
cvsの履歴ツリーみてればどう考えても2は安定板だろう。
ここは精神不安定板ですか?
SQLite3 は 3.0.7 で stable を宣言しているわけで、
それでもまだ「2が安定版で3が開発版なんですが」などと思いたいのであるならば
まあ勝手にするがいいさ。
> 2004-Sep-18 - Version 3.0.7
> Version 3.0 has now been in use by multiple projects for several months with
> no major difficulties. We consider it stable and ready for production use.
>>487 そんなこと言うとメンヘル板住人が押し寄せてくるぞ
>>488 だよねー。古いバージョンが安定版宣言されてるのは当然。その後deprecatedなってるかどうかが問題。
SQLite2 は今後はバグフィックス程度しかメンテされないと思うので、
バージョンを上げられないよっぽどの理由が無い限りはあまりおすすめできない。
SQLite2.8...を使ってるんですが、テーブルのカラム数が足りなくなったのでテーブルを新たに作成しようと思います。
そこで思ったのですが、既存のてーぶるのデータを新しいテーブルに移しつつ移行したいのですが
SQLで何とかなりませんか?既存のテーブルは処理が終ったら削除する予定です。
>>490 いま、スレタイがあれだからね。誤解されやすい。次スレはまだ遠い。
>>491 insert into table2 select * from table1;
>493
I can't thank you enough.
2 => 3 で db ファイル壊しちゃうような香具師はどんな DB 使ってもダメだろ。
って結構いっぱい居たよね(w
>>495 居たね。みんなどんな DB 使ってもダメそうな香具師ばかりだったね。
>>488 そりゃ思いたい気持ちもわかるさ。なんせ、リリースされて無いだけ、毎日バグフィックスされてるからな。
あの Fixed履歴のページを見るだけでウンザリさ。
そのバグフィックスすらほとんどされてないバージョンの方を選ぼうという神経がわからんのだが
ソフトはむやみにいじらずに寝かせておくと熟成してまろやかになるんだよ
メジャーバージョン同じで互換性無くならなけりゃそんでいいけどな。
sqliteはそのへん大丈夫かね。
たぶん、そのあたり、作者は何も考えてない。
非互換でもdumpしてそれを食わせれば無問題
問題の本質を理解してないな。
一度Releaseして運用始まってしまうと、DBデータに手を入れるのは難しい。
特にデータ量が大きいとな。
>>504 それは SQLite 固有の問題なの?
そうでないならいちいちギャーギャー騒ぐなと言いたい。
:memory:で開いてるdbのコピーをHDD上に作るのは何が一番高速と言うか、
他の処理に邪魔されないかな?
今はコピーを作るタイミングでSELECT *ですべてコピーしてるんだが、50Mぐらいのファイルサイズだと
ほんの時々だけなんだが他の処理に不都合が生じるもんでね。
memory上に他のdb作って瞬時コピーってのが出来ればいいんだが。
日本語でおk
>>505 データベース一般の問題だけど、大抵はサポートがあるってもんだ。
固有の問題とかの話じゃないよな。
>>507 メモリー上のSQLITEのdbを素早くHDDにコピーする方法教え〜〜〜て。
不満があるなら使わなきゃいいだけじゃん
>>512 おまえは自分の頭の悪さにいいかげんで気付け。周りの人達はとても迷惑しているだろう。
馬鹿がソフト書くからややこしくなるんだよ。
馬鹿は金払ってソフト作ってもらえよ。
C++ wrapper色々な人が公開してるみたいだけど、
作りかけだったり、インターフェースが別物になってたりする。
薄いラッパでちゃんと作ってあるやつはどっかにないのですか?
気に入らないなら自分で作る。
>>516 そうだな。どうせ3日もあれば作れるだろ。
しかし、異常終了でロックしっぱなしになったテーブルを解放する方法って
どうすればいいんだろう。
>>519 それはDBマターではなくOSマターだろ
運用の話なら、年末とかゴールデンウィークやお盆に出て来てシステム入れ替えればいいんだよ。
sqlite使おうって言い出した香具師が責任持ってケツ拭けばいいだけの話。
誰か他の奴に責任持たせてケツ拭かせたいからオラ勧めるんだもんな
>>520 いや、同一ファイルの特定のテーブルだけロックされているんだが…。
ソースをGREPしたらLockFileやLockFileExが使われているので
少なくともWinでは部分的に排他アクセス処理される可能性はあるけど、
プロセスを殺せばどんなプログラムを書いてても解除されると思うけど。
SQLiteはかなりいいと思うんだが、MySQLやポスグレに比べて同時アクセスなどが弱いのかな?
何を根拠にそのようなことを仰っているのでしょうか?
勿論、コード。
コードを見ると、ウンザリするよな。SQLiteは。
更新規模や、ファイルシステムの性能にもよると思われ。
526なんだが、なるほどdクス
ちょっとしたブログや掲示板サイトならぜんぜん問題なさそうだね
ネットの記事なんか見ると繁盛してるサイトには不向きみたいなことが書いてあったので気になった
ちなみにさっきPHP5で実験したら、EUC-JPの文字コードで ' を書き込むとエラーになったw
何やってもFreeのDataBaseが意外と少ないことに今気づいた。
>>532 文字コードの話題も頻出なので、とりあえず過去ログ読めと言いたい。
せめて
>>1-30 くらいは。
535 :
NAME IS NULL:2006/05/15(月) 17:15:24 ID:wqnS1uN1
Sqlite3でデータを書きこんでいる時にデータを読みに行くと
読めたり読めなかったりするのですが、これをロック解除を待ってから
確実に読み込むようにするにはどうすればいいのでしょうか?
何かロック状態が終わってから確実に読める方法があったら教えてください。
ボラクルに乗り換える。
>>535 .timeout 5000
とかしておけ。ロックしていたら5秒待ってくれる。
デフォルトは 0ms だから、ロックしていたら待ちなしで即エラー。
Thanks!やってみる。
PHPとかからアクセスしてて5秒も止まったらHTTPセッション切られてるがな(w
542 :
NAME IS NULL:2006/05/16(火) 04:38:09 ID:YD2kl2T9
ロリポ鯖でSQLite使うには、何か作業がいるの?設定とか
543 :
NAME IS NULL:2006/05/16(火) 08:27:20 ID:ydhWimUY
>>543 設定というより、ユーザがブラウザの中止ボタンを押しちゃうという話かな。
5秒が嫌なら1秒にでもすれば良かろう。おまえら応用力ないのか?
.timeout 5000 は「最大5秒まで待つ」ということで、「常に5秒待つ」わけではないから普通は問題にならないはず。
sqlite3コマンドでは .timeout で設定し、デフォルトは 0 ミリ秒だが、
PHP5のsqlite関数では sqlite_busy_timeout() で設定し、デフォルトで60秒に設定されている。
ところで >535 はうまくいったのか?結果を教えてくれると嬉しい。
永遠に待つのってできる?
と、ドキュメントも読まずに質問。
>>547 書き込んでるときに横から読み込みは問題なくなった。2秒で十分。
でも書き込んでるときに横から書き込みは5秒でも無理ぽ。
httpdのTimeOut 300(デフォ値)で切られる悪寒。
PHP公式のマニュアルでSQLiteの項目が全部PHP5になっている件
>>549 549=535?
> 書き込んでるときに横から読み込みは問題なくなった。2秒で十分。
タイムアウト時間を設定して頻度が下がっただけで、問題が解決したわけではないよ。
いずれにせよ、時間切れでエラーになった場合の対処は用意しておく必要がある。
> でも書き込んでるときに横から書き込みは5秒でも無理ぽ。
今度は、書き込み同士の衝突が問題になっているのか。
トランザクションを適切に設定していないのでは?
あと、使っているマシン・言語・ドライバ・sqliteのバージョンを明らかにしてくれないだろうか。
書き込みに5秒以上掛かるって、何やらしてるのかな?
>>552 環境はXP Pro sp2 AthX2 2.2G memory 2G SQL3です。
テスト用に重い条件を想定してわざとCommitせずにいちいち書かせている間に
読み書きできるかどうかを試してみました。
>いずれにせよ、時間切れでエラーになった場合の対処は用意しておく必要がある。
これってどうやるの?
言語はC#使ってます。
>>553 実験だよん。
秘密実験(;´Д`)ハァハァ
重い用途向けならボラクルのほうが向いてると思う。
結局誰もアドバイスしてないしw
>>557 アドバイスもなにも、
↓じゃどうしもようないだろ。「そうでつか」としか言いようがない。
>テスト用に重い条件を想定してわざとCommitせずにいちいち書かせている間に
>読み書きできるかどうかを試してみました。
>>554 >>いずれにせよ、時間切れでエラーになった場合の対処は用意しておく必要がある。
>これってどうやるの?
>言語はC#使ってます。
お願いだからこれを教えてくだせぇ。。。
>>559 失敗させればいいだけでしょ。
で、失敗したクエリーがあってもDB本体は壊れないような設計にしておく。
そして失敗したクエリは捨てられ、通販サイトとかならクレームが来ると。
通販サイトでSQLite使うのかw
ファイル単位だから情報漏洩には便利(ファイルダウソすればいいだけだから)だね(ぇ
失敗したクエリが捨てられずに実行されてたら、そっちの方が問題な気がしない?
そして白いカーネーションが届くわけだ
>>548 プログラム組むなら可能。
int busyHandler( void* argument, int count ) {
return 1;
}
を
sqlite3_busy_handler( db, busyHandler, NULL );
で設定。
お馬鹿な質問で申し訳ないけど、memory上のdatabaseを
他のアプリから読めるようにするにはどうしたらいいの?
あと、memory上のdatabaseをファイル出力する方法を教えてください。
>>567 RPCやリモートメソッド呼び出しで、別プロセスが捕まえている
DBにアクセスすればできそうだけど、かなり面倒臭そう。
SQLiteじゃなくてMySQLみたいなデーモンプロセスのDBの方が
すっきり作れそうな気がするんだけど。
SQLiteじゃないとダメなの?
ファイル出力するには、FILEのDBをべつに作って
SELECT文で全書き出しするとか。オレはやったことないからよくワカンネ。
>>568 MySQL使ったらmemory上の高速処理のメリットを享受できないですよね。
なんで、それなら内部処理用にmemory上のdatabaseと外部アクセス用の
コピーdatabaseを作ろうと思います。
こっちのほうが幸せですよね。
そんな方法あんの?詳しく
>>569 メモリファイルシステム上に置くのが手っ取り早いかも。
573 :
568:2006/05/17(水) 14:22:10 ID:???
>>569 MySQLには「Heap」っていうメモリ上に展開するストレージエンジンが
あるから挙げたんだけど。
それじゃシアワセになれない?
複数プロセスからのアクセスの問題も解決できるしね。
574 :
NAME IS NULL:2006/05/17(水) 15:29:56 ID:/SPfKFBI
ID(連番とは限らない数値),name(文字列)
1,"aaa"
2,"bbb"
3,"aaa"
4,"aaa"
5,"ccc"
というテーブルがあったとして(件数は数万件)、
$names = array("aaa","bbb","ccc");
のような結果になるよう、nameを重複せずに列挙したいのですが、
SELECT文を一発で取得できる方法があれば教えてください…。
576 :
NAME IS NULL:2006/05/17(水) 15:39:39 ID:/SPfKFBI
>>574 UNIX だったらそんなの使わなくてもええよ。
昨日からググったりして悩んでたのに、なぜか質問書いたらすぐに
5年前にオラクル研修で習った group by を思い出せました。
アホすぎてすいません…
メモリ上のDBが消えたら痛そうだな。
かといっていちいちハードディスクに書き出してたら遅いと思う。
クエリが失敗したら、通販サイトなら注文できないってクレームが殺到すると思う。
RAMドライブでも使ったらどうだ。l
みんなcache sizeやpage sizeってどう設定してる?
適正値の求め方が分からないんだが何かいい計算方法みたいなのある?
そもそも単位がbyteなのかkbyteなのかも不明。
>>579 さすがにメモリ上だったら無理だろうけど、i-RAM上だったら大丈夫でしょ。
Sqliteってデータベース更新中の電源断でも.jounalファイルさえ生きてればきちんと
更新できるんじゃなかったっけ?
って言ってもやりかた分からないんだがw
>>582 特に何もやらなくてもライブラリの側で勝手に復元してくれるんじゃないかな。
おお、ホントに試すとは。
結構堅く出来てるよね。
ファイルシステムが壊れるくらいの状況なら無理だけどな。
フルリストア中に落とすと壊れてダメ。高負荷時は落ちない様にしとかないと全データ失うよ。
絞り込み条件って、正規表現で指定しても問題なく行っちゃうモンなの?
正規表現?
何のことを言ってるんだ?
>>587 絞り込み条件って何? SQLのWHEREのことを言ってるの?
んー、MySQLのRLIKEみたいなのを期待してるのか?
そんなものは無い。
591 :
NAME IS NULL:2006/05/20(土) 17:54:09 ID:IFLGFXmR
テスト的にSQLiteのV2を使ってみたが、かなり使えそうでいい感じだ。
元々MysqlだったPHPのコードをSQLite用に書き換えただけだが、速いのが体感できる。
データ件数は1万以下だがな
PHPとMySQLを同じ鯖で動かしてる糞環境とか?
DOSで起動して爆速って喜んでるのと同じレベルだ。
誰彼構わず噛み付いてくれるな
>>592 貶すだけが目的ならもう来なくていいからな。
SQLiteがちゃんと使えると困る奴が居るんだろうね
もうDB屋は廃業するしか無いね。
これからはウェブプログラマ屋の時代。
>ウェブプログラマ屋
ってことはやっぱり偽装派遣の時代なんですね!
598 :
NAME IS NULL:2006/05/21(日) 02:08:17 ID:2+pAof2d
>>595 そうかもしれんねw
ポスグレもカンペキなフリーでない事に最近気づいた
売ろうが書き換えようが何やってもタダなDBって少ないかもね
599 :
NAME IS NULL:2006/05/21(日) 02:09:34 ID:2+pAof2d
VACUUMを知ったばかりなのですが、これはどの程度の頻度で行なえば良いのですか?
1クエリで約50kB INSERT、約200回/dayの頻度です。DELETE回数も比較的多いです。
601 :
NAME IS NULL:2006/05/21(日) 15:50:22 ID:2xbMbRSq
けっこうな更新頻度でそれなりにデータ量があるんだね
オレも気になる
教えてエロい人
トランザクションの空きがある時間に、こまめにやってるけど。
壊れる頻度は計算できても、適切な頻度って出しにくいんじゃないかな。
アクセスがあるとかで、その頻度で実行できる保証はないし。
VACUUM をしなくてもパフォーマンスが落ちることはほとんどないみたいなので、
たまに思い出したときにやれば良いんじゃないの?
DELETEしてもVACUUMしないとファイルサイズ小さくならないよね
それなりに再利用するから際限なく増えるってことは無いと思われ。
あと、ファイルサイズ増えてもパフォーマンスにはそれほど影響しないし。
606 :
NAME IS NULL:2006/05/23(火) 14:01:46 ID:cQMqo7o9
DBがデブってくるとそれだけで気分的にバキュームしたくなるんだよね
身近に毎日AccessMDBを最適化してる香具師もいるしな
やたらとHDにデフラグをかける素人みたいなもんだろ。
日常生活でもやや潔癖症だったりする。
608 :
NAME IS NULL:2006/05/23(火) 19:24:31 ID:hNJIL1tF
SQL文法になってしまうのでスレ違いかもしれけど教えてください。
Sqlite3でテーブルにデータが何も無かったら追記、何かデータがあったら書き換えるってのは
どうすればいいのでしょうか?
>>608 REPLACE
か
INSERT OR REPLACE INTO
じゃなかったっけ?
>>608 一旦SELECTしてみて、その結果に応じてINSERT/UPDATEを使い分ける。
1. BEGIN [IMMEDIATE|EXCLUSIVE]でトランザクション開始&ロック獲得
2. SELECT
3a. レコードが存在すればUPDATE
3b. 存在しなければINSERT
4 COMMIT
他のスレッドやプロセスが同時にDBにアクセスしないのなら、
IMMEDIATEやEXCLUSIVEはいらない。
代わりにINSERT OR REPLACEも使える。
挿入しようとするレコードが既に存在する場合、
そのレコードを一旦削除してから新しいのを挿入する。
612 :
NAME IS NULL:2006/05/24(水) 02:57:15 ID:l66rajxq
SQLite初心者だけど、報告しまつ。
昨日、PHP5の有料鯖を借りたので、SQLiteを使った掲示板のテストしてみた。
おれのPC(Win2000、Apache2、PHP Version 5.0.1、SQLite Library 2.8.14)で、
作ったDBファイルを有料鯖(PHP Version 5.1.1、SQLite Library 3.2.7)にFTPで
放り込んで動かしたらあたりまえのように動いた。
DBファイルもそのディレクトリもパーミッションを777にしないと動かなかったが、
SQLiteのバージョン2で作ったDBファイルもSQLite3の環境で動くもんなんですな。
しかしパーミッションが777でいいんかいな。
とりあえず。
Movable TypeでSQLiteを使う場合、DBの入ったフォルダもパーミッションを755か777にしないと書き込めないらしい・・・か
FTP の owner と Apache の owner が同じなら 0700/0600 で良さそうな気がするけど、
それでもまあ
>>613 だよなあ。
>>614 そうなんだ。それで動かなかったのかな。。
うまく動いてるマシンは、755だ。
SQLite3のデータをチョイといじったり、one linerみたいなSQLをチョイと流したりするのに
いいツールないですか。
今使わせてもらっているSQLiteCC3-jに不満があるわけではないけど。
ツールもなにもコマンドラインからいじればいいだけじゃなくて?
619 :
NAME IS NULL:2006/05/25(木) 13:19:19 ID:/3vMclPd
612ですがパーミッションを755にしても動かなかったです。
DBの内容自体はただの掲示板なので、見られても壊されないならまあいいんだけど。
セキュリティの面からすると777でないと動かないのはやはり問題ですかね。
問題かどうかは、そのサーバがどういう方針で運用されてるかに依存するので、
具体的にサーバの運用方針をみてみないことには正直何とも言えない。
jail とかの技術で系が分離されてるなら 777 でも全然問題ないかもしれないし、
共用サーバの設定によっては 700 でも危ないし。
700でも危ない環境だったら、どうにもならんね。
MAC使える環境なら、777でも安全に出来るだろうけど、
そんな環境なら、700でも危ないなんて状況にはならんだろうし。
> MAC使える環境なら
kwsk
623 :
NAME IS NULL:2006/05/26(金) 02:58:03 ID:HUpFYXL7
612です。
とりあえず有料鯖屋に聞いてみます。
777ではダメみたいに鯖屋のFAQにありました。
自分としてはセキュリティがどうのと言える物ではないのですが。
どうもです。
>>622 MAC (Mandatory Access Control)
パーミッション緩くないとダメってのは、他の香具師にデータ抜かれるのを覚悟だな。
データ大事なら専用鯖使ったほうがいいよ。
>>612 >SQLiteのバージョン2で作ったDBファイルもSQLite3の環境で動くもんなんですな。
動かないのでは・・・。
おそらく>612はサーバーのPHPかなんかの設定がSQLite2になっていることに気がついていないに1ペリカ。
>>626 確かにファイルの互換性がないから動かないはずだが
さて、sqlite4に成ったときの心配でもしとこう。
また互換性無くて困るんだろうな。
630 :
NAME IS NULL:2006/05/27(土) 16:50:04 ID:HsY8FQdY
612です。
phpinfoで見たら、PDO drivers sqlite2, sqliteになってました。
SQLite Library 3.2.7だったのでSQLite3だと思ってますた。
移行する手段はあるだろうからそれほど困らないと思うんだが・・・
632 :
NAME IS NULL:2006/05/27(土) 21:01:01 ID:FWE0BHiI
sqliteで複数のDBを開いてトリガ条件で他のDBにちょっかい出したい。
例えばa_tblが更新されたらb_tblに値を書き込め!みたいな。
~% sqlite3 a.db
sqlite> create table a_tbl (aid Integer);
sqlite> .tables
a_tbl
sqlite> .exit
----
~% sqlite3 b.db
sqlite> create table b_tbl (bid Integer);
sqlite> .tables
b_tbl
sqlite> .exit
----
~% sqlite3 a.db
sqlite> attach "b.db" as bdb;
sqlite> .databases
seq name file
--- --------------- ----------------------------------------------------------
0 main /home/hamaguch/a.db
2 bdb /home/hamaguch/b.db
----
★トリガ設定
sqlite> CREATE TRIGGER trig BEFORE UPDATE OF aid ON a_tbl BEGIN INSERT INTO b_tbl values(100); END;
★テーブル更新!
sqlite> UPDATE a_tbl SET aid=5 where rowid = 1;
★値を書き込めません(トリガがかかっている)
SQL error: no such table: main.b_tbl
★b.tblに手が出せない訳ではない
sqlite> INSERT INTO b_tbl VALUES(50);
sqlite> SELECT * FROM b_tbl;
50
----
★トリガかけ直し(今度はDB名も追加する)
sqlite> DROP TRIGGER trig;
sqlite> CREATE TRIGGER trig BEFORE UPDATE OF aid ON a_tbl BEGIN INSERT INTO 'bdb.b_tbl' values(100); END;
★テーブル更新!
sqlite> UPDATE a_tbl SET aid=5 where rowid = 1;
SQL error: no such table: main.bdb.b_tbl
----
結論:複数のDBファイルをまたいでトリガ処理をかけることはできないんだからね!
でおk?
634 :
NAME IS NULL:2006/05/27(土) 23:51:18 ID:FWE0BHiI
> 633
thnx! ATTACH系の情報がとても少なくて困っていたの。
やっぱだめなのか。入り口で見張るしかないか。ありがと。ありがと。
PHP5もリリースされてけっこう時間がたってるのにSQLiteの情報って少ないですね。
特に書くことが無いとも言える。
本見れば既に書いてあるからね。本屋に行けば済む話。
それはそれでさびしいもんだなw
ソース見れば全て書いてあるからね。ソース読めば済む話。
これは流行ると思っていたがそうでもないのか
pythonが2.5でデフォ対応するのでもうすぐ流行るよ
アクセスが流行らないのと同じ理由で流行らない。
オフィスにデフォ付属のアクセスでさえ流行ることは無いよ。
py使える香具師がどれだけ居るのかと(w
>>642 アクセスってOfficeにデフォルトでついてるの?ついてないと思うけど
WordとExcelとOutlookだけじゃない?
>>643 上のグレードのパッケージには付いてるけど普通のには付いてない。
値段に結構差があるので、会社で買ったりPCにバンドルされてるのには無いと思って間違いない。
比べるなら、只なのに余り(目立って)流行らないMSDE2000とか。
一般人にDBはムリ
それなりスキルがある人間はポスグレかMySQLがまだいいのだろう
会社ならパワポのためにオフィスプロ買ってるよ。
>>642 > py使える香具師がどれだけ居るのかと(w
日本国外に沢山居ますよ。日本国内だけで流行ってもそれは流行りになりませんからねぇ。
OpenOffice2.0のDBも使ってないな。
オレもsqliteは流行ると思ってたんだがな
ググってもMTをsqliteへ乗り換えるような記事がほとんどのような気がするんだが
飴で流行らないとダメなのか
pythonの流行もアメリカの後追いだしな
流行るってなんだよ?
本がたくさん出ることか?
糞ライターや出版社にとってはな
つーか流行らなくていい。
こんな便利なツール他の人には使って欲しくない。
隙間産業で唾付けた香具師にとっては流行るのは勘弁てところ?
pyねえ日本じゃrubyでしょ。
逆に世界的にはrubyが広まりつつ有る。
世界第二位の経済大国なんだからもっと自信持ったほうがいいよ。海外云々いうのは愚か。
もうブログ自体便所の落書きって認識だし、MTも落ち目でしょ。MT自体はMySQL前提だからsqlite選択は不幸。
ナニが逆なんかしらんがその日本で言語の選択云々は別にLiteの話題がねえなあと言っておるんだろうが
py vs rubyなら他所でどうぞ
ファイルシステムの統一化にSQLite。これ最強
嫉妬すんなよ。rubyもいい言語だね。
659 :
NAME IS NULL:2006/05/30(火) 16:02:14 ID:vdQbCvkT
レンタル共用鯖でDBを使う場合、DB鯖がピークタイムの時は激遅になる時があるので、
SQLiteを使うというのは現実いい選択だと思うんだがな
MTのSQLite乗り換えをネットでよく見るのはそのせいだろ
前スレにもあったけど思ったより同時アクセスに弱いものではなさそうなんだな
単にさくらのレンタルサーバのMySQL鯖が腐ってるだけ
BerkeleyDBは遅いし出来ないこともあるからSQLite
ただそれだけ
日本語の本はほとんどないね
PHP5のおまけみたいな感じでサラっと流してるような
Myの環境がデフォで付いてこなくなったから最近増えてきたってだけのような気がしないでも無い。
663 :
NAME IS NULL:2006/05/31(水) 11:57:38 ID:OelFoWLc
SQLiteなど知らぬ通じぬ
世間はアクセスでも壊滅的で、エクセル止まりです。
Excelだって方眼紙アプリとしか使われていません (><)
>>665 確かに・・・
画面ショットを客から送ってもらったら
大抵、Excelに貼り付けられているし
一般人がデータベース使うとしたら
筆まめとかの住所録くらいだろうな
一般人はそれでいいのでは・・・
>>667 確かにそのくらいならExcelかテキストファイルでも十分だな
むしろワードすら使われずに、エクセルの文書が来たりもするね。
家計簿とかデータベースの発揮どころだと思うけど、MS MoneyはJetデータベースじゃないのかな?
家計簿こそ表計算ソフトが使われるところじゃ??
すいません
使用する文字コードを指定する方法や今使用されている文字コードを調べる方方がわからないんですけど
教えてもらえないでしょうか
>>672 APIレベルではUTF-8またはUTF-16
あとは使う言語やフロントエンド次第
コマンド等で変更したりするわけじゃないんですね
有難うございました
SQLiteほどWEBDBとしていじくれる物はないと思うんだが、書籍は少ないし有名所の使用例もあまりないということなのかな。
コンパイルしてないと使えないからねえ。
>>609 やってみたんだけど駄目だった。データがどんどん追記されてしまう。。。
なんでだろ?
ちなみにソース
7個のそれぞれが書き換えられた時にLastTime[]の中にそれぞれの最終更新時間を入れてます。
sqlite3_exec(db,PChar('REPLACE INTO LastLoggedTime VALUES('+Floattostr(LastTime[0])+','+
Floattostr(LastTime[1])+','+Floattostr(LastTime[2])+','+Floattostr(LastTime[3])+','+
Floattostr(LastTime[4])+','+Floattostr(LastTime[5])+','+Floattostr(LastTime[6])+
')'),nil,nil,msg);
REPLACEはUNIQUE制約に反する場合にしか働かんよ。
PRIMARY KEYを明示的に指定してないとか、そういうオチじゃない?
とりあえず、スキーマを書きなよ。
REPLACEはINSERTと同等です。
書き換えるにはUPDATEをご利用ください。
って公式に書いてあったと思ったけど?
>>677 ちゃんと理解しながら使ってる?
とりあえず公式HPの「ON CONFLICT clause」というページを
読めば何が悪いか分かるよ
>>678 これがビンゴだと思います。またやり直してみます。
>>680 英語ってナニ?宇宙語?ってレベルなのですが?
>>681 一応公式HPのページは
>>678と同じことを書いている
英語が出来ないことを自慢する前に、最近は、無料で
英日翻訳も出来るHPもあるしさ
>>683 Sleipnir派生プロジェクトの2chブラウザにSQLiteが使われてるよ!
と教えてくれたのかな?
主語ぐらい書けや。
馬鹿は英語が読めないよ。だから馬鹿なんだが。
よく「アメリカでは馬鹿でも子供でも英語が読める」と言うが、
最近のニュースを見てアメリカでも最底辺の馬鹿は英語が読めない事を知った。
日本でも英語が読めないくせに開きなおる奴はどこかからの移民なんだろう。
>>685 馬鹿って言ったやつが馬鹿だ。この馬鹿。
689 :
688:2006/06/04(日) 11:13:00 ID:???
流れで適当に言ってみただけなのだが、黙ったところを見ると図星だったらしい。
過疎スレで煽って楽しいか?
別に楽しくないが読んで不愉快な気分になってくれたのなら多いに結構w
在日チョンは日本語訛りで馬鹿にされる。
在日チョンって、子孫のために半島で産んで半島で育てようという気もないほど愛国心に欠けてるのか?
おねがいもうやめて…
>>691 おまえトイレで飯食って過ごしてるのか?
そう言えばトイレに引きこもるのってちょうどいいかもな。
水も飲めるし一歩も出ずに一週間は居られる。
696 :
NAME IS NULL:2006/06/05(月) 01:02:42 ID:xeeuls/m
確かにコレはバックアップが楽でよさそうだな
ここはいつもこんな調子なのか
スレが動いてると思ったらこれか
SQLiteでバックアップが楽だとかほざいてる奴は何使っても同じ。
だな。
ボラクルでもシャットダウンすれば、バックアップはsqliteと変わらんよ。
sqliteは動作させながら(ファイルハンドル掴んだまま)バックアップは出来ないけど、ボラクルは稼働中でも安全にバックアップ取れる。
ま、SQLiteとオラクルを比較してる時点でキチガイ認定だけどな。
自転車と大型トレーラを比較するくらいナンセンス。
この場合SQLiteの対極にあるDBMとしてOracleを出すのはどこもおかしくないな。
今じゃホットバックアップならMySQLでも陰嚢DBで取れるわけだが。
恥の上塗りはやめとけ
>>696=
>>700
すぐオラクルの話を出すのは特殊工作員ですから相手にしないように
中学時代のいじめられっ子がネット上で世間に対して執拗に反撃
粘着荒らしとなる
サクセスストーリーですね
707 :
NAME IS NULL:2006/06/05(月) 18:45:11 ID:nPswwV2x
変なのがいるようだが、DBファイルのBUはバイトの子でもできるレベルで良い。
ちょっとした在庫管理で東京5クライアント+札幌2クライアントで1年ちょい使
っているけどトラブルも全くない。
データが1万件程度なので運がいいだけなのか。
軽い業務なのでぜんぜん不満はないよ。
嘘つけ。おまえの脳内業務はトラブル続きで医者に通ってるくせに。
脳内業務ならトラブル続きでも支障なかろう
逆にちょっとした在庫管理程度しかこなせないのがsqliteの弱点。
バイトに基幹業務のデータなんて触らせられ無いよ。nyで流出したら終わるよ。
>711
バイト同様の派遣の分際で基幹システムのコア近くに携わってますが何か。
まぁ職場はプロキシの制限で普通の調べ物にも事欠く有様だし媒体持ちだしなんて言うもさらなりだが
PGはどうせ全員頭がおかしいのだから
馬鹿や気狂いが一人や二人混じってても騒ぐような事ではない。
やっぱりアクセス使ってるほうが平和ですね。
716 :
NAME IS NULL:2006/06/07(水) 13:39:40 ID:VhWJoSYR
SQLiteのVer2とVer3の違いはUTF-16が使えるとかその程度なのでしょうか?
スピードが上がったとかはないのかな。
>>716 なぜそう思う?公式ページも読まん人か?
ここで「英語は苦手なので」とくるのがダメな人のパターン
2006-Jun-6 - Version 3.3.6
Changes include improved tolerance for windows virus scanners
and faster :memory: databases.
There are also fixes for several obscure bugs.
Upgrade if you are having problems.
つーか英語読めないのに使うのが無謀だよな。エラー出ても読めないとか考えないのか?
日本語のエラーがでるアクセス使っとけ。
ここに張り付いてる人が気持ち悪い件
大五郎〜♪
北海道な人ハケーン
ふんどし(////)
728 :
NAME IS NULL:2006/06/10(土) 14:56:19 ID:NFtKC5Da
おれのSQLiteがおまえらのせいで気色悪い雰囲気になっている件
そもそもsqlite使いは気色悪いので恋人居ないし。
そもそも?
へ?
誰にレスしてんだよ。
おまいらsqliteばっかり弄ってるとモテないぞ。
俺だけにこっそりモテモテのDBを教えてくれ。
当然ボラクル。
世の中、金と権力。
どうりでモテないはずだ
ていうか、
もういい
738 :
NAME IS NULL:2006/06/12(月) 15:20:18 ID:qAUU/nWZ
SQLiteはどこか有名サイトで使われてるのかい?
東証では使ってないことは確実。
Tracが使ってるからなー。
実はオープンソースソフトウェア開発サイトで
結構使われてる。
有名サイト=アクセス数が多いサイトではさすがに使われていないだろう
とはいえ参照系が多いだけなら結構使えるとは思うけど
firefoxのブックマーク/履歴管理に採用される予定だし
>>742 サイトじゃないじゃん
ローカルアプリでいいんなら mac os x の spotlight
Janeのログ管理
PHPばっかやってると周りが見えなくなりすぎ。SQLiteは組み込みメインだろ。
なんでサイトなんだよ。別にいいけどさあ!!
なんだ、いいのか
php廚の常識は、db業界の非常識。
何に関してでも 厨 はだめだよな
そうだな。sqlite廚も痛いよ。
レンタル共用サバではSQLite使う方がよさそだな
この業界は非常識くらがちょうどいい
レンタルサーバでSQLite使うのは非常識なんですか?
DBインスコされてるWebスペースなんて一握りだからなあ
そういうところだとSQLiteがちょうどいいよね
そもそもレンタル鯖が非常識。
自分で鯖建てられないのか?
>>753 君には鯖の運用コストという概念はないのか?
レンタルした方が楽で得な場合もあるのだよ。
全員が自鯖にすると地球温暖化に繋がる
>>755 レンタルだったら温暖化にならないのかよ
レンタルは廃熱凄いからね。
データセンター逝って鯖の前に建つだけでも凄い排気熱だよ。
後レンタルでセキュリティに気をつけてる所は皆無。
DBインスコされてるサバ屋も多いけど、共用になるとDBサバは別体で混雑してるからな。
自分のスペースに置いて軽く動くSQLiteはかなり良いだろう
ユーザーに取ってDBなんか関係ない
>>755 そんな気がする
ここは煽り合いの盛んなスレですね。
関係ないなんて過信してるから、インターネットのどこからでもSQLで自在に顧客情報が取れるアフォ通販サイトがレン鯖に多い。
おまいら馬鹿だから、バックアップしやすい様にhtdocの下にdbファイル置いてるだろ?
ここは煽り合いの盛んなスレですね。(2回目)
おまえらみたいなのはsqliteを使わないでほしい
> インターネットのどこからでもSQLで自在に顧客情報が取れるアフォ通販サイトがレン鯖に多い。
SQLで取れるんだったら、なおさらデータベースなんか関係ないだろ。
SELECT tb1.*
みたいに、テーブル名を付けて呼んで、PHPでfetchすると
["tb1.name"] = "hoge"
という感じにキーにテーブル名が入ってしまうのですが、付けずに取得する方法はないでしょうか。
asで一個づつつけるしかありませんか。。?
SELECT * FROM tb1
簡潔に書きすぎて後出しになってしまいますが、joinしているのです
SELECT * FROM (SELECT tbl.* ...
だめだOTL
NATURAL JOIN 使えないの?
>>768 レス有難うございます。
試してみましたが、同じ名前があるからか、エラーになってしまいました。
正規化する場合、プライマリキーの名前って別にした方が良いのでしょうか。
ON tb1.mid = tb2.mid
↓
ON tb1.mid = tb2.d_mid
もったいぶらずに全部見せてみろ
単純にLEFTJOINしているだけで特にややこしい事はしていません。
$q = $db->query('SELECT * FROM tb1 LEFT JOIN tb2 ON tb1.mid = tb1.mid WHERE tb1.id = 1');
print_r($q->fetch(SQLITE_ASSOC))
結果
["tb1.mid"] = 2
["tb1.name"] = hoge
["tb2.did"] = 1
["tb2.mid"] = 2
["tb2.datetime"] = 2006-06-16 ....
:
MySQLのように同名列は結合される方(tb2)優先で、テーブル名を省略できないかなと。
とりあえず、今のところはASで全部名前をつけなおしてます。
取得する列は両方のテーブル取ったり、片方取ったり場合によって色々です。
ふんむー
クエリ文記述ミスです
$q = $db->query('SELECT * FROM tb1 LEFT JOIN tb2 ON tb1.mid = tb2.mid WHERE tb2.did = 1');
しょぼいヲチだったな。
これだから素人の小出しの質問は嫌われる。
どこが間違ってるかすら判断できないほどの素人なら、最初からありったけ曝せ。
むしろ問題の範囲が分かる時点で、既に自力解決出来るだろうに
このスレの煽りはMySQL厨とかなのかな?
sqliteと競合する全てでしょ。
SQLiteって何て読むの?
「えすきゅーらいと?」
「えすきゅーえるぃて?」
「えすきゅーえるらいと?」
あと、これってオンメモリだと512M〜1Gほどのメモリを喰うようなデータベースにも使えますか?
ファイルのオープンで凄い時間かかりそうなんですけど・・・
>>780 俺はエスキューライトと読んでいる。
1G程度のデータなら余裕で格納できる。
DBのオープン時にファイル内容を全て読み込むわけではないので、
それほど時間はかからない。
>>772ですが、
>>774は私です。入力した時にミスったようで。
別に煽っているわけじゃなくて、出来ないならPHP側で対応していこうと思います。
省略できればいいなと思っただけなので。
色んなサンプル見るとASで付けてるケースが多いので、省略はでないっぽいですね。
他のDBの機能を持ち出して書くのはタブーだとは知らずに、不快な思いをさせてしまい申し訳ありません。
MySQLをマイシーケルと読む人が周囲に多い。
というか、SQLをシーケルと読む人が多い。
いや、語源的には間違っていないと思うのだが・・・。
>>784はえすきゅーえるって読んでるのか?(ププ
786 :
780:2006/06/17(土) 15:42:47 ID:???
>>781 なるほど!
それは良さそうですね。
PHPだけじゃなくて、普通にスタンドアロンで動くCやJavaアプリから使うことを想定しても、かなり良さげなDBですね。
何を今更
788 :
NAME IS NULL:2006/06/17(土) 18:23:12 ID:5uCB7Lsn
>>786 志村逆う。
組み込みが先でそのあとPHP。
>>786 というかまさにそのためのDBなんだが… < スタンドアロン
もちろんWebアプリ*でも*使えるけれども…
俺はSQLをスキュルと読む。詩人だからな。
おれは土方な三文文士だからエスキューエルだな
日本ではエスキューエルの方がメジャーな呼び方だろうな。
人と話すときにシーケルとか言うと余計な説明を間に入れないといけなくなりそ。
Windows のタブブラウザ Sleipnir のディレクトリに sqlite3.dll が置いてあった。
796 :
684:2006/06/17(土) 23:57:20 ID:???
>>795 何に使ってんだろうね。Firefoxの将来のバージョンのように
ブックマークや履歴を管理するデータベースにか?
>>793 Sが「シー」なのがよくわからないけど、
「クェル」の部分はQUELやPostQUELあたりの名残なのかな?
SQLの前身がIBMのStructured English QUEry Language (SEQUEL)だから。
ISO規格としてのSQLは、「エスキューエル」と読むのが正しい。
ただし欧米圏では、「シークェル」と読む人も多い。
シーケンス クェリー ランゲージ
S Q L
SQLite = スキュライト
>>801 それが正しいと思うよ。
内部解析アルゴリズムがLemonになってたからスプライトレモンにかけてるんでしょ。
俺はずっとそう言ってる。
ここは触手系が好きな変態の巣窟ですね。
>>808 そこ読んだけど
>その反面、SQLiteの短所としては、データがあくまでもローカルに保持されるために、
>複数のWebサーバーからアクセスを受けることができないという点が挙げられる。
ってとこ間違えてるんじゃないの?
複数の "Webサーバ" ならあってると思うけど
ネットワークを介してアクセスできないって言いたいんじゃない?
同じマシン上で複数のWebサーバが稼動している場合は、
問題なくアクセスできるわけだし。
Webサーバプロセス、ではなくWebサーバマシンって事だね
とはいえサーバ分散構成するくらいの状況で
バックエンドDBにSQLiteを使うって奴はオカシイと思うがw
つまりスケールアップ不能ってことだな。
人気サイトに成ったら作り直しで、再び単価がっぽり儲ける?
SQLiteの前にフロントエンドを作って
そいつに色んな鯖からアクセスしかけりゃ、複数のWebサーバーマシンからいけるんじゃね?
インターネットに公開するサイト構築をビジネスでやるとしたら
常識的に考えてSQLiteは使わんだろー。
基本的はクライアントアプリの組み込み用として使うべきだろう。
といいつつ実はODBCインタフェースとかあったりして?
>>815 単なるDBMSの入れ替えだけで「がっぽり」はない。
ただSQLiteでは無理つうことは、構成の練り直しということなので
その部分では当たり前に費用は発生するよな。
荷物が増えれば軽自動車やめてトラックにするのは当然。運転技術も若干違うだろう。
だが、荷物が少ないのに常にトラックを使う奴はアホだ。
例えばお歳暮シーズンの需要に対応できずにみすみす勝機を逃す訳か。
トラックも用意しといて、軽トラと使い分ければいいのに。
>>819の例えがどれだけオカシイかというと。
アクセス数が増えればSQLiteやめてMySQLにするのは当然。クエリ構文も若干違うだろう。
だが、アクセス数が少ないのに常にMySQLを使う奴はアホだ。
ひょっとするとSQLiteとOracleしか知らなかったりして?
それならばまあ分からんでもないがなw
なんでもいいじゃん
ちゃんと動いて要件満たせてるなら
100000ヒット/日でも大丈夫らしいがどうなんだ
こんなベンチテストを日本でやった香具師はいないんじゃないかな
>>823 参照系だけならその位テキストファイルでも超余裕だろ
問題は更新系だ。
>>823 Webなら2ちゃん規模でもない限り更新されまくりでも問題ないんじゃまいか
>>823 10万ヒット/日って言っても平均すれば1.16ヒット/秒だろ。
実際は時間帯によってアクセス数に偏りがあるとして、
仮に特定の時間帯に5倍のアクセスが集中しても6ヒット/秒。
そんなに大した負荷ではないと思うが。
それにDBがどうというよりはアプリの組み方や初期化の方が影響大きいだろう。
複数サーバでスケールアップすることを考えない限り他のDBMSより有利なわけだし。
糞なSQL書いたり無駄に重く作ったりすりゃDB何使っても駄目だしな
ボラクルRACならどんなにPGが糞でもシステム増強して対応できるよ(w
>>829 へぇ。そりゃ馬鹿向きの素晴らしいDBですね。
10マソHit/Dayも逝くようなサイトなら、DB以前に帯域が問題になるだろ
SQLiteスレですよ?
>>823 大丈夫とはどういう状態なんだよ。
どうなんだってどういう意味なんだよ。
SQLiteとPHPでサイト作りました。
よろしくおながいします。
引き継ぐからソースをウpしといて。
sqliteには4GBの壁が有るし、10マソヒットは無理。
>>837 デマはよくないぞ
- Supports databases up to 2 terabytes (2^41 bytes) in size.
839 :
NAME IS NULL:2006/06/21(水) 17:40:20 ID:XfcAAW+y
>>833 おまえのチソチソは臭くて毛巻き込んでちっちゃいだろ
レン鯖で2Gまでしか使えないので4Gの壁だったとしても大丈夫。
32bitOSでは4GB超のファイルは作れないよ。
ファイルハンドルのビット数が足りない。
>>842 無茶苦茶いっとるなwww
LinuxでもWindowsも、64bitファイルシステムには
とっくに対応している。
そもそもファイルハンドルのビット数云々というなら、ファイルサイズじゃなくてファイルの個数の問題だろうに。
だからさ、32bitCPUだと4GB超えたらキャリーオーバで速度遅くなるじゃん。
>>845 遅くて困るなら64bit OS使えばいいじゃん
>>842 この人によると、Windows2000のNTFSであっても4G以上のファイルが作れないそうだ
ふーん、知らなんだ
ファイルが4GBとか言ってるやつは、
INTERGERで32bit超える大きい数値扱うときどうするつもりなんだろな。
遅くなるのと使えないのは全然ちゃうじゃん
32bit超えると32bitCPUでは遅くなるのが理解できてない香具師が多いなあ。
計算ばっかり行うようなプログラムならまだしも、
ファイルサイズ程度に使われる程度なら対して影響ないだろw
だいたい遅くなっても”使える”ということを認めてちゃ
敗北宣言と同じだw
JaneDoeStyleにもひそかにsqlite.dllが入っててびっくり。
855 :
NAME IS NULL:2006/06/22(木) 21:51:30 ID:rKaNPUAw
PHP からの接続を PEAR の DB 経由に換えてみたんだけど、
$db->autoCommit(false);
しているのに、勝手にオートコッミトしている。
連続インサートでスピードが出ないよ。
なんでPDO使わないの?
SQLiteってMS AccessのMDBを連想してしまうんで、いちまつの不安があるな。
まあ、MDBよりはマシなんだろうが
858 :
855:2006/06/22(木) 23:37:28 ID:???
859 :
NAME IS NULL:2006/06/23(金) 12:59:46 ID:wZDCBHCi
そもそも4GBになるような、 いや、なんでもない
気がついたら数ギガに成ってたというのがsqliteの実情だよ。
組み込みだから放置されまくりだし。
quotaで制限されて更新できなくなることが多い。
そんなにでかくなるほどデータを突っ込むケースは希じゃないのかなあ。
俺は100万件で500MBくらいのなら作ったことあるけど、そんなにでかくなる
ってのはどういうケースなのか「実情」とか言わないでちゃんと書いて欲しいなあ。
組み込みで数ギガってのが良くわからんな。
(画像とかの)バイナリデータも突っ込んだりしてるんじゃないの
BLOBをサポートしたのは間違いだったのでは・・・
phpならエロ画像とか突っ込みまくりじゃね?
酷い所は動画も格納してそう。
会社のメールサーバのログ2〜3ヶ月分、
数百万行程度を解析するのについ最近 SQLite 利用したが、
下準備としてログを突っ込んだ DB は 3GB 程度になってた。
バイナリデータ突っ込まなくてもそのくらいはすぐに到達するもんだと思うよ。
ちなみに同じ処理を試しに MySQL や PostgreSQL でもやってみたんだけど
INSERT に関しては SQLite の方が数倍速くて強さを見せつけられた。
かわりに CREATE INDEX は信じられないくらい遅かった。
INSERT が1時間くらいで終わったのに
CREATE INDEX に30時間くらいかかる、みたいな。
どうもデフォルトの設定だとメモリを僅かしか使わずに
ディスクを読み書きしまくるみたいで、
PRAGMA cache_size を 100000 くらいに増やしてやったら
CREATE INDEX も20分くらいで終わるくらいに改善されたけどね。
てことは、キャッシュを多く持てば使いやすくなるってことかな
DBの性能はいかにディスクアクセスを減らすかだから昔からメモリは積めるだけ積むのが鉄則。
In-Memory データベースなんてのもあるくらいだしな。
倍ナリデータは普通,DBには入れんよ
うpロードするだけだ
テキストデータでバカみたいにデカくなるのはMDBくらいじゃね?
SQLiteのメモリ消費ってどんなもん?
完全にデータをファイルに入れちゃうわけじゃないでしょ?
いくつかはメインメモリに配置するんだろうし・・・
思った以上に耐久性もあるし融通もキク感じ。
WEBなら問題なしだろ。
>>872 http://www.net-newbie.com/sqlite/lang.html#pragma PRAGMA cache_size = ページ数;
SQLite がメモリ上で一度に確保するデータベースのディスクページの最大数を 参照または変更します。
各ページではおよそ 1.5K のメモリを消費します。 デフォルトのキャッシュサイズは 2000 です。
データベースの大量の行を変更する UPDATE または DELETE を行う際に SQLite がより多くのメモリを消費しても構わない 場合、
キャッシュサイズを増やしてやれば速度的に有利になることがあります。
ということでデフォルト設定だと消費メモリは約 3MB。
メモリ 1GB 積んでようとこの設定を変えてやらない限りメモリ空間を活用して作業を効率化しようとしてくれない。
>>874 OSのページキャッシュの関係で、実際にはメモリを増やすだけでかなり性能向上する。
876 :
NAME IS NULL:2006/06/24(土) 21:39:16 ID:EX/OGNJe
>>874 なんで、SELECT時にはキャッシュ使って速くしようとしないの?
>>876 別に速くならないからでしょ。どうせDB全体がmmapされてる場合が多いだろうし。
DB全体がmmapされてるなんてことはないだろ。
でかいDBだと、仮想メモリ空間使い切って落ちる。
SQLiteって、全部ページ単位でメモリ管理してるんじゃなかったっけ?
>>878 32bit OSでギガバイト単位のDBを扱う場合というのが「多い」かどうかという問題だな。
SQLiteがmmapを解除してもしなくてもOSは勝手にキャッシュするし勝手にページアウト
するから大きな問題ではないだろう。
>>879 んー、いや、SQLiteの売りとして、
Supports databases up to 2 terabytes (241 bytes) in size.
ってのがあるからな。DBファイル全体を単純にmmapするような
設計にするはずがないと思ったわけよ。
32bit OSで2GB以上のファイルの全体をmmapすることは
できんしな。
で、コードを調べてみたが、pagerでmmapは使っとらんな。
普通にファイルをreadしてメモリに格納している。
インデックス使えないSelectだと毎回ディスクから全部読むのか?
分かっているとは思うが、DBファイルを丸ごと読み込む訳ではない。
だね
32bitCPUだと4GB超えた当たりから遅くなりそうだな。
バイナリデータでもDBに格納する場合もある。
ファイルシステムに直接置いたら推測でアクセスできるし。認証させてアクセス管理させたい場合はDBに突っ込むほうが便利。
>>885 「ファイルシステムに直接置いたら推測でアクセスできる」というような発想レベルの人間は
何をやっても穴だらけのシステムしか作れないと思うよw
ヒント:ブルートゥースアタック
>>887 「ブルートゥースアタック に該当するページが見つかりませんでした。」
と釣られてみるテスト。
ぐぐれよ(w
>887
紅茶吹いた
……「ブルートゥース攻撃」でぐぐったら1件ヒットしたwwwww
(・∀・)ニヤニヤ
ぐぐれば、もしかしてって教えてくれるよ。
,.-─ ─-、─-、
, イ)ィ -─ ──- 、ミヽ
ノ /,.-‐'"´ `ヾj ii / Λ
,イ// ^ヽj(二フ'"´ ̄`ヾ、ノイ{
ノ/,/ミ三ニヲ´ ゙、ノi!
{V /ミ三二,イ , -─ Yソ
レ'/三二彡イ .:ィこラ ;:こラ j{
V;;;::. ;ヲヾ!V ー '′ i ー ' ソ
Vニミ( 入 、 r j ,′
ヾミ、`ゝ ` ー--‐'ゞニ<‐-イ
ヽ ヽ -''ニニ‐ /
| `、 ⌒ ,/
| > ---- r‐'´
ヽ_ |
ヽ _ _ 」
896 :
NAME IS NULL:2006/06/29(木) 06:52:04 ID:wggJyouu
静寂
897 :
NAME IS NULL:2006/06/29(木) 06:54:44 ID:wggJyouu
IDが上祐ktkr!!
うげげじょうユー
wrt
899 :
NAME IS NULL:2006/06/29(木) 09:56:25 ID:PDdFFCD/
SQLite Manager なんだけどさ
Apache のユーザーとグループ は www、www で
include/config.db の所有者を user1、user1 にして権限を 777 にして
新しいデータベースを追加しようとしても
「設定用データベースへの書き込み権限に明らかに問題があります」
って表示されるの。
include ディレクトリの権限が 755(rwxr-xr-x)だったのを777にしたら直ったよ。
でもconfig.db 見ても、i-nodeは変化してないんだよ。
INSTALL みても、 config.db を書き込み可能にしておけってしか書いてないんだな。
SQLiteManagerの作者はパーミッションの概念を理解していないんだな。
Windowsユーザーなのだろうか
>>899書き込みする際に一時的にジャーナルファイルを作成するので、ディレクトリの書き込み権限も必要だよ。
SQLite Manager に限らず SQLite は全部そう
将来的にテーブル構造を変更したり出来るようになる見込みってあるの?alterとか。
あ!sqlite3で使えるっぽいね。
そんな見込みはdrh様に聞いてください。つかメーリングリストに投げてください。
777なんてしたらdb消し放題だろ(w
もうさdb使うの諦めてアクセス使っとけ。向いてないよ。
906 :
NAME IS NULL:2006/07/02(日) 10:49:10 ID:UIwNl3Cw
> 777なんてしたらdb消し放題だろ(w
んなわけない
>>906 環境によっては芥子放題だな
「恐れ多くもレン鯖業者様がそのような無法を許す設定をなさるはずがない」ってか?
馬鹿じゃねーのw 一回死んだほうがいいよ。死ぬと馬鹿が治る事があるらしいから。
サーバーが動いてなければ問題ない
外と繋がってなければ問題ない
電源が切ってあれば(ry
パーミッション理解できない香具師はアクセスでも使ってればいいのに。
どうせアドミニストレータでしかログインしてないだろ?
アドミンでログインして運用できない奴はキモイ。
一体どんなソフトを動かしているんだ?
おいおいアドミンしか使ってなかったら、全てのプログラムがアドミン権限取れて弄り放題じゃん(w
本当にスキル低いなあ。MS-DOSに帰ったほうがいいよ。
あほくさ。開発は普通 admin だよな。ツールがうごかねーもんな。
開発環境の話とサーバ(ターゲット)の話は別だべ
だから、スキルの問題じゃねーのに話をすり替えた
>>911 は、日ごろから鬱積してるんだろうよ。
なんか普通adminとかって話が出てるからスレ違いを承知で書くけどさぁ、
素人はWindowsサーバを使うのはやめたほうがいいよ。Linuxとかが無難。
Windowsサーバは本物のプロ(笑)が使うものだと思う。安全に使うのは超難しい。
(俺には無理!)
今時、超〜ですか。さすが。そこは真似できねーよ。
まったくここはしょうもない煽りと、自分より格下の人間を見つけると叩きまくるのが多いですね。
有意義なレスは1日一件まで
梅雨がうっとうしくてイライラしてるんだろ
普段、adminでツール使ってるから運用でもadminで動かすってか。
本当にアフォですね(w
今日は生理なんじゃね?
生理休暇でもどうぞ。
セクハラですよ ^ ^
おまえらのせいでオレのかわいいsqliteがキモくなる件
ふつう、ツール毎に運用上の権利決定するけどさ。
君はユーザ単位で決定してるのか?
変な奴もいるもんだな。
「運用上の権利」って何?
何人も中国様の許可なくSQLiteを運用してはいけない
なかぐにさま?
ユーザー単位の運用。キモイ。
930 :
NAME IS NULL:2006/07/05(水) 15:56:18 ID:N6ycQFST
そうだそうだ。(笑)にしろ(笑)
パーミッションすら知らない素人が必死だな。
これだからウィンドウズ廚は馬鹿にされるんだよ。
リナックスさえ使いこなせないのか?
カタカナでウィンドウズとかリナックスとかって書く奴が
一番素人に見える罠
別に素人っぽいとは思わないけど…
まぁ何か間が抜けた雰囲気は醸し出されるね。
でも、本家へのフィードバックは韓国からは少ないようだったけど…。
日本語環境で不具合になることは、韓国語環境でも大抵不具合になるンだが、Windowsでは。
LinuxとMacでの利用がメインなのかね。やっぱり。
UTF8使うから、日本語でも韓国語でもWindowsでも問題ない。
>>937 アホなこと言うな。WindowsではUTF-8が使えるってだけで、基幹コードじゃねーんだよ。このバカ。
ああ、Windowsの内部コードはUCS-2/UTF-16だからな
>>938 Windowsの基幹コードはUTF-16ですね。
SQLiteはUTF-16も使えるのでへっちゃらですよ。
>>938 まさか、データベースにデータ入れるときに
OSそのままの文字コードで入れているのか?
>>940 UTF-16使うと、色々とまずいだろ? つーか、おまえらホントに使ってるのか?
>>942 内部はUTF-16(UCS-2)で統一してるよ。
ひょっとしてファイルの話してるの?
SQLiteはAPIですよ?
ファイルのコードなんて使うフロントエンド次第だってわかってる???
>>942 >色々とまずいだろ?
人にまずい点を聞かないでほしいなぁ。
まずいなら、まずいとはっきり言う!
そして、どこがどうまずいのかちゃんと指摘する!
それくらいできないとだめ。
おれよりカスが集まるスレはここですか そうですか
みんな馬鹿のふりしてるだけだろ。そう信じたい...
いや、馬鹿ばかりだろ。
>>942 ファイルって何だよ、ファイルって。媒体上のデータベースファイルのことか?
しかし、UCS-2なんていつの話してんだよ。XP SP2はUTF-16。UCS-2は NT2000と 無印XPだけだろ。
しかし、SQLiteがAPIって、馬鹿にしてんのかコラ。
C言語でリンクするからAPIではあるな。
俺ぐらいになるとよ、半角英数記号以外の文字が含まれる文字列は
BLOBのカラムに格納してるんだぜ?
utf.cカワイソス
>>948 つーか、DLLで提供されるから API。APIは Cじゃなくて、本来はPASCAL。
そんなことも知らない、Windowsプログラマがいるとは嘆かわしいゾ。
馬鹿にしてんのかコラ。
↑やーい、馬鹿、馬鹿
アプリケーション
プログラマーズ
インターフェース
CとかPascalとかどうでもいい
ようは、プログラムから呼び出す外部ライブラリのインターフェースはAPIだよ。
m9 三 9m
彡 ∧∧ ミ
m9 (^Д^) 9m
>>951 プギャプギャプギャプギャー!!
ヾヽ\ y ) 彡
m9/三 9m
∪ ̄ ̄ ̄\)
CとかPascalとかどうでもいい…とは、ま、今の奴は知らなくて当然かもな。
API=Pascalだと思っているキチガイが居るようですね
Windowsでは…な。
Java APIとかいう言葉聞いたりしないんだろうか?
A あっぷる
P ぱいは
I いいものだ
A あなると
P ぱいおつだけで
I イケます
Javaは嘘ばっかり。
>>958 今は昔って感じだな
API=Pascalっていつの話だ
最初効いたとき目が点だったが、なんか昔々の話を思い出してきたな
>>964 あれはMacOS(最初はPascalで書かれていた)を真似っこした名残ですよ
何だマカなのか。氏ね。
SQLiteのObjCなwrapperない?
QuickLite以外で。
マカって本当に馬鹿だな。
gccインスコしてANSI Cで組めないのか?
おまえら本当にきもいな・・・。
∧_∧ / ̄ ̄ ̄ ̄ ̄
( ´∀`)< オマエモナー
( ) \_____
| | |
(__)_)
>>969 MacOS X は gcc が純正っすよ。
Mac信者は確かにキモイけど、何も知らない癖に叩いてるやつはくるくるぱーだと思うよ。
SQLiteも標準装備だしなw
もうこんなんじゃ次スレもなくていいよ。
こうもんじゃ次発展場なくていいよ
ハッテン場かよwww
それはどうかな?
gccなのにANSI Cを使わないマカは変態ですね。
さすが同性愛の象徴の虹色のステッカーを自慢げに貼っていただけある。
>>978 また変な思いこみの馬鹿がキターーーーーーーーーーーーーーーー!
なるほど、そりゃゲイと言われても仕方がないな。
変態でも何でも良いんだけどさ、Cocoa-Wrapper教えてよ。
つか、みんな生で使ってんの?
生でCから使ってる
病気をうつされないようにな
生が気持ちいいからね。
皮被ってたら気持ちよくないと思う。
マカって包茎だね。
きもい・・・なんでこんなにきもくなっちゃったんだろう・・・
マカが来ると荒れるのはにちゃんの常識。
データベース板ってレベルが低いんですね