システムにローカル Oracle データベースをセットアップし、SqlDeveloper と Sql*Plus (sqlplus system/mypassword@ORACLE) の両方を介して接続できますが、Visual Studio の展開オプションで ODP.Net 接続文字列をセットアップしようとすると、 2010 CLR Project を実行すると、ORA-12154: TNS: could not resolve the connect identifier specified が表示されます。
私が行うアクション: Visual Studio 2010
ファイル
- 新しい計画
- データベース
- オラクル
- Visual C# オラクル プロジェクト
建てる
- 配備
- Oracle Deployment Wizard が開始され、次の仕様で新しい接続を作成します。
- データ ソース: Oracle データベース (ODP.NET)
- データ ソース名: ORACLE
- ユーザー名: システム
- パス: mypassword
- テスト接続
- ORA-12154: TNS: 指定された接続識別子を解決できませんでした
私の tnsnames.ora の内容:
# tnsnames.ora Network Configuration File: c:\app\oracle\product\11.2.0\dbhome_1\network\admin\tnsnames.ora
# Generated by Oracle configuration tools.
ORACLE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = ORACLE)
)
)
ORACLR_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
)
(CONNECT_DATA =
(SID = CLRExtProc)
(PRESENTATION = RO)
)
)
私のlistener.oraの内容:
# listener.ora Network Configuration File: c:\app\oracle\product\11.2.0\dbhome_1\network\admin\listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = c:\app\oracle\product\11.2.0\dbhome_1)
(PROGRAM = extproc)
(ENVS = "EXTPROC_DLLS=ONLY:c:\app\oracle\product\11.2.0\dbhome_1\bin\oraclr11.dll")
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = myhost.domain.com)(PORT = 1521))
)
)
ADR_BASE_LISTENER = c:\app\oracle
sqlnet.ora の内容:
# sqlnet.ora Network Configuration File: c:\app\oracle\product\11.2.0\dbhome_1\network\admin\sqlnet.ora
# Generated by Oracle configuration tools.
# This file is actually generated by netca. But if customers choose to
# install "Software Only", this file wont exist and without the native
# authentication, they will not be able to connect to the database on NT.
SQLNET.AUTHENTICATION_SERVICES= (NTS)
NAMES.DIRECTORY_PATH= (TNSNAMES, EZCONNECT)