zoukankan      html  css  js  c++  java
  • .NET访问Oracle的基础知识

    如果你是在大公司工作的话,或者你给大的集团企业、政府、电信等做系统,大家肯能有机会接触到Oracle。虽然大家都说它是企业级的、超大数据量的数据库平台,我还是不怎么喜欢它,它有点过于特立独行,并且网上可以查到的资源太少,官网上的资料也是少点可怜。唉,可能人家太牛了吧。

    那么如何在.NET中访问Oracle数据库呢?也许很多人马上会说:用OracleClient嘛,但是事实上采用System.Data.OracleClient并不能直接访问Oracle,如果你使用的话,系统会提示你:“版本低”“权限不足”等等奇怪的错误。是什么原因?,网上查了半天说是需要安装Oracle客户端,但是我在Oracle的官网上并没有找到所谓的免费oracleClient。关于权限、配置、连接字符串等等问题,足足困扰了我一天,唉真是令人汗颜呀(数据库都不知怎么连)。

    下面将我做的最基础的连接Oracle服务器写下来,以防以后忘记:

    操作系统:Windows server 2003 R2
    数据库:Oracle 8i
    客户端组件:Oracle 9i 客户端 精简版(从网上下载的,不需要修改什么注册表和环境变量)

    连接字符串:
    <add  name="ConnString" connectionString="Data Source= (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.1)(PORT =1521)) ) (CONNECT_DATA = (SID = o8) (SERVER =o8) ));User ID=system;Password=manager" providerName="System.Data.OracleClient" />

    当然,修改tnsnames.ora文件中的内容是同样的效果。


    另外,Oracle 的数据类型和 SQL Server 相比,要“奇怪”一些

    number: 数字类型,一般是 Number(M,N),M是有效数字,N是小数点后的位数(默认0),这个是按十进制说的。
    nclob: “写作文”的字段,存储大量字符(Unicode)时用。
    date: 日期类型,比较接近 SQL Server 的 datetime。

    注:Oracle中没有 int,long等数据类型,也没有 bit 或者 bool 之类的类型,一般是 number(1) 代替的。


     

  • 相关阅读:
    HTTP 错误 403.14
    HTTP 错误 404.3
    HTTP 500
    [转]ESCAPE()、ENCODEURI()、ENCODEURICOMPONENT()区别详解
    此计算机当前已将连接限制
    一个由表结构生成表的存储过程
    微信小程序页面跳转传参
    前端性能优化术语
    get请求和post请求的区别
    从输入url到页面呈现的过程
  • 原文地址:https://www.cnblogs.com/zhaoguan_wang/p/1270316.html
Copyright © 2011-2022 走看看