S
SeaSky
Unregistered / Unconfirmed
GUEST, unregistred user!
我今天收到cindy_309的一封Email ,提出如下问题, 希望各位大虾帮忙.
我觉得好象是线程中Session冲突, 好象每个Datamodle都应该建立一个
TSession , 将其Tsession.auto??? (记不得了) 置为 True , 并将
Database和Query的Session和那个Tsession 相连.
但具体还有什么问题, 就没有研究了 (
Email 如下:
我用delphi开发了一个多线程的数据库程序(使用threadobject),
在一个datamodule内放置了三个database和两个query构件,两个query
分别在两个线程内执行异构查询,将从oracle和sql server中select出的
数据insert一个access表中。执行完全正确。
现在我想将它改写成一个ole automation server用于ASP服务器端。
我的步骤如下:
1创建ActiveX lIBRARY
2 创建Automation Object
3 定义无参方法DbInsert
4 uses 原应用中的datamodule和thread单元
5 实现DbInsert方法如下:
procedure TMyDbInsert.DbInsert;
begin
with datamodule1 do
begin
sql_insert.create(query1);
oracle_insert.create(query2);
end;
end;
其中sql_insert和oracle_insert分别为执行异构查询的两个线程。
在Web执行目录下注册后,在ASP中执行
<%
set DbObj = server.CreateObject("project_db.MyDbInsert")
DbObj.DbInsert
%>
提示:错误'8000ffff'
行10
行10 为执行DbInsert方法行。将该行注释掉后,生成该对象实例没有问题。
因此我想问题可能出在该方法的实现上。我在原来的应用程序中就是使用这
两条语句的(不过是在按钮单击事件中)。还是自动化服务器方法的实现有所不同?
请大虾指教。
(Email 结束)
我觉得好象是线程中Session冲突, 好象每个Datamodle都应该建立一个
TSession , 将其Tsession.auto??? (记不得了) 置为 True , 并将
Database和Query的Session和那个Tsession 相连.
但具体还有什么问题, 就没有研究了 (
Email 如下:
我用delphi开发了一个多线程的数据库程序(使用threadobject),
在一个datamodule内放置了三个database和两个query构件,两个query
分别在两个线程内执行异构查询,将从oracle和sql server中select出的
数据insert一个access表中。执行完全正确。
现在我想将它改写成一个ole automation server用于ASP服务器端。
我的步骤如下:
1创建ActiveX lIBRARY
2 创建Automation Object
3 定义无参方法DbInsert
4 uses 原应用中的datamodule和thread单元
5 实现DbInsert方法如下:
procedure TMyDbInsert.DbInsert;
begin
with datamodule1 do
begin
sql_insert.create(query1);
oracle_insert.create(query2);
end;
end;
其中sql_insert和oracle_insert分别为执行异构查询的两个线程。
在Web执行目录下注册后,在ASP中执行
<%
set DbObj = server.CreateObject("project_db.MyDbInsert")
DbObj.DbInsert
%>
提示:错误'8000ffff'
行10
行10 为执行DbInsert方法行。将该行注释掉后,生成该对象实例没有问题。
因此我想问题可能出在该方法的实现上。我在原来的应用程序中就是使用这
两条语句的(不过是在按钮单击事件中)。还是自动化服务器方法的实现有所不同?
请大虾指教。
(Email 结束)