资讯

精准传达 • 有效沟通

从品牌网站建设到网络营销策划,从策略到执行的一站式服务

oracle怎么连接vs,oracle内连接

如何使用vs2005连接oracle数据库

你既然安装了oracle 10g,而且能正常使用oracle 10g,那么我以在你自己的机器上运行oracle与vs2005开发的网站来回答你。

公司主营业务:成都网站设计、成都做网站、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联公司是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联公司推出延平免费做网站回馈大家。

1、eoms不是数据库,只是数据库实例

你之所以使用pl/sql developer能访问oracle10g,是因为你的机器环境变量在安装时已经被oracle修改了,所以你通过pl/sql developer能访问。

一般oracle的配置文件在:oracle安装上当\NETWORK\ADMIN\tnsnames.ora

你可使用记事本打开这个文件,大概内容如下:

EOMS =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = oracleservnameorip)(PORT = 1521))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = eoms)

)

)

2、vs2005开发连接oracle的程序

首页,从C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727将System.Data.OracleClient.dll拷贝出来,推荐放在开发的项目之下

其次,将System.Data.OracleClient.dll引用进入需要操作数据库的相关项目下去

再次,要需要时引用using System.Data.OracleClient;

最后,关于连接对象的编写示例如下:

private static OracleConnection conn = new OracleConnection("Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=eoms)));User Id=username;Password=userpassword");

public static void Open()

{

if(conn.State==ConnectionState.Closed) conn.Open();

}

public static void Close()

{

if(conn.State== ConnectionState.Open) conn.Close();

}

其它的就不写了,这两步是最重要的,其它的操作与你之前开发过的其它项目中操作数据库是一样的。

VS2008如何远程连接oracle数据库?高分

远程连接字符串应该是做这个DB的人设置好,然后告诉你的.

比如我做了一个库叫TEST,并且这个库的IP是192.168.1.100,

那么我用ORACLE自带的NET CONFIGURATION ASSISTANT建立一个NET SEVERS,一路默认设置,那么连接字符串就是TEST@192.168.1.100,当然,如果我愿意,我可以把连接字符串改成NEWTEST,别人是不会知道的

1、2、3版本是不同的库环境。必须服务器装下3.5的框架,然后iis设置下asp.net版本就可以了。

如果你那边没这类主机,我这边有做的,可百度HI我。

visual怎么连接oracle数据库

宿主机:Win10 + VS2015 + ODP.Net for VS2015虚拟机:Win7 + Oracle 11g + 桥接

配置ODP.Net

首先下载 Oracle Developer Tools for Visual Studio 2015 ,下载此文件需要注册Oracle社区账号并接受相关的协议,此文件提供了以下组件:

Oracle Developer Tools for Visual Studio 12.1.0.2.4

Oracle Data Provider for .NET 4 12.1.0.2.0

Oracle Providers for ASP.NET 4 12.1.0.2.0

下载完成后运行MSI安装程序进行安装,安装完成后会自动注册VS2015的相关插件,重新启动VS2015后将会看到Oracle的相关命令,比如SQL *PLUS支持等。同时添加数据库时也能看到相应的选项。

ODP.Net支持所有Oracle版本,因此下载时只需要注意VS的版本即可。

配置tnsnames.ora

ODP.Net默认使用安装目录下的 tnsnames.ora ,若安装目录在Program Files下,可能会遇到无权限等问题,此时使用管理员权限打开命令行,切换到对应目录并使用notepad编辑。

复制服务器端的tnsnames.ora文件内容,或者自己手动编辑,格式如下:

数据源别名 =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = 主机名或IP)(PORT = 端口号))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = 数据库服务名)

)

)

添加数据库

打开 工具 - 连接到数据库 ,数据源修改为 Oracle数据库 下的 ODP.NET,托管驱动程序 ,然后点击 确定 ,打开 添加连接 窗口。

填写用户名,密码并选择数据源,然后测试连接,成功的话说明已经连通,点击确定即可。

使用虚拟机搭建数据库的额外Tips

根据某网友分析,Oracle的监听器在通过1521端口连接后,会开启另外一个新的随机端口进行数据通讯,因此使用NAT方式虚拟网卡可能会导致连接失败。这种情况下,请使用桥接方式虚拟网卡,并在 net manager 中将 loaclhost 修改为虚拟机当前的IP。重启监听服务后,再试。

连接数据库并使用

连接数据库

Dim oradb As String = "User ID=system;Password=123456;Data Source=lol"

Dim conn As New OracleConnection(oradb)

conn.Open()

Dim sql As String = "create table xxx"

Dim sqlCom As New OracleCommand

sqlCom.CommandText = sql

sqlCom.Connection = conn

sqlCom.ExecuteNonQuery()

查询数据

成功配置数据源之后,只需要向界面上拖动 DataGridView ,并进行相关配置,选择自己需要的表即可。

插入图片的正确姿势

图片作为二进制数据无法直接拼凑出SQL命令,我们需要使用 OracleCommand 自带的 Parameters 功能。在SQL命令中用 :photo 来代表一个参量,然后使用

sqlCom.Parameters.Add("photo", OracleDbType.Blob, imgData.Length)

来分别指定这个参量的类型和所占空间大小

最后使用

sqlCom.Parameters(0).Value = imgData

来指定这个参量的值。

整个插入图片过程的代码如下:

Dim conn As New OracleConnection(oradb)

Dim imgData(0) As Byte

Dim ms As New System.IO.MemoryStream

PictureBox1.BackgroundImage.Save(ms, PictureBox1.BackgroundImage.RawFormat)

ReDim imgData(ms.Length - 1)

ms.Read(imgData, 0, ms.Length)

ms.Close()

conn.Open()

