rez1_mahtab
سه شنبه 23 آذر 1389, 06:37 صبح
سلام و خسته نباشید
یک برنامه با دلفی و sql2000 نوشتم
توی برنامه کد برای attach کردن دیتابیس نوشتم
Con:=TADOConnection.Create(nil);
con.LoginPrompt := FALSE;
con.ConnectionString:='Provider=SQLOLEDB.1;Integra ted Security=SSPI;Persist Security Info=False;Initial Catalog=master;Data Source=.;';
con.Open;
cmd:=TADOCommand.Create(nil);
cmd.Connection:=con;
cmd.CommandText:='exec sp_attach_db @dbname=dbname,@filename1='+#39+MDF_Path+#39+',@fi lename2='+#39+LOG_Path+#39;
cmd.Execute;
Con:= TADOConnection.Create(nil);
con.LoginPrompt := FALSE;
con.ConnectionString:=cnstr;
con.Open;
این کد جواب میدهد اما اگر فایل EXE برنامه و دیتابیس را به جای دیگری منتقل کنم
اتصال برقرار نشده و برنامه یکی از دو پیام زیر را میدهد
project raised exception class Eoleexception with message directory lookup for the file failed with the operating system error 5
project raised exception class eoleexception with message file activation failure the physical file name may be incorrect
که اولی روی فایل MDF و دومیLDF است
فکر میکنم logfile هنوز آدرس پوشه قبلی رو داره برای همین جواب نمیده
مشکل از کجاست؟
سعی کردو Attach را با استفاده ازSQLExpress Console
ایجاد کنم اما خطا میدهد
(info) Creating a new connection (Data Source=.;AttachDbFilename="MDF_path";Integrated Security=SSPI;)
(error) An attempt to attach an auto-named database for file MDF_path failed. A database with the same name exists, or specified file cannot be opened, or it is located on UNC share.
البته دیتابیسم رو 2008 هم تعریف کرده و دوباره امتحان کردم اما مشکل حل نشد
لطفا راهنمایی کنید
یک برنامه با دلفی و sql2000 نوشتم
توی برنامه کد برای attach کردن دیتابیس نوشتم
Con:=TADOConnection.Create(nil);
con.LoginPrompt := FALSE;
con.ConnectionString:='Provider=SQLOLEDB.1;Integra ted Security=SSPI;Persist Security Info=False;Initial Catalog=master;Data Source=.;';
con.Open;
cmd:=TADOCommand.Create(nil);
cmd.Connection:=con;
cmd.CommandText:='exec sp_attach_db @dbname=dbname,@filename1='+#39+MDF_Path+#39+',@fi lename2='+#39+LOG_Path+#39;
cmd.Execute;
Con:= TADOConnection.Create(nil);
con.LoginPrompt := FALSE;
con.ConnectionString:=cnstr;
con.Open;
این کد جواب میدهد اما اگر فایل EXE برنامه و دیتابیس را به جای دیگری منتقل کنم
اتصال برقرار نشده و برنامه یکی از دو پیام زیر را میدهد
project raised exception class Eoleexception with message directory lookup for the file failed with the operating system error 5
project raised exception class eoleexception with message file activation failure the physical file name may be incorrect
که اولی روی فایل MDF و دومیLDF است
فکر میکنم logfile هنوز آدرس پوشه قبلی رو داره برای همین جواب نمیده
مشکل از کجاست؟
سعی کردو Attach را با استفاده ازSQLExpress Console
ایجاد کنم اما خطا میدهد
(info) Creating a new connection (Data Source=.;AttachDbFilename="MDF_path";Integrated Security=SSPI;)
(error) An attempt to attach an auto-named database for file MDF_path failed. A database with the same name exists, or specified file cannot be opened, or it is located on UNC share.
البته دیتابیسم رو 2008 هم تعریف کرده و دوباره امتحان کردم اما مشکل حل نشد
لطفا راهنمایی کنید