ado连接oracle数据库
Ⅰ 用ADO连接ORACLE数据库,表已经存在,为什么会有这个错误呢
都告诉你了,表或者视图不存在,你确定连接数据库的用户对这个表/视图有查询的权限吗?
实在不行,先用plsqldeveloper或toad测试一下你的
sql语句
先。
Ⅱ 怎么样用ADO连接广域网上的Oracle数据库
1、把开excel,点击工具-->宏-->录制新宏 2、点击 数据-->导入外部数据-->新建数据库查询,然后根据向导选择oracle驱动,最后完成向导 3、点停止宏,再点 工具-->宏-->宏... 在对话框里选择刚才录制的宏,点编辑, 这样就可以看到连接字符串了。
Ⅲ 如何里用ADO技术访问Oracle数据库 VBA语言操作
Dim oConn,strConn
Set oConn=Server.CreateObject(“ADODB.Connection”)
StrConn= "Provider=OraOLEDB.Oracle;" & _
"Data Source=MyOracleDB;" & _
"User=myUsername& _
"Password=myPassword;"
oConn.Open strConn
其中Data Source就是你配置的连接oracle的实例名
Ⅳ 如何通过ADO.NET访问Oracle数据库
1.
添加System.Data.OracleClient引用
2.
连接字符串
Data
Source=orcl;Initial
Catalog=OracleDB;User
ID=scott;password=tiger
3.下面的操作和SQL没什么太大的区别,就是把所有的"SQL"换成"Oracle"
就OK了
Ⅳ 怎样在VC下用ADO连接ORACLE数据库
首先,要用#import语句来引用支持ADO的组件类型库(*.tlb),其中类型库可以作为可执行程序(DLL、EXE等)的一部分被定位在其自身程序中的附属资源里,如:被定位在msado15.dll的附属资源中,只需要直接用#import引用它既可。可以直接在Stdafx.h文件中加入下面语句来实现:
#import "c:\program files\common files\system\ado\msado15.dll" \
no_namespace \
rename ("EOF", "adoEOF")
其中路径名可以根据自己系统安装的ADO支持文件的路径来自行设定。当编译器遇到#import语句时,它会为引用组件类型库中的接口生成包装类,#import语句实际上相当于执行了API涵数LoadTypeLib()。#import语句会在工程可执行程序输出目录中产生两个文件,分别为*.tlh(类型库头文件)及*.tli(类型库实现文件),它们分别为每一个接口产生智能指针,并为各种接口方法、枚举类型,CLSID等进行声明,创建一系列包装方法。语句no_namespace说明ADO对象不使用命名空间,rename ("EOF", "adoEOF")说明将ADO中结束标志EOF改为adoEOF,以避免和其它库中命名相冲突。
其次,在程序初始过程中需要初始化组件,一般可以用CoInitialize(NULL);来实现,这种方法在结束时要关闭初始化的COM,可以用下面语句CoUnInitialize();来实现。在MFC中还可以采用另一种方法来实现初始化COM,这种方法只需要一条语句便可以自动为我们实现初始化COM和结束时关闭COM的操作,语句如下所示: AfxOleInit();
接着,就可以直接使用ADO的操作了。我们经常使用的只是前面用#import语句引用类型库时,生成的包装类.tlh中声明的智能指针中的三个,它们分别是_ConnectionPtr、_RecordsetPtr和_CommandPtr。下面分别对它们的使用方法进行介绍:
1、_ConnectionPtr智能指针,通常用于打开、关闭一个库连接或用它的Execute方法来执行一个不返回结果的命令语句(用法和_CommandPtr中的Execute方法类似)。
——打开一个库连接。先创建一个实例指针,再用Open打开一个库连接,它将返回一个IUnknown的自动化接口指针。代码如下所示:
_ConnectionPtr m_pConnection;
// 初始化COM,创建ADO连接等操作
AfxOleInit();
m_pConnection.CreateInstance(__uuidof(Connection));
// 在ADO操作中建议语句中要常用try...catch()来捕获错误信息,
// 因为它有时会经常出现一些意想不到的错误。jingzhou xu
try
{
// 打开本地Access库Demo.mdb
m_pConnection->Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Demo.mdb","","",adModeUnknown);
}
catch(_com_error e)
{
AfxMessageBox("数据库连接失败,确认数据库Demo.mdb是否在当前路径下!");
return FALSE;
}
——关闭一个库连接。如果连接状态有效,则用Close方法关闭它并赋于它空值。代码如下所示:
if(m_pConnection->State)
m_pConnection->Close();
m_pConnection= NULL;
Ⅵ ado连接oracle数据库报异常
这个是监听没有配置或者没有启动报错
1.IP错误。 在设置URL时错误,例如:jdbc:oracle:thin:@192.168.0.36:1521:sharp 数据库服务器不正确:ping 服务器ip是否正确。不正确,将URL更改为正确 端口号错误:一般不会错误。 进行一下操作:在DOS上键入sqlplus,检查oracle是否开启 一却正常,执行下面第2步。
2.防火墙 如果机器上安装有放火墙,可能是服务器端口号屏蔽而造成的。关闭防火墙后,尝试重新连接。 仍然不行,执行第3步。
3.数据库监听未启动 修改PC上注册表中的ImagePath值。 我下面以现在主流的数据库ORACLE为例 重新手动启动数据库监听: 1:开始 → 运行→ 输入CMD→ 进入DOS命令提示界面 d:>lsnrctl LSNRCTL> status 或者 LSNRCTL> start
Ⅶ ADO连接Oracle数据库失败,求教
登陆oracle数据库
1、是否开放了远程连接;
2、连接格式是否正常;
这是我以前用ado封装的类,可以操作access,mysql,mssql,oracle,经过测试都可以操作;
如果还不行的话那就传下工程上来吧
Ⅷ delphi7.0的adoconnection怎么连接oracle数据
不知道你连接的是SQL Server 还是Access?在连接不同的数据库时会有一点差别.
连接到SQL Server:
以下是设置:(以前回答别人的时候写的,这里修改了下)
1,新建Project。
2,在FORM中放入ADOConnection控件。
3,双击ADOConnection控件,然后点击Build...按钮,在“提供者”页中选择
“Microsoft OLE DB Provider For SQL Server ”,然后点击“下一步”按钮,
在“连接”页中选择要连接的SQL数据库的路径和数据库的文件名.如果数据库没
有密码,那就可以了,如果有密码,在下面的两个编辑框中输入用户名和密码.
添入
用户名和密码后,点击“测试连接”按钮,出现“测试连接成功”的对话框。
5.把 ADOConnection控件的LoginPromtp设为false.
Ⅸ 用ADO访问ORACLE数据库的连接字符串怎样写
在利用ado连接数据库之前,需要做一些准备
1.用#import指令引入ADO类型库
我们在stdafx.h中加入如下语句:
#import "c:program filescommon filessystemadomsado15.dll" no_namespace rename("EOF","adoEOF") 。
这一语句有何作用呢?其最终作用同我们熟悉的#i nclude类似,编译的时候系统会为我们生成msado15.tlh,ado15.tli两个C++头文件来定义ADO库。
几点说明:
(1) 您的环境中msado15.dll不一定在这个目录下,请按实际情况修改
(2) 在编译的时候肯能会出现如下警告,对此微软在MSDN中作了说明,并建议我们不要理会这个警告。msado15.tlh(405) : warning C4146: unary minus operator applied to unsigned type, result still unsigned
2、初始化OLE/COM库环境
必须注意的是,ADO库是一组COM动态库,这意味应用程序在调用ADO前,必须初始化OLE/COM库环境。在MFC应用程序里,一个比较好的方法是在应用程序主类的InitInstance成员函数里初始化OLE/COM库环境。
BOOL CMyAdoTestApp::InitInstance()
{
if(!AfxOleInit())//这就是初始化COM库
{
AfxMessageBox(“OLE初始化出错!”);
return FALSE;
}
}
3.ADO库包含三个基本接口:_ConnectionPtr接口、_CommandPtr接口和_RecordsetPtr接口。与数据库的连接就是用_ConnectionPtr接口,它的连接字符串可以是自己直接写,也可以指向一个ODBC DSN。以下的例子都测试通过,顺便写了SQL Server的例子。
BOOL CTestconDlg::ConnectDatabase()
{
CString m_server,m_data,m_uid,m_pwd;
m_server="192.168.0.24";//服务器ip或名称
m_data="crmdb";//ODBC数据源
m_uid="njcrm";//用户名
m_pwd="crmdbo";//密码
BOOL retFt=false;
HRESULT hr;
try
{
hr = m_pConnection.CreateInstance("ADODB.Connection");///创建Connection对象
if(SUCCEEDED(hr))
{
_bstr_t connStr;
m_pConnection->CursorLocation=adUseClient;
//begin---------------Oracle ODBC 配置数据源-------------------------------------
//控制面板->管理工具->数据源(ODBC)->系统DNS->添加->Microsoft ODBC for Oracle->完成->配置……
// connStr="DSN="+m_data;
// m_pConnection->Open(_bstr_t(connStr),(_bstr_t)m_uid,(_bstr_t)m_pwd,adConnectUnspecified);
//end---------------Oracle ODBC 配置数据源---------------------------------------
//begin---------------Oracle 标准安全级别---------------------------------------
// connStr="Provider=OraOLEDB.Oracle;User ID=njcrm;Password=crmdbo;Data Source=192.168.0.24;";
// m_pConnection->Open(_bstr_t(connStr),(_bstr_t)_T(""),(_bstr_t)_T(""),adConnectUnspecified);
//end---------------Oracle 标准安全级别---------------------------------------
//begin---------------Oracle 微软格式----------------------------------