• 締切済み

Oracleのデータをaccessで見る方法

基本的な質問をして申し訳ありません。Oracleのデータをaccessを使って参照や修正をする方法を教えてください。またASPやOracleのサンプルがあるサイトを教えてください。

みんなの回答

  • paz777
  • ベストアンサー率47% (77/163)
回答No.2

こんにちは。 #1 bin-chanさんの補足です。 まずは、前提条件として 1.ODBCドライバーがインストールされていること。 2.ORACLEのリスナーが起動していること。 の2点を、ご確認下さい。 ODBCドライバーがインストールされていない時はOracleのHPから ODBCドライバーをダウンロード後インストールして下さい。 http://www.oracle/co/jp 注意:ORACLEのバージョンにより使用するODBCが異なります。 で次はODBC環境の設定です。 多分、[ORAWIN]で始まるフォルダーがあると思います。 そのフォルダーの配下[X:\ORAWIN~\Network\Admin\]に Tnsnames.ora ってファイルがあると思います。 このファイルを更新しますので、出来れば事前にコピーを 保存して下さい。(失敗した時はコピーから戻して下さい) で、[Tnsnames.ora]をメモ帳等のエディターで開きます。 ファイルの最後に下記の記述を追加して下さい。 ----------------------------------------------------------- ※1.world = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (COMMUNITY = tcp.world) (PROTOCOL = TCP) (Host = ※2) (Port = ※3) ) ) (CONNECT_DATA = (SID = ※4) ) ) ----------------------------------------------------------- ※1:適当な名前を付けます。'AAAA'でも'BBBB'でも構いません。    出来れば、サーバーの名前など、分かりやすいほうが良いです。 ※2:ORACLEの入っているサーバーのIP Addressを指定します。 [X:\Windows\hosts]で定義しているものであれば、その名前で も良いです。 ※3:ORACLEへのアクセス用のポート番号を指定します。 ORACLEのデフォルトでは[1521]ですが、カスタマイズされて いるかもしれませんのでORACLEの管理者にご相談下さい。 ※4:ORACLEのSIDを指定します。これもORACLEの管理者に伺って    下さい。 具体例) ----------------------------------------------------------- AYU.world = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (COMMUNITY = tcp.world) (PROTOCOL = TCP) (Host = xxx.xxx.xxx.xxx) (Port = 1521) ) ) (CONNECT_DATA = (SID = TEST) ) ) ----------------------------------------------------------- 追加後、ファイルを保存します。 後は、#1 bin-chanさんの書かれている通りに操作して下さい。 ODBCデータソースの作成で「サーバー名」のところに、 上で作った[※1]を入力して下さい。 それと、ORACLEテーブルを更新(UPDATE)する時は、ORACLEテーブル に[UNIQUE INDEX]か[PRIMARY KEY]が必要ですので、ご注意下さい。 分からないところがあれば補足して下さい。 ではでは・・・

  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.1

前半だけの回答です。 1.ODBCデータソースを作成する。   1)コントロールパネルに[ODBCデータソース]があるので[開く]。   2)システムDNSタブをクリック。   3)追加ボタンをクリック。   4)ドライバを選択(MS版とOracle版があるかも?)   5)完了ボタンをクリック。 2.ACCESSでリンクテーブルの作成を選択する。   1)何がしかのデータベースを「開く」。   2)メニュー[ファイル]の[外部データの取り込み]-[テーブルのリンク]を選択。   3)[ファイルの種類]で[ODBSデータソース]を選択。(ここでも新規作成可能なんですね) 3.ACCESSでOracleのデータを操作する。   1)リンクテーブルを操作できるようになってるはず。

