ASP中执行set rs=cn.Execute SQL为什么出错
编号:QA003347
建立日期: 2000年9月24日 最后修改日期:2000年9月27日
所属类别:
Q
liudanhong:
操作系统:windows 2000 server
编程工具:ADO,oracle,asp
问题:我在Windows 2000 server上,开发web数据库程序,运用ADO,VBscript编程,代码如下:
... ...
set cn=Server.CreateObject("ADODB.Connection")
cn.Open "DNS=asp;UID=asp;PWD=casnet;Database=OracleMyDatabase"
SQL="select * from User_Info_Tbl where User_ID=1"
set rs=cn.Execute SQL
... ...
如果不执行最后一句,则没有问题,如果加上最后一句,则阅览器显示发生内部错误,请各位专家给予解决。不胜感谢!
其中Database 为我在Oracle中建的数据库。
水平: 中级
A回答:
直接执行set rs=cn.Execute SQL时,rs的CursorType、LockType、CursorLocation都有默认值,改用rs.open语句,并设置rs的属性值试试。
kyspace的意见:
或许应在表名前加上用户名来标识一个表。
cobe的意见:
据我所知 Connection的有些操作不能返回结果集,所以不要这样使用,改为cn.Open "DNS=asp;UID=asp;PWD=casnet;Database=OracleMyDatabase"
SQL="select * from User_Info_Tbl where User_ID=1"
rs.Open SQL,CN 就没问题了
但定义的时候,需要
Set rs as New ADODB.Recordset
此问题由曹兆勇回答。
| |
|
|
| |
|
|