【無料DB】OpenOffice2.0?Base【Accessイラネ】
ふとOpenOffice.org1.9.65と云うモノを試してみたんだが OpenOffice.org1.1.3まで無かったDBが入ってて おまけにAccessソックリでびっくり!! テスト環境 OpenOffice.org1.9.65 + 1.9.65日本語ランゲージパック ちょっと遊んでみまつ ポスグレみたいなRDBMSのためのフロントエンドを作るためのソフトに、 簡単なファイル共有型DBを付加したもの。 ようするにAccessみたいなもの。 AccessもBaseも触ったことないですが、 これからはじめるための入門サイトみたいなの紹介していただけませんか? Access持ってるならAccessから入ればいいだろうけど、 ないならBaseからのほうがいいんじゃない? AccessとBaseじゃ見た目はさほど変わらないけど、 細かい面で微妙に違ってくるから、移行の手間も考えると、 Baseでやると最初から決めてるならBaseでいいと思う。 で、Baseの入門サイトはどこかあったようななかったような… Accessはその辺にいっぱいあると思うけど。 ただなぁ、Baseってよくエラーで止まる 落ちはしないが・・・ 2.01でもあまり改善していないように感じるね 入門サイトなど殆ど無いのでアクセスの入門サイトを見ながら同じような事を ヘルプやウェブ検索で必死に情報を探しながら勉強するしかない。 mdb形式のファイルは読めるんだけど、保存は無理なの? Accessでは、元々クエリなテーブルとか。アイコンが違うから注意。 Baseは複数ユーザーで共有できるのでしょうか。 ファイルメーカーはライセンスがいくつも必要でコストが高くて・・・。 ライセンスじゃなくて動作するかって質問じゃ? そう言う意味じゃDB本体はMySQLとかのを使ってフロントエンドとしてだけ使えばいいよ。 ファイル共有型は運用・管理面で何かと問題ありそうだから。 ファイル共有で複数ユーザで使えるけど、俺もオススメしない。 ファイルメーカーと比べてダメとかじゃなくて、まともなRDBMSがフリーで たくさん出回るようになった時勢にいつまでもファイル共有データベースを 使うのがおすすめできない。ファイルメーカーもいいかげんどうかと思う。 共有型だろうがちゃんと動けばかまわんけど、Accessのフロントエンドを普通に使うと 排他制御が綺麗にできてないことが多いからな 1人で100%でも2箇所からのアクセスでパフォーマンスは1/4以下になるし paradoxもすさまじい低下だったな・・・ 共有型だとトランザクションの管理がいい加減だからな。 構造上仕方ないけど。 145です。 ファイルメーカーで3ユーザーまでの共有しか使ったことが無い初心者です。 アドバイスありがとうございます。 Baseで共有は難しそうなので、余裕のあるとき少しづつ試そうかなと思います。 >>145 Baseで共有が難しいというよりファイル共有という考えから脱却しては? というアドバイスだと思うが。 ファイル共有ベースでは2ユーザーまでが現実的な線 俺こっち触るからこれ触らないでねとか運用ベースでの解決が必要だからね >>154 やはり読み間違ったか。ちゃんと読んでほしい。 「ファイル共有ならファイルメーカーの方が良い」とは一度も言ってない。 繰り返すが、Baseでもファイル共有できる。ファイルメーカーと同じ。 ただ、もっといい方法が用意されているのでそっちを使った方がいい、 と言ってるんだけど。 Baseをオススメしないのではなくファイル共有をオススメしない。 ファイルメーカーだろうとBaseだろうとAccessだろうとParadoxだろうと dBASE(今どき知らんか?)だろうと、「共有型だとトランザクションの 管理がいい加減」なのは同じ。 >>154 どっかのマシンにDBをインストールして そっちに繋げたほうがいいと思うよ 少し調べてみては? 横からわるいのだけど、 BaseやAccessから単一のDBサーバに多数のクライアントが接続した場合、トラ ンザクションの管理は自動でやってくれるの? >>154 はそこをどうやればいいわからなくて、ファイル共有型にしがみついてる気 がするんだけど。 一応最低限のロック関係はあるけどフロントエンドに便利な Accessのフォームやレポートを使わないことが前提になる 実際運用するとロックファイルがよく壊れるというのも問題だった ロックファイルをそのままにしておくと立ち上がらないしね 所詮スタンドアロン用 >>159 どんなDBつかおうがDBの特性を知ってロック処理をしないと マルチユーザーで不具合が出る 勝手にやってくれるということはないよ そもそもAccessでトランザクションやってない人もいるけどね 俺には信じられんことだが ファイル共有型ってのはDBを誰も管理していないから、怖いよね。 ある意味並列処理だ。 別に普通にやってみりゃいいじゃん。 SQLサーバとか使うの面倒なんだろ? 3台で共有してても使うのは一人とかありがちだろ? 共有型は触ってなくてもしばらくはなさないんだよな 2分くらいするとはなすから急に早くなる Baseって背後でHSQLDBを使っているんですか? ファイル共有とC/Sの違いが理解出来ないんだろう。ってことでいいんでつか テキストデータ(CSV等)のインポートのやり方がわかんにゃい・・・ >>170 データベースを開く 既存のデータベース開くを選択 既存のデータベースに接続でテキストを選択 テキストファイルのパスでブラウズを選択しcsvファイルの有るフォルダを選択 コンマ区切りを選んで次へ データベース名を決めて保存 これでcsvファイルに接続できる csvファイルをインポートするには もう一つodbファイルを新規作成し、今開いているテーブルを 新しいodbにドラッグアンドドロップすることでインポートされる ちょっと手間がかかるが・・・ 関係ないが2.02でcsvファイルのインポートで文字化けする件 直っているっぽい >171 それだとCalcが起動して、行数オーバーで全部取り込めないのです。 具体的には郵貯ページから落とした郵便番号データをテーブルとして インポートしようと思ったんですけど・・・ ACCESSのインポートの感覚でいたので、いまいちなじめないでいます。 >>171 の前半部分は、Calcは関係ないぞ。CSVのODBファイルを作成している。 もっとも日本語が化けないようにするには、2.0.2を使わないといけないが。 >>173 ファイル → 開く からCSVを開くのではなく、 ファイル → 新規作成 → データベース でデータベースウィザードを開き、 そこからCSVを読み込ませると出来るよ。 例えば名簿テーブルに性別IDのカラムがあって、 性別テーブルにIDが0なら男、1なら女という行だけがあって、 名簿の入力フォームで男と女のメニューが出てくるようにするには どうすればいいんでしょう? テーブル間にリレーションを設定しても何も意味がなさそうだし。 それにリレーションの設定ってどこに効いてくるんでしょう? フォームを編集モードで開き、当該の項目をリストボックスにする。 あとはウィザード任せ。 CSVファイルでも一旦Calcで表計算形式に保存しなおしてから読めば大丈夫だね。 そもそも>>173 の例ではそもそもCalcが使い物にならないわけだけど・・・。 CSVを保存しなおすの?そういうの流行ってるんだ。 >>178 だから baseでcsvファイルを読み込む説明をちゃんとしているでしょ? calcを使うことでもできることはできるが65536行以上読み込めないのだから pythonでcsv読ませてodbにSQL投げる。 これ、ACCESSみたいなクロス集計機能ついてますか? 標準SQLにはない機能だけど結構便利に使っていたんで。 EXCELのピボットテーブルだと文字列が使えないので 不便するのです。 試さないでレスするおれも何だが Accessと同じ感覚で扱えるから試してみれば おれも夕方検証してみる >>184 Baseにはないです。 CalcのデータパイロットからBaseのデータを呼び出して 使います。 データパイロットはExcelのピボットテーブルとほほ同じ。 >>184 試さないでレスするおれも何だが、デザインはAccessと同じ感覚で扱えるから 試してみれば? オレは頭がAccess思考なのでExcelで計算させるんじゃなくて Accessで処理したデータをExcelに書き出している。 >>193 その機能はありません。 かわりにWriterでフォームつくってください。 フォーム=1ファイルにすれば、目的はかなえるのでは。 Ver1.1xなら、Writer用のフォームウィザードがあったけど、 2.0系にはありません。その分面倒だけど、できないことは ないので、がんばってください。 どういうこと? OOoBASICでルーチンな処理を記述したりできるかということなら 当然できるよ。 すみません。マクロを記録する機能です。 マクロコードを自動的に吐き出させる機能と書くべきでした。 「GPLは危険」 複数のLinuxカーネル開発者が共同声明 http://opentechpress.jp/opensource/article.pl?sid=06/09/26/0227202 --- TorvaldsはLKMLへのメールの中で、Bottomleyの意見に同意している。 「僕の個人的な意見を言うと、 公開議論の大部分が、 GPLに関して政治的な動機を持った人たちによって行なわれているなあということ。 だからとても声の大きなGPL支持者たちがいる。 だけど大量の開発を結局のところ実際にやってる人たちっていうのは 普通は彼らほど口が達者じゃないし、実際その意見はほとんど知られてないって気がする。 FSFの意見は実際の開発者の(しかも、かなり多数の)意見を必ずしも代弁してはいないっ てことを、 実際の作業をたくさんやる人たちが知らしめる手段だ。」 「GPLは瀕死の状態」--Linuxカーネルプログラマーの多くが低評価 http://japan.cnet.com/news/ent/story/0,2000056022,20248447,00.htm 貢献度の高いLinuxカーネルプログラマーの大半が、 「GNU General Public License(GPL)」に否定的であることがわかった。 GPLは多くのオープンソースプロジェクトに適用されている。 Linuxカーネルに関する情報を交換するメーリングリストに投稿した記事によれば、 カーネルプログラマーらに-3から+3の評価を求めた結果、最も高かった評価は、 可でも不可でもないことを意味する0で、平均は-2だったという。 この調査はLinuxを率いるLinus Torvalds氏が提起したもので、 Torvalds氏はこれまでにもGPLに反対の意見を表明していた。 同じ間違いを繰り返す馬鹿者には0点しかやれない。学校でも同じ事言われただろ? FSFに辟易するTorvalds氏 http://opentechpress.jp/opensource/article.pl?sid=06/09/29/0140219 --- Linus Torvalds氏は、GPLに対する自分の立場ははっきりしており、 FSFにはいい加減うんざりしていると応じた。 「今ではFSFにすっかり嫌気がさして関心すら失ってしまった。 まさかこの期に及んでFSFが私の見解を知らないなどと言い張ることはないだろうが、 いったい彼らは私に何を求めているのだろうか。」 事実、このFSFの回答は、カーネル開発者から提示された懸念事項のいずれにも注意を向けておらず、 それよりも声明書における些細な誤りを正すことに主眼を置いたものになっている。 カーネル開発者による声明に関する疑問に答えてもらおうと何度かFSFにインタビューの申し入れをしたが、 すべて拒否された。 CalcとかWriterに比べてなぜかよく落ちます。 >>205 2.0.2まではひどかったね〜。2.0.3からは安定したよ。 >>206 でもいちおう2.0.3ユーザーなんです(涙) BaseのCDコレクションのテーブルを使い入力したのですが、 HTML形式で出力するやり方がわかりません。 知ってる方がいたら教えていただけないでしょうか? 2.0.4日本語版出ましたね。 ttp://ja.openoffice.org/download/2.0.4/index.html Accessではレポートの機能を利用して、 各項目ごとに合計を出すことができたはずですが・・・ Baseではどのようにすればいいのでしょうか? Base レポート 合計でけんさくしてみたけど、 それらしきものは見当たりませんでした。 >>212 CalcのデータパイロットでBaseのデータを処理するというのはどう? >>213 いちど、calcと連携すれば・・・ と思ったが、 ある時点での集計は 資産 現金 XXX円 合計 XXX円 またある日の集計は 資産 現金 XXX円 預貯金 XXX円 合計 XX円 費用 食費 XX円 合計 XX円 となってしまい、いちいち書き換えるのも面倒くさそうで、やめた。 あ、でも、ダミーデータを埋め込めば、いけるかもしれない。 レスありがとう。 その手でやってみます。 Baseでなんかのデータベース作り上げたことある人いる? これまでもちょこちょこいじってはいるんだけど、これから 本気でやるかどうか迷ってる。途中でバグにでくわして 挫折するのはイヤだから、情報あつめてがんばればできる ものなのか、そもそもがんばるだけ無駄なのかどっちなのか 知りたい。 SOHOの顧客管理と簡単な財務管理くらいはできるかな? いや、頑張るほど難しいもんじゃないし。 気軽にやってみて、合わなかったらやめれば良いだけの話。 >>217 いや、やってるんだよ。ただ、やってると結構UNO呼び出すことが多くなる し、いろんなところで問題にぶつかるんだよね。日本語回りとかDBとの相性 (というかJDBCドライバとの相性かな)とか。あと速度問題とか。 で、「これBaseの方がおかしいんじゃん?」ってことにも結構遭遇するん だ。具体的にはJDBCでSELECTクエリー発行して、特定のドライバでは結果 セットがうまくとれない場合があるとか。JDBCの仕様としては問題ない ドライバなんだけど、OOo側がそういう結果が返ってくることを想定してない、 みたいな。 でも、それはエラーの出方からそうじゃないかと類推してるだけで、ほんとう にBaseが問題なのか、それとも回避方法があるのか、とかいろいろ考える わけさ。そういうときに、「俺は単にBaseがバギーなのに必死につき合いすぎ てるんじゃないか」という疑問がわくんだ。 それで、お遊び程度で友達の住所録とかその程度ならできるのはわかってるけど、 そういう差し込み印刷に毛が生えた用途じゃなくて、ある程度完パケになってる システムをつくるポテンシャルとしてはあるのかどうか、たとえば業務アプリつく って納品したりとかはAccess97でも結構あることじゃん?それと同等(機能が、 じゃなくてポテンシャルがね)のことができるのかどうかが知りたいんだ。 でもそれは「ある」と答えるのも「ない」と答えるのも難しいだろうから、実績が あるんならできるんだろうと判断しようと思ったわけ。ソフトハウスでの納品実績っ てのはさすがに期待してないけど、自分用に作ってる人とかいないのかなと。 マスタ5〜10テーブル、トランザクションテーブル5〜10テーブルくらいのわりと シンプルな業務システムを想定してるんだけど。 商用で使うなら、尚更こんなところで聞くべき事じゃないだろ。 自分らで判断することも出来ず、冒険する余裕もないなら手を出すのはやめておけ。 ここでの回答は、善意の物であっても食い違いや勘違いが生じることはあるし 悪意を持って故意に騙そうとするやつだっていっぱい居る。2chとはそういうところ。 判断も冒険も出来ないなら、最低コストは高くても一番リスクが少ない無難な線を取れ。 まぁ、やはり最終的には「Aceessイルネ」ってことだろw >>219 いや善意でもなんでもいいんだけど、俺は単に「やった人いる?」 って聞いてるだけだよ。やってない人のうんちくはどうでもいい。 「やった」って解答がなくてうんちくだけが返ってくるのが 全てを語ってるって事か。まぁ、そういうことだね。 いいものできたら報告するかも。気が向いたらね。 その「やった」というのを、嘘で言う奴が出てくる可能性を言ってるのでは? Baseで複式簿記をおこなおうと思ってるのですが、 試算表を表示する段階で躓いてしまいました。 accessだと IIf(Or([分類ID]=4,[分類ID]),(貸方の金額-借方の金額),(借方の金額-貸方の金額)) とすることができたのですが、Baseだとエラーが出てしまいます。 ヘルプで調べてみると、Or関数は存在しませんでした。 変わりにOrステートメントというのがあるらしいので、 Or(...)の部分を 分類ID=4 Or 分類ID=5 としてみたのですが、やはりエラーが出てしまいます。 Baseをお使いの皆様はどのようにして切り抜けてるのでしょうか? お知恵をお借りしたいです。 >>223 ヘルプというのは、もしかするとCalcの関数ではないのか Baseでは役に立たないよ 標準のものなら、HSQLDBのSQLを調べないと もしmdb形式を使うなら、AccessのSQLでいけるのでは >>224 あ・・・ それは盲点でした。 何か使えそうなものがないか調べてみます。 ありがとうございました。 www.hsqldb.orgのドキュメントによると、 条件 OR 条件 とすることができると書いてあります。 しかし、以下のように書くと不明な文といわれ怒られてしまいます。 IIf("分類ID"=5 OR "分類ID"=4,"借方の金額"-"貸方の金額","貸方の金額"-"借方の金額") >>227 そんな・・・ やり直しだなんてorz とも行ってられないので、case when ... then ... elseで書き直してみました。 case when 分類ID=1 OR 分類ID=5 THEN 借方の金額 - 貸方の金額 ELSE 貸方の金額-借方の金額 end しかし、それでも不明といわれます。 なぜ? それはSQL文に書いてるの? SELECT CASE .... FROM ... みたいな? そりゃムリだ。 >>229 >それはSQL文に書いてるの? クエリーを作成するウィンドウから書いてます。 >みたいな? そりゃムリだ それがダメとなると・・・ 何を使えば・・・。 そもそも、hsqldbに搭載されていないiif()関数が、 IIf("分類ID"=4,"aaa","bbb")というケースに限って使えたり・・・ わからないことが一杯です。 >>230 IIf文はHSQLDBの公式サイトのドキュメントに載ってないからねぇ。 括弧の不要不必要でエラーが出るし、ノーマニュアルでそれを試 行錯誤する気にはなれません。 HSQLDBはSQL Serverのコマンドがいくつか移植されているみたいな ので、密かに実装中なのかも。 >>232 隠しオプションみたいなものか・・・。 だから、使えたんだ。 納得。 とても基本的な質問をしてもいいでしょうか? 入力のフォームで、なぜか意図しない新規レコード(内容なし)が できてしまうことがあります。どうやら、スクロールをした時に 起こってしまうようです。 何か、回避策があったら教えてくださいませんか? できました。 SQLを直接実行を選んで、 SELECT ... SUM( CASE WHEN "分類ID"=1 OR "分類ID"= 4 THEN "借方の金額" - "貸方の金額" ELSE "貸方の金額" - "借方の金額" END) とすることでできるようになりました。 質問に答えてくださった皆様、 ながながと付き合ってくださり、 ありがとうございました。 read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる