JAVAアプレット(JDK1.2)でデータベース(MS ACCESS97)へアクセスする場合
JAVAでのデータベースアクセスにはJDBCを使用し,
MS ACCESSに対してはODBCを使用し,
橋渡しとしてJDBC-ODBC BRIDGEドライバを使用する方法が本でよくとられているように僕は解釈しています。(違うかもしれませんが...)
しかし,MS ACCESS以外のデータベースでJDBCだけでアクセスしSQLをできるようなデータベースはあるのですか?
あるのならそちらのほうがいいのではないのでしょうか?
という質問でした。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

ありますよ。

知っているところではOracle,Sybaseが対応しています。実際にOracleは操作もやってみました。
ドライバの場所を紹介しておきます。

http://otn.oracle.co.jp/software/db_connect/jdbc …
http://www.sybase.co.jp/download/down_jconnect.h …

基本的にMS Accessは、データ量が小なく、更新はマルチでしない場合はOKです。極端な言い方をすると共有して使用するDBではないと思います。(読み書きをシリアル化して使うのならOKかも)

使用目的にあっていれば、Accessでいいと思いますし、Accessの能力を超える使い方をするのであれば、Oracle,Sybase,SQL Serverと言ったデータベースを使用する必要があるでしょう。

ただし、Webで使用する場合、クライアントライセンスの問題がありますので、注意してください。

この回答への補足

回答ありがとうございます。大変参考になりました。それでですが,oracleのページを見ましたがoracleがどうのようなものかがハッキリわかりませんでした。(データベースの他にもいろいろ書いてあってもので...)。よろしかったらどのような機能があるのかを教えてください。また,ソフトの値段なども...。

補足日時:2001/01/16 14:15
    • good
    • 0
この回答へのお礼

回答ありがとうございました。大変参考になりました。

お礼日時:2001/01/17 17:48

Oracleは、おそらく最も売れているRDBで、Windows NT,2000,UNIX,Linux用などがあります。

先ほど、紹介したページは技術者向けの情報のページです。Oracleのホームページは、

http://www.oracle.co.jp

ですので、機能や特徴はこちらを見てください。

Sybaseは、モバイル向けのDBでトップシェアです。
    • good
    • 0
この回答へのお礼

補足の回答までどうもありがとうございました。大変参考になりました。
しかし,Oracleって高いっすね。無知な僕は驚きましたです。
個人では...。
けど,本当に助かりました。また,何かあったら宜しくお願いします。

お礼日時:2001/01/17 17:53

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す

このQ&Aと関連する良く見られている質問

QJava環境で使用するAccessデータベースについて

以下の様な開発環境でシステムを構築しています。
OS:windowsXP
DB:Microsoft Access 2002
j2sdk:1.4.2_05
Tomcat:4.1.30

Web上で登録画面を表示、登録されたデータをサーブレット経由でDBに登録しようとしたところ、「パラメータが少なすぎます」というメッセージが出て登録できませんでした。
DBおよびSQL構文のエリア名の記入ミスも調べましたが問題ない模様です。
AccessのODBCドライバ(MDAC2.5)について調べたところ、MDAC2.5を使用したSQL文では二重引用符(”)を文字列リテラルとして使用できないようです。
この問題を回避するよい方法があれば、ぜひ教示願います。

<コーディング内容>
//postされた内容を受け取る
String wkkanri = request.getParameter(“kanri_No”);
String wkroom = request.getParameter(“room_No”);
-------------------------------------------------
//ドライバクラスのロード、DB接続
Class.forName(“sun.jdbc.odbc.JdbcOdbcDriver”);
Connection con = DriverManager.getConnection(“jdbc:odbc:syataku”);
Statement stmt = con.createStatement();

//insert用sql文の発行
String sql = “insert into kihon(kanri_No,room_No) values(wkkanri,wkroom)”;
Stmt.executeUpdate(sql);

以下の様な開発環境でシステムを構築しています。
OS:windowsXP
DB:Microsoft Access 2002
j2sdk:1.4.2_05
Tomcat:4.1.30

Web上で登録画面を表示、登録されたデータをサーブレット経由でDBに登録しようとしたところ、「パラメータが少なすぎます」というメッセージが出て登録できませんでした。
DBおよびSQL構文のエリア名の記入ミスも調べましたが問題ない模様です。
AccessのODBCドライバ(MDAC2.5)について調べたところ、MDAC2.5を使用したSQL文では二重引用符(”)を文字列リテラルとして使用で...続きを読む

Aベストアンサー

クォートが全角なのは記載ミスですよね。

例えば、wkkanri に K001 、wkroom に 101 とか入っている
として、Accessに渡したいSQLは

insert into kihon(kanri_No,room_No) values('K001',101)

になります。
しかしお書きになった内容は

insert into kihon(kanri_No,room_No) values(wkkanri,wkroom)

なので、Access側ではエラーになります。
String sql に連結させて、正しいSQLを動的に作ってあげないと。

String sql = "insert into kihon(kanri_No,room_No) values('" + wkkanri + "'," + wkroom + ")";

とかでは?
DB側の型がわからないので、その辺は自助努力で。

