熟sql-dmo编程的请进!已研究了好几天了,大家进来讨论,讨论(100分)

  • 主题发起人 主题发起人 王公子
  • 开始时间 开始时间

王公子

Unregistered / Unconfirmed
GUEST, unregistred user!
procedure TBackupSetFrm.BitBtn6Click(Sender: TObject);
var
DMO,ScriptDB,TB: OLEvariant;
flag:SQLDMO_SCRIPT_TYPE;
ScriptStr:string;
begin
//SQLDMO_SCRIPT_TYPE
Dmo:= CreateOleObject('SQLDMO.SQLServer');
ScriptDB:= CreateOleObject('SQLDMO.DataBase');
tB:= CreateOleObject('SQLDMO.table');
Dmo.connect('sqlnhua','sa','WXM97061197');
flag:=SQLDMOScript_Default; //'c:/test.sql';
scriptdb.name:='act'; //数据库名
tb.name:='area'; //表名
scriptstr:=tb.script(flag);//生成SQL脚本语句,这里老是不行,我已
DMO:=NULL; //经搞了一个上午,还是不行
end;
 
或者谁有相关资料(在DELPHI的),也可,大洋不是问题
 
失望之极!这是第三次没有人回答我的问题!也是我问的所有问题!

失望呀!
看来还得自动动手KILL掉
哎..................................
 
你这个问题好像就是不对,你的dmo,db,tb彼此都没有关联起来
试试这样:
procedure TForm1.Button1Click(Sender: TObject);
var
DMO,DB,TB: OLEvariant;
Str:string;
begin
Dmo:= CreateOleObject('SQLDMO.SQLServer');
DB:= CreateOleObject('SQLDMO.DataBase');
tB:= CreateOleObject('SQLDMO.table');
Dmo.connect('who','sa','');
db:=dmo.databases.item('pubs');
tb:=db.tables.item('jobs');
str:=tb.script();
showmessage(str);
end;
在w2000+D6+SQL2000没问题
 
to mazhayang:
终于有人知道了,通过了,我也知道是些问题,可不知
如何联系上,请问有否相关资料,可否MAIL给我(不要
VB的),谢谢!
不过语法有点怪怪的!
另请问一下,能否通过Dmo导出到excel中去!
再次感谢谢!(不过请放心,这些大洋全归你!)
 
我也么没具体做过这些东西,老实讲,上面的语法全是参照vb调出的
如果你用过vb,你会发现用vb来了解这些东西的属性方法是非常方便的,
例如:Dmo.connect('who','sa','');
db:=dmo.databases.item('pubs');
tb:=db.tables.item('jobs');
str:=tb.script();
这段代码和vb的语法完全相同,这也许就是你觉得怪怪的原因把 ,
你是说把什么导到excel中去
 
不好意思!前段时间出去了一上,这几天才回来,我是说把一个结果集导出到EXCEL中!
谢谢先!
 
好了,接婚吧
 
上次忘了发分!sory
 
后退
顶部