DB とファイルシステム
多分そのうち必要になるので。
このまま記事を入力し[投稿する]ボタンを押せば当サイトに送信されます。
以下の文章は注意書きです。
名前はかならず記入してください。ハンドルネームでも構いません。
またパスワードを入力することをお勧めします。
その場合他人による *なりすまし* と区別出来るかもしれません。
さらにブラウザでクッキーを有効に設定してある場合あなたの記事は後で修正可能になります。
コメントスパム防止のため記事の内容を機械的にモデレート
(スパムである確率を計算)
する処理を通します。
どのような投稿であれ、たまたま計算誤差によりスパムとみなされ
秘密の場所
に収納される可能性があります。
その場合、管理人が手作業で正規の場所に移動しますのでお待ちください。
-
41
owa
2003/07/09 21:36
id: mJs8kxp1Zus
prob: 0.0%
-
-
ソースからビルドできないと困るのは、例えば
1. 或る日 apt-get したら Firebird に障害が起きた → どうするの?
2. Firebird にセキュリティホールが見付かった → パッチあてられない
バイナリだと、現在の環境で動作していても、それはたまたまでしかない。
自分でビルドできない環境でフリーソフトを使うというのは怖いことです。
現在 Firebird-1.0.0, 1.0.2, 1.0.3 がビルドできません。
自分の力が足りないせいだけなら良いのだけど。
# web でソースからのインストール記事探してみたけど、日本のサイトでは
# 見付かりませんでした。あとは debian から盗むしかないか?
-
40
owa
2003/07/09 21:23
id: mJs8kxp1Zus
prob: 0.2%
-
-
Firebird をソースからビルドする方法
build_docs/README.linux を見てビルドを試しています。(例は 1.0.2)
$ tar xvzf Firebird-1.0.2.908.src.tar.gz
$ cd firebird-1.0.2.908/
$ tar xvzf bootkit-1.0.2.908.tar.gz
初めてビルドする場合にはブートキットという特別なファイルが必要となる
Firebird をビルドするには Firebird 自身が必要という関係があるらしい
次に↓を実行 (ドキュメントには書いてないが)
$ export LANG=C; export LANGUAGE=C; export LC_ALL=C
あとは
$ ./Configure.sh DEV (または PROD)
$ source Configure_SetupEnv.sh
$ make firebird > make.log 2>&1 (または super_firebird)
でできるはずですが、まだ出来ていません (T_T)
PS> みな未定義エラー。ブートキットのせいだと思う。スクリプト追うのは
はっきりいって大変。ワーニングの山にも閉口します。大丈夫?
なんか勘違いしてるのかなー
-
39
owa
2003/07/09 20:58
id: mJs8kxp1Zus
prob: 0.1%
-
-
Firebird のビルドを試しているのですがなかなかうまくいきません。
コンパイル (時間かかります) の合間に備忘録...
Fitebird のサイトに行くとパッケージが沢山ありますがソースは一個
Firebird-***.src.tar.gz だけです。
あとは
FirebirdCS-***.tar.gz クラシックサーバ
FirebirdSS-***.tar.gz スーパサーバ
Firebird***64IO.tar.gz 64ビットIO版
などとなっていますが何れもバイナリ版です。
ソースからビルドできないと若干問題ありかもしれません。(後で書きます)
-
38
kiyo
2003/07/09 17:50
id: M4qDt4tUHP2
prob: 0.0%
-
-
>>36 MySQLはXoopsのために入れたような物でほとんどいじってなかった
nakaj さんは、Xoops もやってるのかあ、じゃ PHP も解るんだあ。
何もしないで BLOB を扱えるって書いたけど、うそではないがテーブル当たりの
バイト数がなにやら関連してるのかなあ?
一個のテーブルに、テキスト型とグラフィック型を作るとエラーになるなあ。
以前 MySQL で作りかけの物を Firebird に変更してたのだが、やっぱ ExternalMethod
で処理しないと保存できなかった。
http://fzug.com/ws/fzug_prog/SlideImgIB/
当面 BLOB を扱う insert, update SQLは、Externalmethod を使った方が悩まないでよいような気がしてきた。
-
37
nakaj
2003/07/09 10:10
id: p18sSGR1.u2
prob: 0.1%
-
-
>>32 大文字小文字いりまじりは確かにだめですね
大文字のみ、小文字のみなら<dtml-sqlvar>で取り出せます。
なんで入り混じるとだめなんだろう?
SQLって多分どのDBMSでも大文字小文字の判別はしない、っていうのが
規則になってると思うのだけど(select FieLd1 from TaBleNAmeなんていうのでもクエリ発行ツールからは通るはず)、Python上では大文字小文字が
意味持ってくるみたいだからそのせいだろうか。
-
36
nakaj
2003/07/09 09:48
id: p18sSGR1.u2
prob: 3.2%
-
-
>>35 MySQLでinsert set句使えました。
MySQLはXoopsのために入れたような物でほとんどいじってなかったのですが
たしかにinsert into table1 set field1 = 1, field2 = 'a'
つかえました。知らなかった。。。。。
FireBirdではinsertにset句は使えないです。はい。
-
35
nakaj
2003/07/09 09:29
id: p18sSGR1.u2
prob: 0.6%
-
-
>>32 ポイントずれてるとは思うけど、、、
FireBirdではInsert句でsetはつかえないはず。
MySQL,Postgresだと使えるんですか?
試してから書け、、>自分 、て。(ごめんなさい)
-
34
kiyo
2003/07/07 23:14
id: M4qDt4tUHP2
prob: 0.1%
-
-
>>33 こっそりは無しですよね。
ガン! ごめんなさーい。
違う意味のガン!
TEXT型が何もしないで書き込めた物で、BLOB SUB_TYPE 0 も、もしかして、、、
やってみた。できてしまった。ガン!
一応どうやったか今からアップします。
# はあー、この何日かわなんだったのだろう?
-
33
owa
2003/07/07 20:32
id: mJs8kxp1Zus
prob: 1.5%
-
-
>> 31 Firebird はやっぱ知名度が低いのかなあ
おきまりの goooogle でやってみたけど、日本ではポスグレ強そう。
Oracle も強い、長いものには巻かれろかも、だったら Python も有力 (;-p
|___________|___world____|___japan___|__linux__|
|_InterBase_|___413,000__|___7,390___|__15,200_|
|_Firebird__|___769,000__|__12,000___|__12,100_|
|_PostgreSQL|_2,248,000__|__93,300___|_114,000_|
|_MySQL_____|_8,690,000__|__81,700___|_315,000_|
|_Oracle____|_8,538,000__|_223,000___|_114,000_|
|_Zope______|_3,140,000__|__53,000___|__75,500_|
|_Python____|_5,680,000__|__63,200___|_244,000_|
>>31 こっそり直した
こっそりは無しですよね。nakaj さんカワイソ (T_T)
-
32
kiyo
2003/07/07 20:04
id: M4qDt4tUHP2
prob: 0.1%
-
-
Firebird メモ書き
insert into tablename set
<dtml-sqltest test_id op="eq" type="int">,
<dtml-sqltest comment op="eq" type="string"> --- TEXT 型
postgresql,mysql はいけるのに、Firebird はエラーになる。
BLOB SUB_TYPE TEXT を含んでいるからかは、不明
↓でOK
insert into tablename values(
<dtml-sqlvar test_id type=int>,
<dtml-sqlvar comment type=string>
)
python database API での paramtype の影響?
だれか知ってるなら、オスエテほすい。
あと、FieldName が全て大文字で格納される。
テーブル作る時は、大文字小文字を統一して FieldName を作成しなければバグの元のようだ、 SaveYear とか作って一日悩んだ。
--- ちょっと説明へたで補足 ----
FieldName を SaveYear と作ると、<dtml-var SaveYear> はエラーになる。
<dtml-var SAVEYEAR> で取り出せた。
FieldName を saveyear と作ると、 <dtml-var saveyear> はOKです。
SAVEYEARになってるはずだが、なぜか取り出せます。
---
も少し実験しなければ、、、
全て小文字作成時<dtml-var SAVEYEAR> は試していない。
SaveYear作成時<dtml-var saveyear> は試していない。
|