関連するQ&A

  • アクセス→オラクルの方法は?

    アクセス(Access2000)で作ったサンプルDBを オラクル(Oracle9i)にインポートするためには どうすればいいのでしょうか。 そもそもできるのでしょうか。 テーブルだけでOKなんです。 いったんデータをcsvにはいてから? 逆方向(オラクル→アクセス)はよく見かけるのですが…

  • AccessのデータをOracleに移行したい

    AccessのデータをExcel(csv)にエクスポートして、それをSQL Loderでオラクルに移せると聞いたのですが、 具体的にはどんな感じで行うのでしょうか? Access2000 Oracle9i RedHatLinux7.2 です。 よろしくお願いします。

  • accessからのデータ参照について

    ご存知の方がいたら教えて下さい。 【動作環境】 OS:WINDOWS SERVER 2003,WINDOWS XP ACCESS:ACCESS2000 ORACLE:9i(9.2.0.1.0) 1つのACCESSファイルにシステム部分とデータ部分が存在しているACCESSのシステムを「システム部分はACCESS」「データ部分はORACLE」という形にしました。 ACCESSで管理していたデータをORACLEへ移行して、データ自体は簡単に移行が行え、ODBCでリンクをしてデータを参照できる状態にしました。 ここまでは、良かったのですが移行を行ったACCESSのテーブルに1レコード240ぐらい項目のあるテーブルが存在してリンクテーブルを開くことができません。 クエリーでも項目を選択した場合は参照できますが、全てを表示させようとするとダメです。 パススルークエリ等も試してみたのですが、いまいちうまくいきません。 どうにかして、1レコード240ほどのORACLEデータをACCESS側で参照することができないでしょうか? 説明が分かりずらく申し訳ありません。ご質問いただければ補足を致しますので、よろしくお願いします。

  • オラクル9のアクセスログ

    ORACLE9iを違うコンピュータからjdbcを通じて参照しようとしていますが うまくいきません。オラクル側から拒否されているのか、そこまでもいってないのか? の切り分けができないのですが、オラクルにはアクセスログ的なものはどこを見ればいいのでしょうか?

  • オラクルとアクセスはどちらが難しいのでしょうか?

    どっちもよくわからないのですが 覚えるとしたら どちらの方が大変なのでしょうか? アクセスよりオラクルの方が大量のデータを扱えると聞いたことがあるので オラクルの方が高機能なのでしょうか? よろしくお願いします。

  • ORACLEのアクセス

    oracle10gで構築したDBをoracle9iのクライアントからアクセス可能でしょうか。(SQLを参照したりVBで作成しらプログラムからODBC/OLE形式でアクセスする)

  • Oracleに接続

    ASP.NETの初心者です。 oracleに接続したいのですが、可能でしょうか。 普段はVB.NETで接続して使っていますが、ASP.NETではどのようにすれば接続出来るのでしょうか? ASPで接続しているサンプルはありましたが、ASP.NETでのサンプルを見つける事が出来ないので、 いいサンプルがあれば紹介して頂けないでしょうか?

  • オラクルからのデータ取得について

    こんにちわ。 下にも質問したのですが・・・ シェルからオラクルDBにアクセスし、データを取得する処理を行いたいのですが、 sqlplusで、実行結果をファイルに出力する方法はありますでしょうか? よろしくお願いします。

  • ORACLEデータをACCESSへインポート VB

    OracleのデータをAccessへインポートする方法について、どなたかご教授ください。 VB.NETで OracleからAccessへのデータコンバート機能を作ることになりました。 (環境 OS;Win7 言語;VB2008 Oracle;10g Access;2010) 対象のテーブル数、フィールド数、データ数がかなり多いのですが、Accessへデータをインポート(コピー)する良い方法はないでしょうか? 普段、データ入力が専門のためプログラムは初心者です。 今のところOLE DBを使用して1行ずつデータを登録する方法しかできません・・・ ヘルプを参考に、ODBCでDSNレスのINTO(SQL)を挑戦しているのですが「入力テーブルまたはクエリが見つかりません」と出てしまいます。 ◇質問 (1).複数のテーブルをAccessへコピーするにはどんな方法がありますか?   また、このような対象テーブルが多い場合に有効な方法は? (2).ODBCでDSNレスのINTO(SQL)を作成するのに注意することはありますか? ちなみにエラーが出てしまうSQL文は以下です。違っているでしょうか? cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;data source=D:\DATA\DB.mdb" sql = "SELECT * INTO impテーブル名 " & _ "FROM [ODBC;DRIVER={Microsoft ODBC for Oracle};" & _ "SERVER=" & orSorc & ";" & _ "UID=" & orUsrID & ";" & _ "PWD=" & orPswd & "].expテーブル名" ※ Oracleは10g/11gのバージョンが存在するためODPは使用しません

  • オラクルからAccessにデータ追加

    オラクルから、必要なデータを抜出し加工の為のDBをAccessで作成していますが、オラクルから抜き出したデータ(レコードセット)を、どうやってAccessのテーブルに書き込めばよいかがわかりません。 ◎環境 Oracle:10g Access:2010 ◎現在の状況 Dim CON As New ADODB.Connection Dim RS As ADODB.Recordset Dim SQL As String Dim i As Integer 'DB接続定義 CON.Open "DSN=DNS名;UID=ユーザー名;PWD=パスワード;" 'SQL文 SQL = "SELECT " SQL = SQL & "カラム1," SQL = SQL & "カラム2," SQL = SQL & "カラム3" SQL = SQL & "FROM オラクルテーブル名 " SQL = SQL & "WHERE 抽出条件 " SQL = SQL & "AND 抽出条件" SQL = SQL & "GROUP BY カラム" SET RS = CON.EXCUTE(SQL) For i = 1 To 10 Debug.Print rs(カラム1) & rs(カラム2) next i ここまでは、オラクルのテーブルから、レコードセットにデータが取り込まれてます。 rs.close: SET RS = Nothing con.close:SET CON=Nothing end sub 案1 レコードセットのデータを、Access側のテーブルにループで回して、1行ずつデータ追加 案2 INTO句で直接、テーブル作成 調べていて、2通りのやり方があると思うのですが、どちらにしても、テーブルへの書き込み方がわかりません。 案1の場合、Access側のテーブルを開いてデータ追加する方法 ※同時に2つのテーブルを開くことになるのでは? 案2の場合、SQL文はオラクルで処理する為の物なので、AccessテーブルのINTO句が使えるのか? オラクルのテーブルをリンクする事も考えたのですが、実際動かすPCにはAccessRuntimeしかインストールしてませんので、オラクルのテーブルをリンクしてくれませんでした。 よい方法があれば、アドバイスを頂けたら幸いです。