もしくはパラメータバインドと言う方法もありますが、まずは
今のやり方を完遂させた方がよいでしょう。

クォートが全角なのは記載ミスですよね。

例えば、wkkanri に K001 、wkroom に 101 とか入っている
として、Accessに渡したいSQLは

insert into kihon(kanri_No,room_No) values('K001',101)

になります。
しかしお書きになった内容は

insert into kihon(kanri_No,room_No) values(wkkanri,wkroom)

なので、Access側ではエラーになります。
String sql に連結させて、正しいSQLを動的に作ってあげないと。

String sql = "insert into kihon(kanri_No,room_No) values('" + wkkanri + "'," ...続きを読む

QMS Access 2000でデータベースファイルが開きません

以下のようなメッセージが出てファイルが開きません。

※※※※※※※※※※※※※※※※※※※※
'基本'マクロを見つけることができません。

マクロ(またはマクログループ)が存在しないか、新規マクロが保存されていません。
"マクログループ名.マクロ名"という構文でマクロ名を指定するときは、既定のマクロ グループ名をしていする必要があります。
※※※※※※※※※※※※※※※※※※※※

当方はこのアプリに関する知識は全くありません。
最悪は知り合いに相談(新規作成も含めて)しようとは思っています。
もし、何か復旧させる手立てがあればご教示いただけますか?

ちなみにこのファイルはNASに保管してあり、このショートカットを数台のLAN接続されたPC(Windows XP Home)のデスクトップに貼っています。

また、こういったトラブルを専門業者に依頼するとおおよそどの程度の費用が必要なのでしょうか?
知り合いに依頼する際、無料では頼めないので御礼として支払う対価の参考にしたいと思っていますので・・・。

よろしくお願いいたします。

以下のようなメッセージが出てファイルが開きません。

※※※※※※※※※※※※※※※※※※※※
'基本'マクロを見つけることができません。

マクロ(またはマクログループ)が存在しないか、新規マクロが保存されていません。
"マクログループ名.マクロ名"という構文でマクロ名を指定するときは、既定のマクロ グループ名をしていする必要があります。
※※※※※※※※※※※※※※※※※※※※

当方はこのアプリに関する知識は全くありません。
最悪は知り合いに相談(新規作成も含めて)しようとは思っています。
もし、何か復旧させる...続きを読む

Aベストアンサー

メッセージに「'基本'マクロを見つけることができません」と出るという事は
起動時の自動処理でマクロ「基本」を参照しようとしているが実際には
そんな名称のマクロがないヨという事です。

マクロに「基本」というマクロがあるか確認して見て下さい。
何かの弾みで名称を変更したり、削除してしまったりしていませんか?
バックアップがあればバックアップからインポートして復旧するなど方法があるかと思います。

なお、MDBを開く時に自動で処理を行なう方法は次の2通りあります。
 (1)マクロ「Autoexec」はMDB起動時に自動で実行されます。
   このAutoexecでマクロ「基本」を参照しているかもしれません。
 (2)メニュー[ツール]→[起動時の設定]
  「フォーム/ページの表示」で設定されているフォームがMDB起動時に
   自動で開きます。このフォームを開く時に処理を実行するように
   なっていると、MDB起動時に自動で処理が実行される事になります。
    このフォームの開く時に、マクロ「基本」を参照しているかもしれません。

ところで、今まで問題なく動いていたものが急にこのようになったのでしょうか?
何か手を加えなければ滅多にこのようにはならないと思うのですが。
「何かしたっけ?」と振り返ることも復旧への手がかりになります。
ヒントがありましたら、補足お願い致します。

メッセージに「'基本'マクロを見つけることができません」と出るという事は
起動時の自動処理でマクロ「基本」を参照しようとしているが実際には
そんな名称のマクロがないヨという事です。

マクロに「基本」というマクロがあるか確認して見て下さい。
何かの弾みで名称を変更したり、削除してしまったりしていませんか?
バックアップがあればバックアップからインポートして復旧するなど方法があるかと思います。

なお、MDBを開く時に自動で処理を行なう方法は次の2通りあります。
 (1)マクロ「Aut...続きを読む

Qデータベースウィンドウを表示しないで、データベースウィンドウを更新する

http://support.microsoft.com/kb/304256/ja
マイクロソフト技術情報で、RefreshDatabaseWindow メソッド は、 Access2000形式で保存されたプロジェクト(ADP)で動作しませんと出ており、データベースオブジェクトの作成、削除、または名前の変更が行われた後で、データベース ウィンドウを更新する処理が、データベースウィンドウを表示している状態でしか更新できません。データベースウィンドウが表示されていない状態で、データ入力フォームが表示されて、何かの処理がされたときにデータベースウィンドウを最新の状態に更新したい場合、何か方法をご存知の方いらっしゃいましたらご指導ください。
テーブル作成をした後、テーブルにアクセスする処理をしようとするとテーブルがないため、エラーになってしまうことがあるのですが、一時的にデータベースウィンドウを表示させてF5を押下して最新にして作成したテーブルが表示されるとエラーは発生しません。

Aベストアンサー

