我正在寻找在Oracle8和Visual Studio2005应用程序之间建立连接的最佳实践。目标是一个用C#编写的Windows Forms应用程序,它每秒访问数据库一次,以监视表查找它们最后插入的记录。我正在考虑使用“应用程序设置”来存储连接字符串,但我很乐意听到你们的意见。提前感谢!
这是一个非常基本的草案:
using System.Data;
using System.Data.OracleClient;
try
{
StringBuilder str = new StringBuilder();
string ora = Properties.Settings.Default.OracleConnectionString;
OracleConnection con = new OracleConnection(ora);
OracleCommand cmd = new OracleCommand();
cmd.Connection = con;
cmd.CommandText = "SELECT timestamp FROM jde_out WHERE rownum = 1";
cmd.CommandType = CommandType.Text;
con.Open();
OracleDataReader rdr = cmd.ExecuteReader();
rdr.Read();
str.AppendLine(cmd.ExecuteScalar().ToString());
this.lblJDEtime.Text = str.ToString();
rdr.Close();
con.Close();
}
catch (OracleException err)
{
MessageBox.Show("Exception caught:\n\n" + err.ToString());
}我刚刚更新了执行连接所需的代码。已将异常类型更改为更具体的OracleException。通过Properties.Settings添加连接字符串。
发布于 2008-10-23 19:19:36
根据我使用Oracle 10g的经验...
根据我使用Oracle10g的经验,我建议使用Oracle data provider (ODP.Net),而不要使用Microsoft for Oracle data provider。微软的已经很多年没有更新了,并且不支持Oracle10g中的所有内容,所以我肯定会在Oracle8中检查一下。
按照app.config文件中连接字符串上的Microsoft guidance,您应该将其存储为:
<?xml version='1.0' encoding='utf-8'?>
<configuration>
<connectionStrings>
<clear />
<add name="Name"
providerName="System.Data.ProviderName"
connectionString="Valid Connection String;" />
</connectionStrings>
</configuration>我还使用存储在应用程序设置中的连接信息来开发应用程序,这在我们的应用程序中工作得很好。
发布于 2008-10-23 21:09:52
包括Oracle在内,ConnectionStrings.com几乎包含了您想要的所有类型的连接字符串。
发布于 2008-10-23 20:55:27
以下是我们的环境中的一个示例:
<add key="ODP.NET.ConnectionString" value="Password=abcdefg;Persist Security Info=True;User ID=abc123;Data Source=blah;"/>其中适当设置了用户名和密码,数据源是我们要连接到的Oracle的TNSNAMES.ORA中的条目。
https://stackoverflow.com/questions/230927
复制相似问题