データベースアプリケーションの開発におけるデータ管理の選択肢

このQ&Aのポイント
  • データベースソフトを使用するか、XMLで代用するかを迷っている
  • 市販する場合、MySQLのライセンス問題がある
  • JavaまたはVC++を使用し、アクセス速度などを考慮
回答を見る
  • ベストアンサー

データベース

windows上でデータを管理するアプリケーションをつくろうと思っており、将来的には市販出来ればいいと思っています。現在mysqlをローカルで動かしデータ管理をすることを考えていますが、市販した場合ライセンスの問題がありmysqlに相当の金額を払わないか、またはソースをオープンにする必要があると聞きました。ローカルでデータ管理をする際に、データベースソフトを使うのがいいのかそれともXMLで代用してしまうのがいいのかを迷っています。mysql以外にフリーで使いやすいソフトはあるのでしょうか。データ数はせいぜい1万件ぐらいです。使用言語はjavaを考えていますが、VC++でもいいです。アクセス速度などを考えて皆さんの意見を聞かせて下さい。よろしくお願いします。

  • Java
  • 回答数5
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
noname#49664
noname#49664
回答No.5

Javaを使う、という前提ですと・・・。 実は、Javaは、昨年末にリリースされた最新のJava6というバージョンから「Java DB」と呼ばれるローカル・データベース機能が内蔵されています。これは、Apache Foundationで「Derby」と呼ばれていたものをベースにしたもので、ちょっと使ってみた程度ですがなかなか使えます。Java DBのデータベースサーバを起動してSQLで問い合わせるという、一般的なSQLデータベースと同じ感覚で利用できました。  ですので、Java6を使うならば、何もデータベースなどを用意しなくとも、内臓のデータベース機能だけでOKですよ。(まぁ、性能面などで納得できるならですが)

kabutorikikori
質問者

お礼

最近のjavaはあまり勉強していなかったのですが、(1.4止まり)java DBというべんりなものがあれば使ってみます。 ありがとうございました。

その他の回答 (4)

  • PED02744
  • ベストアンサー率40% (157/390)
回答No.4

PostgreSQL とか Oracle10g ExpressEditon とか SQLServer2005 ExpressEdition とか でもよさそうですが。 でも、データを扱う事ばかり考えているようですが、実際にはそのデータを バックアップはどうするのか リカバリはどうするのか 等、可搬性・可用性も考えてデータベース選びをしなくてはいけません。 市販するつもりなら、そのあたりもちゃんと考えてデータベース選びを していただいた方がよろしいでしょう。

  • sakusaker7
  • ベストアンサー率62% (800/1280)
回答No.3

商用データベースに負けないPostgreSQL http://www.atmarkit.co.jp/flinux/rensai/postgres01/postgres01.html MySQLとどうデータのやり取りしているのかはわかりませんが、 乗換えを検討してみては?

  • dyna_1550
  • ベストアンサー率34% (122/353)
回答No.2

> データベースソフトを使うのがいいのかそれともXMLで代用してしまうのがいいのか どっちでもできるように設計すればいいのではないでしょうか。

  • fortranxp
  • ベストアンサー率26% (181/684)
回答No.1

えーと データベースですか。 たとえば 仕様はデータ 1万件ですか。 Javaだとあまりレコードを 扱うメソッドがないような きがします。

