用过sp_attach_db的过来看看,在线等候!!! 出错提示为以'f:\code\delphisource\xxx.mdf '太长,超出范围259 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你可以直接將組合好的命令拿到sql server上執行,如果沒錯,前台也不會出錯,除非有標識符的問題. 是不是因为路径后面有空格?加trim试试:parameters.ParamByName('@filename1').Value :=Trim(edit3.Text) ; 缺少日志文件而且建议用TAdoquery比较好if (Edit3.Text<>'') and FileExists(Edit1.text) and FileExists(Edit1.text) thenbeginADOQ.Close;ADOQ.SQL.Clear;Screen.Cursor :=crHourGlass;ADOQ.ConnectionString :=Format('Provider=SQLOLEDB.1;Password=%s;'+ 'Persist Security Info=True;'+ 'User ID=%s;'+ 'Data Source=%s',[pwd.Text,nid.Text,ds.Text]);ADOQ.SQL.Add('exec sp_attach_db :a,:b,:c');ADOQ.Parameters[0].Value :=Edit3.Text;ADOQ.Parameters[1].Value :=Edit1.Text;ADOQ.Parameters[2].Value :=Edit2.Text;ADOQ.ExecSQL;Screen.Cursor :=crDefault;ShowMessage('SQL Server数据库安装成功');endelseMessageDlg('文件不存在,请检查路径是否正确',mtError,[mbOK],0); 建议直接使用SQL语句。SQLStr:='EXEC sp_attach_db @dbname=N''Cig_Data_Check'', @filename1='''+DataFileName+''', @filename2=N'''+LogFileName+''' 谢谢楼上的两 位,我现在是这样解决的 try connect.Connected :=true; statusbar1.SimpleText :='连接成功'; with query do begin sql.Clear ; sql.Add('create database '+trim(edDataSource.Text)); sql.Add('on primary (filename="'+trim(edFilename.text)+'")'); sql.Add('for attach '); execsql; end; statusbar1.SimpleText :='导入成功'; except end; 多用户cookies清理算法讨论! 寻在家兼职的软件开发人员 如何连接到网站? ip地址控件创建问题 用frreport的showreport方法实现打印没有反应 多人提取数据的问题 有关stringGrid问题! 简单 学了几个月vc 再学delphi 感觉特别不爽 望高手指点! 一个简单的问题 紧急在线等候,怎样得到网卡的id号? 大家来讨论一下,关于数据库的同步和异步传输的问题,分可再加啊!!!!!!!!!!!!!!! 如何得到IE地址栏输入的网址呢??
parameters.ParamByName('@filename1').Value :=Trim(edit3.Text) ;
而且建议用TAdoquery比较好
if (Edit3.Text<>'') and FileExists(Edit1.text) and FileExists(Edit1.text) then
begin
ADOQ.Close;
ADOQ.SQL.Clear;
Screen.Cursor :=crHourGlass;
ADOQ.ConnectionString :=Format('Provider=SQLOLEDB.1;Password=%s;'+
'Persist Security Info=True;'+
'User ID=%s;'+
'Data Source=%s',[pwd.Text,nid.Text,ds.Text]);
ADOQ.SQL.Add('exec sp_attach_db :a,:b,:c');
ADOQ.Parameters[0].Value :=Edit3.Text;
ADOQ.Parameters[1].Value :=Edit1.Text;
ADOQ.Parameters[2].Value :=Edit2.Text;
ADOQ.ExecSQL;
Screen.Cursor :=crDefault;
ShowMessage('SQL Server数据库安装成功');
end
else
MessageDlg('文件不存在,请检查路径是否正确',mtError,[mbOK],0);
SQLStr:='EXEC sp_attach_db @dbname=N''Cig_Data_Check'',
@filename1='''+DataFileName+''',
@filename2=N'''+LogFileName+'''
try
connect.Connected :=true;
statusbar1.SimpleText :='连接成功';
with query do
begin
sql.Clear ;
sql.Add('create database '+trim(edDataSource.Text));
sql.Add('on primary (filename="'+trim(edFilename.text)+'")');
sql.Add('for attach ');
execsql;
end;
statusbar1.SimpleText :='导入成功';
except
end;