【工作心得】timesten应用(开发篇)

安装完成TT后,博主拍着胸脯对领导说没问题,明天给出demo。结果谁知道,接下来的一周博主直拍脑袋,就差拍屁股走人了。废话不多说。

一、为TT创建一个用户,用户名为test,密码为test。

二、还记得安装时说的TNS_ADMIN吗?进入TNS_ADMIN目录下,编辑tnsnames.ora文件

Data Manger:假设DSN为ttsvr

ttsvr =(DESCRIPTION=(CONNECT_DATA = (SERVICE_NAME = ttsvr)(SERVER = timesten_direct)))

Client:假设DSN为ttcs

ttcs =(DESCRIPTION=(CONNECT_DATA = (SERVICE_NAME = ttcs)(SERVER = timesten_client)))

 

三、安装ODAC,需要注意32bit的TT对应安装32bit ODAC,下载地址:

http://www.oracle.com/technetwork/topics/dotnet/utilsoft-086879.html

64bit TT对应安装64bit ODAC,下载地址:

http://www.oracle.com/technetwork/database/windows/downloads/index-090165.html

配置方法,见博文:

http://blog.csdn.net/holyrong/article/details/6737530

 

四、完成以上步骤后建立一个.NET控制台程序。将Oracle.DataAccess引用到工程中。

把一下代码复制到工程中,

        static string connString = "User Id=test;Password=test;Data Source=ttcs";

        public static void SelectFromTT()

        {

            string sql = "SELECT * FROM TEST_TABLE";

           

            OracleCommand select = null;

 

 

            try

            {

                OracleConnection con = new OracleConnection();

                con.ConnectionString = connString;

 

                con.Open();

 

                select = new OracleCommand(sql, con);

                select.CommandType =  CommandType.Text;

                OracleDataAdapter ada = new OracleDataAdapter(select);

                DataSet ds = new DataSet();

                ada.Fill(ds);

                int count = ds.Tables[0].Rows.Count;

                select.Parameters.Clear();

            }

            catch (Exception ex)

            { }

        }

在本例中ttcs已经在tns文件中配置好了,直接把dsn信息写到代码中也可行,connString则需要改成如下方式

static string ttcs = "ttcs =(DESCRIPTION=(CONNECT_DATA = (SERVICE_NAME = ttcs)(SERVER = timesten_client)))";

static string connString = "User Id=test;Password=test;Data Source=” + ttcs;

 

如果TT需要通过Cache Connect访问Oracle,需要先安装OracleClient,配置好oracle TNS,即在oracleHome \Network\Admin目录下tnsnames.ora。博主将oracle和TT的TNS文件共用,就是在这个目录下。然后配置Cache Connect,由于这部分是公司DBA完成的,所以博主没有过多研究这块,推荐博文:

http://hua04104.iteye.com/blog/1133442

 

连接字符串要改成如下形式static string connString = "Data Source=ttcs;User ID=test;Password=\"test;OraclePwd=mypswd;OracleNetServiceName=mydb;passthrough=1\"";

假设oracle数据库密码为mypswd,oracle服务名在tns中配置为mydb。

当程序在TT中没有取到数据的时候,会自动到oracle中去查询。

一个简单的.NET访问TT的Demo就可以了。在做web服务(比如说webservice)的时候,在部署的时候可能会遇到另一个问题。

Could not load file or assembly 'Oracle.DataAccess' or one of its dependencies. 试图加载格式不正确的程序。解决方法可参考:http://www.supesoft.com/ArticleDisp.asp?ID=4872

 

 

C++访问TT,有官方提供的TTClass,博主只是简单的使用官方例子进行了测试,例子在安装目录quickstart\sample_code\ttclasses目录下。但是在使用前需要进行一些配置。参考博文:

http://space.itpub.net/26107758/viewspace-714563

 

posted @ 2013-03-27 10:22  绿茵飞狼  阅读(419)  评论(0编辑  收藏  举报