こんにちは、
どうしてデータベースウィンドウが表示されていてはいけないのか、わかりませんが、
処理の実行中に
画面の描画をストップさせて、データベースウィンドウ
を表示→処理→データベースウィンドウを非表示→
画面の描画をスタートさせてはいかがでしょうか。

参考URL:http://oshiete1.goo.ne.jp/kotaeru.php3?q=2229389

QUnix(AIX)サーバーで、ASPコードを使用してのMS Accessのデータベースを読み書きなどするのは可能でしょうか?

MS Accessのデータベースを使用して、ASPコードでそのデータを読み書き編集したりできるようなオンライン・アプリケーションのページを作成したのですが、サーバーがUnix(AIX)だと作成終了時に知りました。

Unix(AIX)上でASPコードを使用してのMS Accessのデータベースを読み書き出来る方法をどなたか知っている方いましたら教えてください。

Aベストアンサー

>>(下記参照)を見付けたのですが、Unix(AIX)サーバー上で、下記のようなコードで本当に接続できるのでしょうか?

元のコードが(Windows)ASP用のものですので、DB接続用ドライバの記述部分をUnix用に修正しないと動作しませんね。たとえば、「実践マスターPHP+MySQL for Windows & Linux」等の書籍などを購入されれば、サンプルコードがあると思います。

>>それと、テスト環境がWindows サーバーなので、一旦Windows サーバー上で完成させたページ、データベースを、どのようにしてUnix(AIX)サーバー上に移せば問題なくそれらが働くのか、やり方・注意点など教えて頂ければ本当に助かります。

それは、ここで手軽に記述できるほどの少ない分量ではないし、私もAIXを使ったことがありませんので、無理です。ただ上記で紹介した書籍や類似書には、出版社のサイトからサンプルソースが落とせたり、サンプルー入りCDが付録に付いています。サンプルはWindows向けだけでなく、Linux用のものもありますので、サーバ用マシンとしてもう1台PCを準備するか、仮想マシンソフト(VMWare等)をインストールして、Linux環境を用意すれば、かなりターゲットに近いものができると思います。

たぶん、LinuxOSの操作方法、各種コマンド、Windowsとの通信方法などに慣れるだけで、結構時間がかかると思います。ここで書いた短い文章だけでなんとかできたら、コンピュータ専門学校や大学の情報科なんていらないことになってしまいます。イメージ的には、「好きな子ができた。彼女はテニスが趣味で、テニスならデートの約束も可能そうだ。テニス未経験だけど、週末までに相手ができるようになりたいんだけど?」って言っている感じですね。(10万とか用意して、専門学校の前でオタクっぽくて暗そうな人を先生としてスカウトするってのもいいかも。)

毎日こればかりやって1ヶ月で解れば、「よくできました。見込みあるよ。」って感じでしょうね。

>>(下記参照)を見付けたのですが、Unix(AIX)サーバー上で、下記のようなコードで本当に接続できるのでしょうか?

元のコードが(Windows)ASP用のものですので、DB接続用ドライバの記述部分をUnix用に修正しないと動作しませんね。たとえば、「実践マスターPHP+MySQL for Windows & Linux」等の書籍などを購入されれば、サンプルコードがあると思います。

>>それと、テスト環境がWindows サーバーなので、一旦Windows サーバー上で完成させたページ、データベースを、どのようにしてUnix(AIX)サー...続きを読む

QMSアクセス データの更新

MSアクセス データの更新

メインフォーム[A]にデーターの一覧があり、新規データ[B]の登録は別フォームで行っています。
[A]・・データ入力用「いいえ」
[B]・・データ入力用「はい」

[B]で新規登録した後[A]に戻っても、その新規のデータは表示されず、レコード「更新」ボタンを手動で押すと表示されます。
自動で表示するには、どんなマクロになりますか?

「ファイルメーカー」にどっぷり浸かっていましたが、久々にアクセスに戻ってきました。
完璧にわすれています。
「ファイルメーカー」は、スクリプトだけで(それしか無い)処理できましたが、
アクセスのマクロだけで、「ファイルメーカー」のスクリプト程度の処理はできるでしょうか?
VBは必要最小限にしたいのですが。

Aベストアンサー

#1です

> 再クエリが1回分遅れます。
> [B]で何回か入力すると、その時の入力分は更新されず、
> 前回の入力分だけ更新されていきます。

> [B]で新規登録した後[A]に戻っても、


戻ると表現されていたのは、[B]を閉じる、で良かったのでしょうか。
[B]を閉じずに[A]に行ったり、[B]に行ったりしているのでしょうか。

閉じずに反映する時には、[B]の更新後処理イベントで、

オブジェクトの選択 フォーム, フォーム[A]名, いいえ
再クエリ

をやってみてください。
この時、[B]がポップアップになっていない時など、[A]に表示が切り替わるので
再クエリの後に、
オブジェクトの選択 フォーム, フォーム[B]名, いいえ
を追加して、[B]を表示するようにします。

また、[B]を閉じる方法が複数ある場合には、[B]の閉じる時イベントで

オブジェクトの選択 フォーム, フォーム[A]名, いいえ
再クエリ

をやってみてください。


人気Q&Aランキング

おすすめ情報