C#连接Oracle数据库的字符串
2014-05-17 16:44
399 查看
C#连接Oracle数据库的字符串
C#连接Oracle数据库的字符串如下:
Data Source=orclsid_127.0.0.1;User Id=scott;Password=scott;
需要特别说明的是Data Source这个值是什么,从哪里获取到的(后面两个,能在这里看到的,估计都知道意思了吧,后面两个不解析了)。
Data Source:从字面上解释就是数据源,这个数据源是从Oracle的安装目录下tnsnames.ora文件中去找的。而并非是在系统的“管理工具”下的“数据源(ODBC)”中找。这个tnsnames.ora文件是在
Oracle的安装目下的“client_1/network/admin/”下。如例子的orclsid_127.0.0.1是这样的:
orclsid_127.0.0.1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orclsid_127.0.0.1)
)
)
这里说明一下:SERVICE_NAME = orclsid_127.0.0.1 这个应该是Oracle数据库实例的网络服务名称(sid_主机名)。在安装时如果没改的话,一般默认是ORCL。
下面转载一下相关的资料:
连接字符串和对象
Oracle 连接字符串和 Oracle 名称解析是不可分的。假定我们在 tnsnames.ora 文件中定义了一个数据库别名 OraDb,如下:
OraDb=
(DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=TCP)(HOST=OTNSRVR)(PORT=1521))
)
(CONNECT_DATA=
(SERVER=DEDICATED)
(SERVICE_NAME=ORCL)
)
)
OraDb 别名定义客户端的数据库地址连接信息。要使用上面所述的在 tnsnames.ora 文件中定义的 OraDb 别名,您需要使用以下语法:
string oradb = "Data Source=OraDb;User Id=scott;Password=tiger;"; // C#
如果您想看到代码时一目了然,但是不嫌复杂的话,您可以修改连接字符串,这样就不需用 tnsnames.ora 文件。只需用在 tnsnames.ora 文件中定义别名的语句替换别名即可。
// C#
string oradb = "Data Source=(DESCRIPTION="
+ "(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=ORASRVR)(PORT=1521)))"
+ "(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=ORCL)));"
+ "User Id=scott;Password=tiger;";
正如您在上面看到的那样,用户名和口令是以不加密的文本形式嵌入到连接字符串中的。这是创建连接字符串的最简单的方法。然而,从安全的角度而言不加密文本的方法是不可取的。尤其是,您需要
了解编译的 .NET 应用程序代码仅比不加密文本形式的源代码文件稍微安全一点。可以非常简便地反编译 .NET DLL 和 EXE 文件,进而查看原始的不加密文本形式的内容。(加密实际上是正确的解决方
案,但这个主题与我们这里的讨论相差太远。)
接下来,您必须从连接类中完成一个连接对象的实例化。连接字符串必须与连接对象关联。
OracleConnection conn = new OracleConnection(oradb); // C#
注意,通过将连接字符串传递给连接对象的构造器(该构造器进行了重载),连接字符串与连接对象建立关联。构造函数的其他重载允许以下这些替代的语法:
OracleConnection conn = new OracleConnection(); // C#
conn.ConnectionString = oradb;
在连接字符串与连接对象建立关联之后,使用 Open 方法来创建实际的连接。
conn.Open(); // C#
C#连接Oracle数据库的字符串如下:
Data Source=orclsid_127.0.0.1;User Id=scott;Password=scott;
需要特别说明的是Data Source这个值是什么,从哪里获取到的(后面两个,能在这里看到的,估计都知道意思了吧,后面两个不解析了)。
Data Source:从字面上解释就是数据源,这个数据源是从Oracle的安装目录下tnsnames.ora文件中去找的。而并非是在系统的“管理工具”下的“数据源(ODBC)”中找。这个tnsnames.ora文件是在
Oracle的安装目下的“client_1/network/admin/”下。如例子的orclsid_127.0.0.1是这样的:
orclsid_127.0.0.1 =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = orclsid_127.0.0.1)
)
)
这里说明一下:SERVICE_NAME = orclsid_127.0.0.1 这个应该是Oracle数据库实例的网络服务名称(sid_主机名)。在安装时如果没改的话,一般默认是ORCL。
下面转载一下相关的资料:
连接字符串和对象
Oracle 连接字符串和 Oracle 名称解析是不可分的。假定我们在 tnsnames.ora 文件中定义了一个数据库别名 OraDb,如下:
OraDb=
(DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=TCP)(HOST=OTNSRVR)(PORT=1521))
)
(CONNECT_DATA=
(SERVER=DEDICATED)
(SERVICE_NAME=ORCL)
)
)
OraDb 别名定义客户端的数据库地址连接信息。要使用上面所述的在 tnsnames.ora 文件中定义的 OraDb 别名,您需要使用以下语法:
string oradb = "Data Source=OraDb;User Id=scott;Password=tiger;"; // C#
如果您想看到代码时一目了然,但是不嫌复杂的话,您可以修改连接字符串,这样就不需用 tnsnames.ora 文件。只需用在 tnsnames.ora 文件中定义别名的语句替换别名即可。
// C#
string oradb = "Data Source=(DESCRIPTION="
+ "(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=ORASRVR)(PORT=1521)))"
+ "(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=ORCL)));"
+ "User Id=scott;Password=tiger;";
正如您在上面看到的那样,用户名和口令是以不加密的文本形式嵌入到连接字符串中的。这是创建连接字符串的最简单的方法。然而,从安全的角度而言不加密文本的方法是不可取的。尤其是,您需要
了解编译的 .NET 应用程序代码仅比不加密文本形式的源代码文件稍微安全一点。可以非常简便地反编译 .NET DLL 和 EXE 文件,进而查看原始的不加密文本形式的内容。(加密实际上是正确的解决方
案,但这个主题与我们这里的讨论相差太远。)
接下来,您必须从连接类中完成一个连接对象的实例化。连接字符串必须与连接对象关联。
OracleConnection conn = new OracleConnection(oradb); // C#
注意,通过将连接字符串传递给连接对象的构造器(该构造器进行了重载),连接字符串与连接对象建立关联。构造函数的其他重载允许以下这些替代的语法:
OracleConnection conn = new OracleConnection(); // C#
conn.ConnectionString = oradb;
在连接字符串与连接对象建立关联之后,使用 Open 方法来创建实际的连接。
conn.Open(); // C#
相关文章推荐
- c# 连接oracle数据库字符串
- C#连接Oracle数据库的字符串
- C# 连接Oracle数据库连接字符串
- Oracle数据库连接字符串写法 C#
- C#连接Oracle数据库的连接字符串
- C#连接Oracle数据库字符串【51cto在线经典书籍】
- C#连接Oracle数据库的连接字符串
- 关于c#连接Oracle数据库出现的无法解析连接字符串问题
- C#连接Oracle数据库的字符串
- c#.net连接远程oracle数据库的连接字符串
- c#连接oracle数据库的字符串
- C#连接Oracle数据库的连接字符串
- 用C#l连接MySQL和Oracle数据库-在公司最近十天的工作内容总结(一)
- C#中数据库连接字符串的管理和使用
- C#连接oracle数据库
- C#-ADO.Net连接池和连接字符串剖析
- ASP.Net(C#)连接Oracle数据库的方法
- C#连接Oracle数据库
- C#2005如何读取XML文件中的数据库连接字符串??? (好像和2003不一样啊) 急,跪求!