Dim sql As String = "insert into hero values" "(" TextBox1.Text ":photo" ")"

Dim sqlCom As New OracleCommand

sqlCom.CommandText = sql

sqlCom.Connection = conn

sqlCom.Parameters.Add("photo", OracleDbType.Blob, imgData.Length)

sqlCom.Parameters(0).Value = imgData

sqlCom.ExecuteNonQuery()

常见错误

column not allowed here

数据类型不符,检查对应项目数据类型是否正确。

missing comma

命令格式不对,检查一下自己的SQL命令是否有错误,特别是在有字符串的时候,需要使用 "" 来代表一个字符串中的 " 。

identifier is too long

标识符过长(不得超过30字符),不是非常明白原因,不过我取消掉insert命令中指定位置的部分之后,这个错误消失了。

missing INTO keyword

缺少into关键字(手滑打成了inte),检查一下自己的SQL命令是否有错误。

vs中怎样连接服务器上的oracle数据库

本地机器tnsnames.ora

ORCL =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = fuqiang)(PORT = 1521))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = orcl)

)

)

SERVICEORCL=

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = 服务器IP)(PORT = 1521))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = orcl)

)

)

服务器tnsnames.ora

SERVICEORCL =

(DESCRIPTION =

(ADDRESS_LIST =

(ADDRESS = (PROTOCOL = TCP)(HOST = 服务器名称)(PORT = 1521))

)

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = orcl)

)

)

VS中连接代码:

C# code

OracleConnection oracleConnection = new OracleConnection("Data Source=;User ID=system;Password=manager;Unicode=True");

这样写连接字符串,可以连接到本地orcl这个实例,没有问题。但是想连接到服务器上的orcl实例,该如何写连接字符串,其它地方都一样吧,只是Data Source要怎么写?

------回答---------

------其他回答(90分)---------

本地用Net Configuration Assistant 建个net服务,连接倒服务器,net服务名为ORCL_SVR,确保连接正确,然后Data Source=ORCL_SVR即可。

------其他回答(5分)---------

把你QQ告诉我,我连过去给你看一下。

------其他回答(5分)---------

引用 9 楼 sorry0481 的回复:

又搞了一会,发现问题了,可是不知道怎么解决,服务器使用Net Configuration Assistant 测试连接自己,没有问题。客户端全用Net Configuration Assistant 测试连接服务器也没有问题。可见已经配置好了,但是在运行Microsoft Visual Studio 2008代码时,连接字符串报错:“ORA-12154: TNS: 无法解析指定的连接标识符”,看了下断点,错误是这个:

ServerVersion “((System.Data.Common.DbConnection)(oracleConnection)).ServerVersion”引发了“System.InvalidOperationException”类型的异常 string {System.InvalidOperationException}

分析了下,应该是版本的问题,可是我只安了一个11G,没有安其它版本,结果想到,是不是安了Oracle Developer Tools for Visual Studio .NET这个引起的??哪位仁兄碰到过类似问题??该怎么解决???

你确定DB连上了?tnsnames 跟你的config档设定是否一致?我也遇到过,血的教训啊。。。

------回答---------

------其他回答(90分)---------

本地用Net Configuration Assistant 建个net服务,连接倒服务器,net服务名为ORCL_SVR,确保连接正确,然后Data Source=ORCL_SVR即可。

------其他回答(5分)---------

把你QQ告诉我,我连过去给你看一下。

------其他回答(5分)---------

引用 9 楼 sorry0481 的回复:

又搞了一会,发现问题了,可是不知道怎么解决,服务器使用Net Configuration Assistant 测试连接自己,没有问题。客户端全用Net Configuration Assistant 测试连接服务器也没有问题。可见已经配置好了,但是在运行Microsoft Visual Studio 2008代码时,连接字符串报错:“ORA-12154: TNS: 无法解析指定的连接标识符”,看了下断点,错误是这个:

ServerVersion “((System.Data.Common.DbConnection)(oracleConnection)).ServerVersion”引发了“System.InvalidOperationException”类型的异常 string {System.InvalidOperationException}

分析了下,应该是版本的问题,可是我只安了一个11G,没有安其它版本,结果想到,是不是安了Oracle Developer Tools for Visual Studio .NET这个引起的??哪位仁兄碰到过类似问题??该怎么解决???

你确定DB连上了?tnsnames 跟你的config档设定是否一致?我也遇到过,血的教训啊

vs2022如何连接oracle

vs2022如何连接oracle的解决方法如下:

本机环境:64位win7,安装了64位的oracle桌面类

服务器环境:64位windows server 2008,64位oracle服务器端

问题:本机用sql developer连数据库没有问题,winform程序连接也没有问题,但是web程序连接oracle失败,报错:“尝试加载 Oracle 客户端库时引发 BadImageFormatException。如果在安装 32 位 Oracle 客户端组件的情况下以 64 位模式运行,将出现此问题。“

解决过程:在网上查找原因,说是因为VS的webDe.webServer.exe 是一个32位的进程,所以连不上64位数据库,解决方法提了很多,包括把项目的属性里的生成选项里的目标平台:改为x86,web项里的服务器改成iis不使用vs自带的web deleloper ment 服务,修改path环境变量等,但是都没管用。

最终的解决办法:安装32位oracle客户端(win32_11gR2_client.zip),但是这样一来winform程序又连不上数据库了,得把winform程序的项目属性里生成选项的目标平台改成x86,这样就都行了。


当前文章:oracle怎么连接vs,oracle内连接
分享网址:http://cdkjz.cn/article/heoppj.html
多年建站经验

多一份参考,总有益处

联系快上网,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

业务热线:400-028-6601 / 大客户专线   成都:13518219792   座机:028-86922220