「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。 -[[戻る>ADO.NETデータプロバイダ]] * 目次 [#f5fbbcd9] #contents *概要 [#l01b64fb] 久々にOracleをインストールしたので手順をメモしておく。 *Oracle11gXEをダウンロードしてインストール [#ub079273] -Oracle Database Express Edition 11g Release 2のダウンロード~ http://www.oracle.com/technetwork/jp/database/database-technologies/express-edition/downloads/index.html *SQL Developerダウンロードしてインストール [#e17f4fd9] -SQL Developerダウンロードしてインストールする。 --Oracle SQL Developer ダウンロード~ http://www.oracle.com/technetwork/jp/developer-tools/sql-developer/downloads/index.html -システム要件を確認すると、JDK 1.8 以上、~ Windows 10では、JDK 8u51 or higher が必要になる。 --Certification~ http://www.oracle.com/technetwork/developer-tools/sql-developer/certification-096745.html -必要に応じて、以下から、JDK nunnをダウンロードしてインストールする。 --Java Archive Downloads - Java SE 8~ http://www.oracle.com/technetwork/java/javase/downloads/java-archive-javase8-2177648.html *Oracleを起動してアプリケーションから使うまで。 [#k1805ec5] **Oracleを起動する。 [#pe62bf8f] 「Start Menu」に「Start Database」が作成されているのでコレを押下する。 **SQL Developerを起動して接続する。 [#w6049665] 接続を追加する。 -接続名:任意 -ユーザー名:system -パスワード:インストール時に入力したパスワード -Oracle(既定値のままでイイ) --接続タイプ:基本 --ロール:デフォルト --ホスト名:localhost --ポート:1521 --SID:xe -参考 --Oracle Databaseへの接続および検索 > SQL DeveloperからOracle Databaseへの接続~ http://docs.oracle.com/cd/E16338_01/appdev.112/b56265/tdddg_connecting.htm#CEGFCEGG **SQLを発行する(DDLを発行してテーブルを作成する)。 [#r9ca6c77] -メニューの「SQLワークシート」押下して、作成した接続名を選択する。~ 若しくは、上記で開いた接続名(出指定した名称)タブのメニューから「非共有SQLワークシート」を選択。 -開いた「SQLワークシート」タブにSQLを貼り付けてSQLを発行する(DDLを発行してテーブルを作成する)。 --OpenTouryo/TestTable.txt at develop · OpenTouryoProject/OpenTouryo~ https://github.com/OpenTouryoProject/OpenTouryo/blob/develop/root/files/resource/Sql/oracle/TestTable.txt -作成したテーブルに対してSQLを発行してデータが参照できるかどうか確認する。 #ref(1.png,left,nowrap,作成したテーブルに対してSQLを発行してデータを参照) **Visual StudioからODP.NET Managed Driverを使用して接続・実行する。 [#y967a038] -新規作成→プロジェクト→コンソールアプリケーションを作成する。 -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スキーマを作成する。 [#t85841b3] systemスキーマではクリーンナップなどが面倒なので、scott/tigerスキーマを作成する。 -Oracle 11gの環境で、scott/tigerのサンプルスキーマを作成 | cyberarchitect~ http://replication.hatenablog.com/entry/2015/02/16/093000 **スキーマ作成用のDDLを取得 [#p45b8b93] 「C:\oraclexe」がインストール・ディレクトリとして、以下にDDLを発見できた。~ "C:\oraclexe\app\oracle\product\11.2.0\server\rdbms\admin\utlsampl.sql" >(utlsmtp.sqlと間違いやすいと思うので注意する。) **スキーマ作成用のDDLを実行 [#q13b33ad] スキーマ作成用のDDLをSQL Developerを使用して実行する。 **スキーマに接続しテーブルを作成する。 [#s8aeadcb] -[[SQL Developerを起動して接続する。>#w6049665]]に戻って手順を繰り返す。 **スキーマをクリア(リセット)してテーブルを再作成する。 [#e531a335] -CASCADE付きの「DROP USER」を行うことで、スキーマをクリア(リセット)できる。 --スキーマ作成・削除 (oracle)|淡々たんのメモ~ https://ameblo.jp/tan3/entry-10013104664.html -前述の"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"を再実行する。 -[[SQLを発行する(DDLを発行してテーブルを作成する)。>#r9ca6c77]]に戻って手順を繰り返す。 *参考 [#ccfb44d7] -意外と簡単!? Oracle Database 11g Release 2 データベース構築編~ http://www.oracle.com/technetwork/jp/articles/selfstudy-win-11-131931-ja.pdf -SQL Developerの使い方~ダウンロード、インストール、DB接続、SQL実行~ Oracle オラクルエンジニア通信 - 技術資料、マニュアル、セミナー Blog~ https://blogs.oracle.com/oracle4engineer/sql-developerdbsql -Managed な ODP.NET で tnsnames.ora を参照する (Windows, Visual Studio 2015) - Qiita~ https://qiita.com/monta31538/items/b31382e98ae03f5d9c3c ---- Tags: [[:データアクセス]], [[:ADO.NET]]