请用过ODAC开发Oracle数据库应用程序的朋友谈谈感受和用法!参与有分啊!!! 本人现在正在尝试用ODAC做一个Oracle应用程序,请有过次经历的朋友说说你们的做法,谈谈ODAC的优劣之处吧。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 还有为什么我把OraSession.connected先设为true,然后再断开,我的OraQuery组件还是能访问到数据啊??好像OraSession.connected一设为true,就一直保持连接一样。这是为什么? Oracle数据库不好用。这是最大的感觉。我在三层(MTS)中应用到。MTS是微软的,可能和Oracle有些抵触。最终调好了但很难用。OraSession.connected的问题我没遇到。 把你的源代码发出来,你的这个问题不应该出现,Oraclesession.connected:=false;就是断开连接。 procedure TForm1.Button1Click(Sender: TObject);//Button1用于控制数据库连接begin with OraSession1 do begin server:=edit1.Text;//输入"ip:1521:SID" username:=edit2.Text;//输入用户名 password:=edit3.Text;//输入密码 end; try OraSession1.connected:=true ; label4.Caption:='数据库已经连接'; except showmessage('数据库连接错误'); end;end;procedure TForm1.Button2Click(Sender: TObject);//Button2用于断开数据库连接begin OraSession1.Connected:=false;end;procedure TForm1.Button3Click(Sender: TObject);//Button3执行查询begin OraQuery1.Close; OraQuery1.SQL.Clear; OraQuery1.SQL.Add('select * from aircraft');//aircraft是一个表名 OraQuery1.Prepare; OraQuery1.Open;end; 以下是我的操作步骤: 1.先用Button1连接数据库没问题,可以连接成功; 2.然后用Button3执行查询,可以在DBGrid里看到查询结果; 3.用Button2断开数据库连接,DBGrid里的结果消失; 4.再用Button3执行查询,又可以在DBGrid里看到查询结果,可是此时我的数据库是断开的阿,怎么OraQuery1还能查询到数据呢???( Langhong(狼.红) )你可以看看啊 是这样的,ODAC的Query会判断当前的Session是否连接,如果没有连接会自动调用OraSession进行自动连接,所以你的Button3程序可以查询到数据。 Button3的程序在执行之前可以先判断OraSession是否连接,如果没有连接就不要执行Open操作了: if not OraSession.Connected then exit; 三层架构主从表单第一次保存成功,第二次再存盘失败 正则表达式如何提取不确定组数的所有组数据?请进看解释: 又升级了,散200分 ---Access的简单问题!!急!!!!--- 简单的问题!急!!! 帮我看段代码和wise打包问题 身份证编码 如何用Delphi工具---Image Editor 将已存在的位图文件编辑成资源文件? 散分!今天是我父亲的生日,做儿子的不能在身边敬老,在这里给您跪下啦! 怎么用代码实现与SOL SERVER 的ODBC 连接 (送分题) 关于RadioGroup1和edit的问题,救呀! 关于VIC数据感应组件2个问题
我在三层(MTS)中应用到。MTS是微软的,可能和Oracle有些抵触。最终调好了但很难用。
OraSession.connected的问题我没遇到。
Oraclesession.connected:=false;
就是断开连接。
begin
with OraSession1 do
begin
server:=edit1.Text;//输入"ip:1521:SID"
username:=edit2.Text;//输入用户名
password:=edit3.Text;//输入密码
end;
try
OraSession1.connected:=true ;
label4.Caption:='数据库已经连接';
except
showmessage('数据库连接错误');
end;
end;procedure TForm1.Button2Click(Sender: TObject);//Button2用于断开数据库连接
begin
OraSession1.Connected:=false;
end;procedure TForm1.Button3Click(Sender: TObject);//Button3执行查询
begin
OraQuery1.Close;
OraQuery1.SQL.Clear;
OraQuery1.SQL.Add('select * from aircraft');//aircraft是一个表名
OraQuery1.Prepare;
OraQuery1.Open;
end;
以下是我的操作步骤:
1.先用Button1连接数据库没问题,可以连接成功;
2.然后用Button3执行查询,可以在DBGrid里看到查询结果;
3.用Button2断开数据库连接,DBGrid里的结果消失;
4.再用Button3执行查询,又可以在DBGrid里看到查询结果,可是此时我的数据库是断开的阿,怎么OraQuery1还能查询到数据呢???
( Langhong(狼.红) )你可以看看啊
if not OraSession.Connected then exit;