query.sql.clear;
query.sql.add('EXEC sp_detach_db @dbname = ''mydb''');
query.sql.execsql;
query.sql.clear;
query.sql.add('EXEC sp_attach_single_file_db @dbname = ''mydb''');
query.sql.add('@physname = '''+opendialog.filename+''');
query.sql.execsql;
query.sql.add('EXEC sp_detach_db @dbname = ''mydb''');
query.sql.execsql;
query.sql.clear;
query.sql.add('EXEC sp_attach_single_file_db @dbname = ''mydb''');
query.sql.add('@physname = '''+opendialog.filename+''');
query.sql.execsql;
query.sql.clear;
query.sql.add('EXEC sp_attach_db @dbname = N'mydb',');
query.sql.add('@filename1 = N'''+opendialog.filename+'',');//mdf
query.sql.add('@filename2 = N'''+opendialog.filename+''');//ldf
query.sql.execsql;
我是这样写的,可是提示出错,“不能使文件与不同的数据库相关”,这是为什么?
ADOQuery1.SQL.Clear;
ADOQuery1.sql.add('EXEC sp_attach_db @dbname =''swgl_pos'',');
ADOQuery1.sql.add('@filename1 ='''+edit2.text+''','); //mdf
ADOQuery1.sql.add('@filename2 ='''+edit1.text+''' '); //ldf
ADOQuery1.execsql;