lonionDBA

C#通过配置数据源连接Oracle数据库

本文摘自http://jishudaima.iteye.com/blog/955166

 

1.首先装好你的Oracle 9i。然后再控制面板->管理工具->数据源(odbc)

2.双击数据源(odbc)->选择系统DSN->添加->Microsoft ODBC for Oracle , 数据源名称:chicoDB (这个是用来在C#中写连接字符串用的), 服务器名称:chicoDB (这个是你安装Oracle的时候建立的sid名称即数据库名)。然后确定

3.打开你的pl/sql 建立几个表(新建->表)..我使用的system帐号登陆权限为SYSDBA,数据库为chicoDB.(不过使用PL/SQL好像不用用户名密码也可以登陆)比如我建立的是client 表。我的所有者为system.在列中输入:CLIENTID (nvarchar(11)),ID(nvarchar(11)),NAME(nvarchar(50)),SEX(char(1)),TEL(nvarchar(11)),INCOME(NUMBERIC),JOB(nvarchar(50))。

4.建立一个c#工程项目,连接字符串这样写:const string connstr = "DSN=chicoDB;UID=System;Pwd=zaqwsx;";

前面要using System.Data.Odbc; 想建立连接的话就写:OdbcConnection cn = new OdbcConnection(connstr);

C-sharp代码 复制代码
  1. const string connstr = "DSN=chicoDB;UID=System;Pwd=zaqwsx;";   
  2. OdbcConnection cn= new OdbcConnection(connstr);   
  3. cn.Open();   
  4. // 这里的基本上都是string类型,出了income是double   
  5. String sqlInsert = "insert into System.client values(\'" + clientId + "\',\'" + id + "\',\'" + name + "\',to_char(\'" + sex + "\'),\'" + tel + "\'," + income + ",\'" + job + "\')";   
  6. OdbcCommand oc = new OdbcCommand(slqInsert, cn);   
  7. oc.CommandType = System.Data.CommandType.Text;   
  8. int rows =oc.ExecuteNonQuery();   
  9. System.Console.WriteLine(rows);// 打印被影响的行数   
  10. String sql = "select * from system.client";   
  11. oc.CommandText = sql;   
  12. OdbcDataReader dbreader= oc.ExecuteReader();   
  13. //这个Reader好像不能脱机操作..(具体没有查)   
  14. object[] o = null;   
  15. if (dbreader.HasRows)   
  16. {   
  17.     o = new object[dbreader.FieldCount];   
  18.     dbreader.GetValues(o);   
  19. }   
  20. // 这里你自己写个打印语句将查询出来的记录打印出来吧..   
  21. dbreader.Close();   
  22. oc.Dispose();   
  23. cn.Close();  

操作完毕..

这里要注意的一点,如果你在sql语句末尾加入了\';\',那么Oracle就会报错。另外我本来想用OdbcParament来写.后来屡次失败。不知道愿意。有写出来的且能运行的.帮忙贴在我的评论里。

分类:

技术点:

相关文章:

  • 2021-09-19
  • 2021-05-07
  • 2021-11-28
  • 2021-06-17
  • 2021-05-31
  • 2021-07-29
  • 2022-01-07
猜你喜欢
  • 2021-10-17
  • 2021-10-17
  • 2021-07-13
  • 2021-11-13
  • 2021-10-17
  • 2021-11-21
  • 2021-11-21
相关资源
相似解决方案