query的简单问题(100分)

  • 主题发起人 主题发起人 ayay
  • 开始时间 开始时间
A

ayay

Unregistered / Unconfirmed
GUEST, unregistred user!
用query连接oracle数据库时,把query的requestlive属性设为真,希望能修
改表但每次程序运行时总是报错表或视图不存在。
这张表在table下是可修改的。
1:为什么回有上述问题
2:query什么时候应该打开,什么时候应该关上,(我的理解是要对表进行操
做如写,查就要关闭,要读表就应打开,但我总觉的不太准确)
 
2.用就开不用就关
 
什么呀!听不懂,如要查询时也是用表,但为什么要关闭?
 
又是BDE关于Orcale接口的BUG,??!!..
 
ayay,
你说的查询是
给参数吧?
open了参数才起作用。
  
 
哎!我只是这么一说,我指的查询是带参数和不带参数都可的。
因为我用query开关从来都是凭以前用过的那些,没有系统的
知识,所以我希望大家能从原理上讲讲!
 
没有这么奇怪的问题吧?有没有写错SQL语句啊?
 
如过requestlive设为假则每问题,且我取出canmodify来看,发现是假,但我又
不知如何把它变为可写
 
to adminis
why don't you say anything?
 
怎么回是?没人理我!!!
我把Orcale的库改为别的库程序的代码和其他属性都没变就没有问题,是不是用
Orcale有什么特别的要求?
 
把SQL语句写出来看看。
 
1.把你的表名用大寫字母書寫.
2.我覺得不要老是去開呀,關的.因為這樣會網路上的數據量太大.
 
1:我的程序在requestlive设为假则能用,好象和表的大小写没有关系
2:我就是不想老开关所以要问个明白什么时候开什么时候关

我用了database。和它的配制有关吗?
 
呵呵,表名要用大写,不然就会出错的,
我刚用过ORACLE8也碰上过。。。。:)
 
在程序中,sql语句中的表明要用大写,
query用时开,不用时关掉
 
我也问过相同的问题,但是没有得到满意的答案,和你的差不多!!!!
 
其实,答案就是:表名要大写。
想通了,道理也很简单:当requestlive设为真时,Delphi会对你的SQL语句进行语法分析,
她没有把你的表名自动转换为大写,而从ORACLE得到的表名却是大写的,所以就报错;当
requestlive设为假时,Delphi没有必要分析你的语法,就直接传给Oracle,而Oracle会
自动把你的表名转换为大写。
不信?你看,报告的错误信息不是Oracle风格吧?因为Delphi根本就没有把SQL发过去就....
 
龙丹所说有道理,但主要的问题是,用query对数据库进行修改有一定的限制,必须符全一大
堆的要求,还是不用它对数据表进行修改为好.因为我现在已是用delphi and oracle 进行编程,
遇到一样的问题
 
后退
顶部