View Full Version : سوال: اشکال کد attach اتوماتیک چیه؟
  
salehvasaleh
یک شنبه 15 مرداد 1391, 18:31 عصر
دوستان کد زیر رو از طریق سرچ پستهای سایت بدست آوردم و هدفم اینه که بتونم فایل بانک رو از طریق این کد اتچ کنم اما خطایی رو میده که در عکس مشاهده می کنید:
http://rbs.host22.com/pic/dbd31f2027f2.jpg
اگه میشه لطف کنید بگید با توجه به کدها و عکس اشکال کار کجاست؟ممنون
string str;
            str = "Data Source=SABZIANP-509BB1\\SQLEXPRESS;Initial Catalog=master;Integrated Security=True";
            SqlConnection con = new SqlConnection(str);
            con.Open();
            SqlCommand comm = new SqlCommand("EXECUTE sp_attach_db @dbname,@filename1,@filename2)", con);
            comm.Parameters.Add("@dbname", SqlDbType.VarChar, 260).Value = "d";
            comm.Parameters.Add("@filename1", SqlDbType.VarChar, 260).Value = "E:\\bank\\d_data.mdf";
            comm.Parameters.Add("@filename2", SqlDbType.VarChar, 260).Value = "E:\\bank\\d_log.ldf";
            comm.ExecuteNonQuery();
            MessageBox.Show("وصل شد");
nilmil_nil
یک شنبه 15 مرداد 1391, 18:35 عصر
سلام
دوست عزیز
واضحه که
یه پرانتز اضافه گذاشتی
 SqlCommand comm = new SqlCommand("EXECUTE sp_attach_db @dbname,@filename1,@filename2)", con);
با رنگ قرمز مشخص کردم برات
salehvasaleh
یک شنبه 15 مرداد 1391, 18:38 عصر
سلام
دوست عزیز
واضحه که
یه پرانتط اضاف گذاشتی
 SqlCommand comm = new SqlCommand("EXECUTE sp_attach_db @dbname,@filename1,@filename2)", con);
 سلام ممنون در همون فاصله ارسال متوجه شدم خیلی ممنون حق با شماست. حالا یک سوال دیگه:
شما احیانا کد دیتچ رو نمی دونید؟ممنون
nilmil_nil
یک شنبه 15 مرداد 1391, 18:45 عصر
EXEC sp_detach_db 'DBNAME', 'true';
nilmil_nil
یک شنبه 15 مرداد 1391, 18:47 عصر
احتمال داره با دستوری که گفتم نشه 
ابتدا باید 
USE master; ALTER DATABASE DBname SET SINGLE_USER;
اجرا کنید بعد دستور بالا
salehvasaleh
یک شنبه 15 مرداد 1391, 18:53 عصر
[QUOTE=nilmil_nil;1564765]EXEC sp_detach_db 'DBNAME', 'true';[/QUOTE
یعنی فقط هیمن یک قسمتش تغییر می کنه و به این فرم در می آد:؟؟
string str;
            str = "Data Source=SABZIANP-509BB1\\SQLEXPRESS;Initial Catalog=master;Integrated Security=True";
            SqlConnection con = new SqlConnection(str);
            con.Open();
            SqlCommand comm = new SqlCommand("sp_detach sp_attach_db @dbname,@filename1,@filename2", con);
            comm.Parameters.Add("@dbname", SqlDbType.VarChar, 260).Value = "d";
            comm.Parameters.Add("@filename1", SqlDbType.VarChar, 260).Value = "E:\\bank\\d.mdf";
            comm.Parameters.Add("@filename2", SqlDbType.VarChar, 260).Value = "E:\\bank\\d_log.ldf";
            comm.ExecuteNonQuery();
            MessageBox.Show("دیتچ شد");
salehvasaleh
یک شنبه 15 مرداد 1391, 18:55 عصر
EXEC sp_detach_db 'DBNAME', 'true';
 ضمن تشکر یعنی باید این طوری بشه؟ یا تغییرات دیگه ای هم لازمه؟ممنون
string str;
            str = "Data Source=SABZIANP-509BB1\\SQLEXPRESS;Initial Catalog=master;Integrated Security=True";
            SqlConnection con = new SqlConnection(str);
            con.Open();
            SqlCommand comm = new SqlCommand("sp_detach sp_attach_db @dbname,@filename1,@filename2", con);
            comm.Parameters.Add("@dbname", SqlDbType.VarChar, 260).Value = "d";
            comm.Parameters.Add("@filename1", SqlDbType.VarChar, 260).Value = "E:\\bank\\d.mdf";
            comm.Parameters.Add("@filename2", SqlDbType.VarChar, 260).Value = "E:\\bank\\d_log.ldf";
            comm.ExecuteNonQuery();
            MessageBox.Show("دیتچ شد");
 
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.