マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。

目次

概要

詳細

Oracle11gXEをダウンロードしてインストール

SQL Developerダウンロードしてインストール

  • SQL Developerダウンロードしてインストールする。
  • システム要件を確認すると、JDK 1.8 以上、
    Windows 10では、JDK 8u51 or higher が必要になる。
  • 必要に応じて、以下から、JDK nunnをダウンロードしてインストールする。

Oracleを起動してアプリケーションから使うまで。

Oracleを起動する。

「Start Menu」に「Start Database」が作成されているのでコレを押下する。

SQL Developerを起動して接続する。

接続を追加する。

  • 接続名:任意
  • ユーザー名:system
  • パスワード:インストール時に入力したパスワード
  • Oracle(既定値のままでイイ)
    • 接続タイプ:基本
    • ロール:デフォルト
    • ホスト名:localhost
    • ポート:1521
    • SID:xe

SQLを発行する(DDLを発行してテーブルを作成する)。

  • メニューの「SQLワークシート」押下して、作成した接続名を選択する。
    若しくは、上記で開いた接続名(出指定した名称)タブのメニューから「非共有SQLワークシート」を選択。
  • 作成したテーブルに対してSQLを発行してデータが参照できるかどうか確認する。
    作成したテーブルに対してSQLを発行してデータを参照

Visual StudioからODP.NET Managed Driverを使用して接続・実行する。

  • 新規作成→プロジェクト→コンソールアプリケーションを作成する。
  • NuGetからODP.NET Managed Driverを検索してインストールする。
  • 以下のコードを記述してデバッグ実行するとレコード件数が返る。
    (接続文字列のアカウントは、systemとインストール時に入力したパスワードなど環境に合わせて変更すること。)
using Oracle.ManagedDataAccess.Client;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            OracleConnection cn = new OracleConnection("User Id=system;Password=xxxx;Data Source=localhost/XE;");
            cn.Open();
            OracleCommand cmd = new OracleCommand("SELECT COUNT(*) FROM SHIPPERS", cn);
            Console.WriteLine(cmd.ExecuteScalar().ToString());

            Console.ReadKey();
        }
    }
}

SCOTT/tigerスキーマを作成する。

systemスキーマではクリーンナップなどが面倒なので、scott/tigerスキーマを作成する。

スキーマ作成用のDDLを取得

「C:\oraclexe」がインストール・ディレクトリとして、
以下にSCOTT/tigerスキーマ作成用のDDLを発見できた。

"C:\oraclexe\app\oracle\product\11.2.0\server\rdbms\admin\utlsampl.sql"

(utlsmtp.sqlと間違いやすいと思うので注意する。)

スキーマ作成用のDDLを実行

スキーマ作成用のDDLをSQL Developerを使用して実行する。

スキーマに接続しテーブルを作成する。

スキーマをクリア(リセット)してテーブルを再作成する。

  • CASCADE付きの「DROP USER」を行うことで、スキーマをクリア(リセット)できる。
  • 前述の"utlsampl.sql"内では、冒頭で、下記のCASCADE付きの「DROP USER」が呼ばれているので、
    再実行すれば、これをクリア(リセット)できる。開発・テストの際に便利。
    DROP USER SCOTT CASCADE;
    DROP USER ADAMS CASCADE;
    DROP USER JONES CASCADE;
    DROP USER CLARK CASCADE;
    DROP USER BLAKE CASCADE;

注意:「SCOTT/tiger」への接続がある場合、「DROP USER」に失敗するので、
Oracleを再起動して、systemユーザーから"utlsampl.sql"を再実行する。

トラブルシューティング

vendor code (17002) 発生、TNSListenerが起動していない。

ホスト名/IPアドレス変更

  • oracleは、ホスト名/IPアドレス変更すると起動しなくなる。
  • 開発環境なので、oracleのアンインストール・インストールを行った。

「ORACLE_HOME」環境変数

  • 環境変数に「ORACLE_HOME」を追加すると、この現象が発生するらしい。
    (丁度、Apache Jmeterの調査と動作確認で「ORACLE_HOME」環境変数を追加していた。)
  • 必要に応じて、「ORACLE_HOME」環境変数を削除する。

参考

tnsnames.ora を参照

ODP.NET Managed DriverがサポートするOracleバージョン

Oracleを利用予定ですが、Open棟梁で対応していないバージョン・エディションはある? - Google グループ
https://groups.google.com/forum/?hl=ja#!topic/opentouryoproject/iDxTplIdWVs


Tags: :データアクセス, :ADO.NET


添付ファイル: file1.png 138件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2018-11-06 (火) 13:13:01 (11d)