関連するQ&A

  • データベースソフトの選定について質問があります(システム開発関係実務未

    データベースソフトの選定について質問があります(システム開発関係実務未経験です) 条件1:お金を出せるのはハードのみ。(それも格安で中古などでもよい) 条件2:所詮、個人経営の事務所に設置するレベル 条件3:サーバはLinux(Cent OSでやりたいと思います)windowsサーバを買う金が出せない 条件4:事務所のクライアント数は所詮、5台程度+サーバ1個(+αするかも) 条件5:クライアント/サーバ型のシステムを構築したい。(WEBアプリではなく) ※あえて何でサーバOSをCentOS(linux)を選ぶ?と聞かれるかもですけど、 答えは、「すべて無償でやる」だからです。 ********************************************************************************* データベースといえば、 ・Oracle (windows用やLinux用) ・SQL Server ・MySQL(PostgreSQL) (windows用やLinux用) ・Access などいろいろありますよね。多種の選択があるデータベースの中で 何を作りたいかで、使う言語やデータベースが違ってくるとは 思いますが、よく企業のシステム開発の実績として目にするのが、 VB.NET+SQL SERVERだったり VC++ +Oracle Java + Oravleだったり っていうクライアント/サーバ型って見るんですけど、 これって目的とするシステムが何を得意としなければいけないとか、 選定された言語とデータベースの相性とかデータベースの 管理がしやすさとか、どこで決めているんですか? 自分が個人事務所レベルでやりたいと思うクライアントサーバ型のシステム内容は 顧客管理や売上げ管理や現場管理など。 Accessで十分じゃね?って言われるかもしれませんが、あえて、言語とデータベースを 学びたいので、「Java + 無料のoracle」みたいなのにしたいです。 クライアント側で動作するものは自分が好きな言語使って サーバ側のデータベースも好きなものを使って。。。という具合に やってはいけないんでしょうか? (Accessはクライアントから同時アクセスされたとき、処理しきれない?ことがある? とか聞くので、これは使わないとして。。。) 具体的には クライアント側で動くプログラム:VB.NETまたはJAVAまたはVC++など サーバ側データベース:MySQL(CentOSもMySQLも無償だから) みたいに、データベースを勝手に無償だからという理由だけでWEBアプリケーション でもないのに、MySQLにするなど、そこでMySQLは使わないでしょ?みたいなのって あるんでしょうか? 以上の条件で、今後独学で何を勉強するしながら独自開発するなら 言語は何がいいかとか、 言語とデータベースの組み合わせはこれでやってみたら?ってのがあれば教えてください。 何もかもクライアント側はJAVA一本でやれば?ってなら、それを頑張ります。 レベルの低い質問かもしれませんが 教えてください。

  • データベースソフトを作りたい

    従業員の情報を管理できるようなソフトがほしくて、フリーや有料のソフトを色々と探したのですが、やはりどうしても自分が必要とするものがみつかりません。 項目が何か欠けていたり、良いなぁ~と思ったら、あまりにも高すぎたり、、、 そこで、自分で作ってみようと考えました。 まずはAccessやファイルメーカーで作成することを検討したのですが、そういったソフトだと、使用する人が、そのソフトを持っていないと利用できないため、自分で市販されるようなソフトを勉強も兼ねて作りたいなぁ~と思っています。 ちなみに今、JAVAを軽く勉強中です。またHPを作れる程度のプログラミング能力です。 無謀かもしれませんが、頑張りますので、 1.データベースソフトを作るんだったら、どの言語を使って作成すると初心者でも作り易いか。(できればフリーで揃う環境が有り難いです。) 2.データベースソフトを作る方法を解りやすく解説しているようなHPは無いか? ぜひアドバイスを宜しくお願いいたします。

  • リレーショナルデータベースを使いたいのですが

    or や and を自在に使ったデータ管理をしたいのでリレーショナルデータベースを 使いたいのですが、Windows対応というと、ACCESSと桐ぐらいしか思い浮かびません。 フリーソフトではMYSQLをインストールしてみたのですが、うまくいきませんでした。 何かいいものがありましたらお教え下さい。

  • データベース名などこれで合っているでしょうか・・。

    すいません。初めてデータベースを扱うのですが、今までローカル環境でしか動かしていないため どのように実際に動かすのか分からない部分があります。(サイトは完成していましてローカル環境ではちゃんと動きました) まずデータベース名やアカウント名なのですが、データベースのためにさくらのサーバーを借りました。 データベースの設定画面を見ると以下のようになっています。 ----------------------------------------------------- データベース バージョン: MySQL 5.5 データベース サーバ mysql9999.db.sakura.ne.jp データベース ユーザ名 (初期アカウント名) abcd777 接続パスワード変更 ************ データベース名 abcd777_data ------------------------------------------------------- 上記の場合以下で合っているのでしょうか? $pdo = new PDO("mysql:dbname= _abcd777_data ; host=mysql9999.db.sakura.ne.jp", "abcd777", "************"); ポート番号なども設定があるような事も書いてあるサイトがあるのですが何をどうしてよいのか 全く分かりません。(とりあえず上記のような設定でデータベースからデータをphpで呼び出しましたが 上手く動きませんでした) もう一つ疑問があるのですが、私はトップページをindex.phpとしましたが、上記のような方法では アカウントやらパスワードが丸見えですよね? そもそも私は全く違う事をしているのでしょうか? できれば実際の運用の流れも簡単に書いてもらえると助かります。

  • データベース 初心者

    初めまして。会社でデータベースの作成を依頼され悩んでます。(データベースやったことなく、VB,VCを若干かじった程度です。)また、私は食品会社に2007年入社したばかりです。 以下のようなデータベースにしたいと思っていますが、どのような言語で作成していけばよいのか全く分かりません。 7/1 いちご 7 ぶどう 7 みかん 7 パックずつ生産 7/2 いちご 4 ぶどう 8       パックずつ生産 このような生産を毎日続けている工場をイメージして頂きたい。 毎日生産のデータをデータベースへ入力して、後日日付を選択するとその日のデータを検索できるようにしたいのです。またできれば、月単位の生産高も見れるようにしたいと考えています。 このようなソフトを作るうえで、どのような言語で作っていくべきか? どのような知識が必要になってくるのか? アドバイスを頂きたく、宜しくお願い致します。

  • データベースについて

    本をかじった知識で調べたところデータベース管理には、Oracle、MySQL、PostgreSQL、Firebirdや個人で使用するAccessなどのソフトがあるようですが、ほとんどが単体で紹介されていて、これらのメリット、デメリットを比較している本やサイトが見つからずどれがいいのかわからなくて困っています。 現在ビデオカメラから移動物体(人,車など)を検出し、追跡するプログラムをC言語、WIN32API、vfwで組んでいます。 1フレーム毎に移動物体の座標、大きさなどの情報10~15種類程度を人数分.csv形式で保存しています。 しかし、人数分のファイルが大量にできてしまうため、まとめて管理できるデータベースシステムを構築しようと考えています。 以下の条件に合うデータベースシステムを教えていただけると助かります。 ・リアルタイム処理なので処理速度が最重要。軽ければ軽いほど良い ・1フレームあたり、(10~15種類)*(人数)分の情報を保存 ・データの読み出しは、現在カメラに写っている物体のみ行う。基本的にはデータの保存、及び効率的な管理が目的 ・24時間稼動を想定している。(↑の通りリアルタイムで使うデータは極1部であり、過去の情報は別の機会に使う) ・データにアクセスするのは1人(自分のプログラムのみ) ・取得している言語はC、C++ よろしくお願いします。

  • データベース:サーバ上のデータの保存先?

    参考書を頼りにデータベース(Mysql)を勉強しています。 ほとんどの参考書がローカルでサーバ、データベース、Perl(PHP)の環境を整えて練習・・・という方法を採っていますが、いざ運用!という時の実践的なことが書かれていない本がほとんどなんですよねぇ、まったく・・・・。 そこで、以下の点について質問です。 (1)ローカルで作ったデータをTelnetやFTPソフトを使って リモートのサーバ上(借りたスペース)に保存することってできるんですよね? これができなかったら意味ないですよね? それともTelnetでMysqlを操作し、直接サーバ上にデータを作るのですか? (2)保存するディレクトリは管理者に問合せないと分からないのですか?それともお決まり(既定)の場所があるのでしょうか?はたまた、任意のディレクトリでも可能なのでしょうか? (3)上記のような点に関しては、SQLではなくApacheの本を読んだほうが良いのでしょうか? 以上、よろしくご教授ください。

  • データベースに格納時

    はじめまして、JAVAの勉強を始めて1ヶ月ほどの ひよっこですがご教授お願いします。 MYSQLとJAVAで、簡単な社員管理のサーブレットを 作成しています。それで、データベースの情報を 操作時に、複数のクライアントから同時に リクエストされても、エラーが起こらないように したいのですが、データを削除、追加、削除を行う メソッドを、 public static synchronized メソッド名(引数) としておけば大丈夫でしょうか? よろしくお願いします。

    • ベストアンサー
    • Java
  • データベースについて!(初心者です)お願いします!

    印刷会社勤務です。 現状、制作現場にはMacしかないのですが 「時代の流れに対応して、Windowsを導入する!」 ということになりました。 印刷会社にwinを導入するにメリットは ・winデータのそのままの活用 ・データベース活用 の2つだそうです。 で、わからないのが「データベース」なのです。 政府がe-japan構想を発表し、XML・・・あたりまで調べましたよくわかりませんでした。。 私はwinを導入し例えば 「大手電機部品メーカーなど大量の部品を扱っている企業に、マニュアル等をデータベース化し管理します。膨大なデータから、印刷したいリストののみを簡単に検索できます!修正なんかも楽々です!」 みたいなことを営業でアピールしたいと思っているのですがこれはXMLでできるのしょうか? また、なにかソフトを使ってつくるのでしょうか? メモ帳ににタグ打ちするのでしょうか? そもそもデータベースってこんな使い方ができるのでしょうか? XMLに何でも良いのでいろいろと教えてください! よろしくお願いします! 乱筆・長文失礼しました。

    • ベストアンサー
    • XML
  • データベースソフトとは・・・

    情報処理の授業でデータベースについてレポートを書くことになりました。 課題の内容は「データベースソフトにはどのようなものがあるか列挙せよ」という漠然としたものなので、何から書けばよいか困っています。 まったくの初心者なので、自分なりに調べてみたのですが、顧客管理用など種類もたくさんあり混乱しています。 Access Oracle ファイルメーカー OpenOffice.org MS SQL Server PostgreSQL MySQL DocuWorks EXCEL 以上が自分で調べたものなのですが、これがすべてデータベースソフトなのかも自信がありません。 Access、Oracleが有名らしいのですが、他にも有名なものって何なのでしょうか。 市販でも、フリーソフトでもかまいません。 どうぞ回答よろしくお願いいたします。