你安装oralce的客户端了吗?没安装的话,odbc是配不通的,而且安装后要把建立一个可以用的dsn.data source要用你做好的dsn名称.
解决方案 »
- 这段sql语句块能直接在pl/sql中执行吗
- 还是sql查询问题
- linux 下向oracle数据库中添加汉字出现乱码
- 如果是本机连本机是不是不需要TNS也可以?
- 有没有人感觉自己公司的开发还算规范,认为还是可以拿出来说的?
- 求OU、ORG、SOB三者之间关系及如何设置
- 抓狂了,请问各位,为什么说存储过程可移植性差呢??有没有强人能给我举个简单点的例子说明关于Tsql和plsql存储不一样的地方?
- pro*c往一个表里面插入数据,为什么越来越慢!!!!
- 这段oracle的存储函数代码错在哪?
- 急,在oracle数据库写一个生成五个字母或数字的不重复的字符串的存储过程
- 我怀疑是不是见鬼了,怎么会出现这样的问题呢?
- oracle Intelligent Agent 在linux上启动不了
就是用了ODBC连以后,存储过程不能执行了,为什么,?代码没有改呀,
sqlstr="insert into WEBINFORTABLE(id,title,content,x_date,flag)"
sqlstr=sqlstr&" values(id.nextval,'"&title&"',empty_clob(),to_date('"&now&"','yyyy-mm-dd HH24:MI:SS'),'"&dflag&"')"
cn.Execute sqlstr
'查找信息编号
Set rs=Server.CreateObject("ADODB.RecordSet")
sqlstr="select max(id) from WEBINFORTABLE"
rs.open sqlstr,cn,3,1
id=rs(0)
rs.close
'利用存取过程插入内容
set comm1=SERVER.CREATEOBJECT("ADODB.COMMAND")
Set comm1.ACTIVECONNECTION=cn
comm1.CommandType=4
comm1.commandtext="updateclob"
set para = comm1.Parameters
'Add Input Parameters
para.Append comm1.CreateParameter("table_name",202,1,30,"webinfortable")
para.Append comm1.CreateParameter("field_id",202,1,30,"id")
para.Append comm1.CreateParameter("field_name",202,1,30,"content")
para.Append comm1.CreateParameter("v_id",3,1,4,id)
para.Append comm1.CreateParameter("v_pos",3,1,4,0)
para.Append comm1.CreateParameter("v_clob",202,1,32766,request.form("content"))
'Add Output Parameters
para.Append comm1.CreateParameter("Result",3,2,4)
comm1.execute
if comm1("Result")<>1 then
response.write "远程过程调用失败,信息添加失败!"
response.end
end if
大家帮我看看吧,多谢了
Set comm1.ACTIVECONNECTION=cn
comm1.CommandType=1
comm1.commandtext="{call updateclob(?,?,?,?,?,?)}"
set para = comm1.Parameters
'Add Input Parameters
para.Append comm1.CreateParameter("table_name",202,1,30,"webinfortable")
para.Append comm1.CreateParameter("field_id",202,1,30,"id")
para.Append comm1.CreateParameter("field_name",202,1,30,"content")
para.Append comm1.CreateParameter("v_id",3,1,4,id)
para.Append comm1.CreateParameter("v_pos",3,1,4,0)
para.Append comm1.CreateParameter("v_clob",202,1,32766,request.form("content"))
'Add Output Parameters
--para.Append comm1.CreateParameter("Result",3,2,4) --此句有问题,记录集不能这样增加参数的.
--comm1.execute --返回记录不能这样执行
set rs=cm1.Execute
if rs("Result") then
response.write "远程过程调用失败,信息添加失败!"
response.end
end if
rs.close()
我把参数类型改成用advachar表示就可以了,不用数字表示,奇怪,为什么?