一个综合ADO,DELPHI,SQL SERVER的问题,急切求解

zhaozhao 2001-11-16 02:32:25
program Project1;

uses
Forms,
Unit1 in 'Unit1.pas' {Form1},
Unit2 in 'Unit2.pas' {DataModule2: TDataModule};

{$R *.res}

begin
//datamodule2:=tdatamodule2.Create(application);
//或者APPLICATION.CREATEFORM(TDATAMODULE2,DATAMODULE2);
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.CreateForm(TDataModule2, DataModule2);
Application.Run;
end.



一个Project,需要连接到远程SQL SERVER数据库,使用ADO,建立有DATAMODULE,包含ADOCONNECTION和ADOTABLE,
想法是在程序中APPLICATION初始化之前,先连接到数据库读取数据,以验证身份.
使用上面的代码,可以正常执行,不过如果去掉
Application.CreateForm(TDataModule2, DataModule2);
这一行,而使用被注释掉的语句,则出现错误,提示为:

应用程序发生异常未知的软件异常(0x0eedfade),位置为0x77e6f142.

Exception EOleSysError in module Project1.exe at 00066F89.
标记没有引用存储.

然后程序退出.

这是什么原因造成的?我试了一下,如果DATAMODULE里使用BDE呢则正常,问题可能出在ADO上,
各位同行是否也遇到过同样的问题,如何解决的?
或者要实现上面代码中的意图根本就不可能?

我急切的需要答案.

第一位解决问题的高手加200分(我总共只有300分噢!)
...全文
94 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
chorls 2002-01-01
  • 打赏
  • 举报
回复
结果如何呀,哥们。
我等着试一下子呢?!
zhaozhao 2001-11-16
  • 打赏
  • 举报
回复
你的DataMainModule里是否用了ADO组件呢?
goalitaly 2001-11-16
  • 打赏
  • 举报
回复
program YhshAdo;

{$R *.RES}
begin
Application.CreateForm(TDataMainModule, DataMainModule);
Application.Initialize;
Application.CreateForm(TMainForm, MainForm);
Application.Run;
end.
goalitaly 2001-11-16
  • 打赏
  • 举报
回复
我可以阿
goalitaly 2001-11-16
  • 打赏
  • 举报
回复
??
goalitaly 2001-11-16
  • 打赏
  • 举报
回复
unit DataSeverModule;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Db, ADODB;

type
TDataMainModule = class(TDataModule)
ADOSeverConnection: TADOConnection;
SeverADOTable: TADOTable;
SeverADOQuery: TADOQuery;
procedure ADOSeverConnectionLogin(Sender: TObject; Username,
Password: String);
procedure DataModuleCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
DataMainModule: TDataMainModule;

implementation

{$R *.DFM}

procedure TDataMainModule.ADOSeverConnectionLogin(Sender: TObject; Username,
Password: String);
begin


// ADOSeverConnection.LoginPrompt:=false;
// ADOSeverConnection.op
//ADOSeverConnection.Username:='manager';
//ADOSeverConnection.Password:='manager';
// ADOSeverConnection.Connected:=true;
end;


procedure TDataMainModule.DataModuleCreate(Sender: TObject);
begin

SeverAdoTable.Connection:=AdoSeverConnection;
end;

end.
goalitaly 2001-11-16
  • 打赏
  • 举报
回复
是啊

34,873

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