نمایش نتایج 1 تا 13 از 13

نام تاپیک: Connection String همکاری در ساخت بکاپ گیری

  1. #1

    Connection String همکاری در ساخت بکاپ گیری

    با سلام خدمت اساتید گرامی
    من برای کانکت شدن به دیتابیس sql که در پوشه خود برنامه قرار داره از این connection string استفاده میکنم:

    Dim conString AsString = "Server=.\sqlexpress;" _
    &
    "attachdbfilename=|datadirectory|\Teachers.mdf ;" _
    &
    "initial catalog=Teachers;" _
    &
    "Integrated Security=SSPI;" _
    &
    "User Instance=True"



    این connection string بانک اطلاعاتی رو در هنگام اجرای برنامه attach می کنه و درستم کار میکنه ولی تا وقتی که برنامه درهمون مسیر بمونه و اگر جای برنامه رو مثلا از درایو C به درایو ِ D تغییر بدیم با خطایی مواجه میشیم که درهنگام attach میگه که این بانک اطلاعاتی قبلا در مسیر c اتچ شده. دلیلشم میدونم چون من در کانکشنم از این قسمت استفاده کردم:

    "initial catalog=teachers"


    دلیلشم اینه که فقط در این حالت میشه به وسیله ی SMO از بانک Backup گرفت.


    حالا بعد اینهمه پر حرفی سوالم اینه:

    چجوری میشه بانک اطلاعاتی رو که به این وسیله attach کردم را detach کنم؟

    باید بگم که حالت معمول detach کردن دیتابیس رو امتحان کردم و نشد اصلا لیست این نوع اتچ کردن دیتابیس کجا ذخیره میشه ؟

    دارم روی ابکاپ گیری از این نوع دیتابیسها که کنار برنامه هست کار میکنم که اگه به نتیجه برسم در همین پست سورسشو قرار میدم.

    پیشاپیش ممنونم.

  2. #2
    کاربر دائمی
    تاریخ عضویت
    آبان 1387
    محل زندگی
    مشهد
    پست
    353

    نقل قول: Connection String همکاری در ساخت بکاپ گیری

    براي بكاپ گيري از ديتابيس اتچ شده برو به اي پست اونجا كامل بحث شده

    پشتيبان گيري از SQL در VB.net

  3. #3

    نقل قول: Connection String همکاری در ساخت بکاپ گیری

    آقا مجید تو اون تاپیک که من خودمم با شما همکاری داشتم.

    من جند راهو برای این کار بلدم ولی هیچکدوم بی عیب نیست میخوام به وسیلهی smo این کارو انجام بدم.
    خواهش میکنم از کسایی که جواب سوال پست اولم رو بلدن دریغ نکنن.
    با تشکر

  4. #4

    نقل قول: Connection String همکاری در ساخت بکاپ گیری

    یعنی هیچ کس نمیتونه کمک کنه؟
    موقعی که برنامه رو اجرا میکنم میزنه this database is exist و موقعی هم که میخوام دیتچ کنم میزنه database is not exist لطفا جواب بدید

  5. #5
    کاربر دائمی آواتار alimanam
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    لندن
    سن
    38
    پست
    1,556

    نقل قول: Connection String همکاری در ساخت بکاپ گیری

    با سلام

    دوست عزیز وقتی که دیتابیس خودت رو Attach کردی برای اینکه تمامی ارتباطات خودت رو ازش قطع کنی از کد زیر استفاده کن .
    SqlConnection.ClearAllPools()

    بعدش میتونی هرکاری با پایگاه داده ات انجام بدی

    یا علی

  6. #6

    نقل قول: Connection String همکاری در ساخت بکاپ گیری

    با تشکر از پاسختون.
    ولی مشکلم حل نشد. این خطایی هست که میده :
    Database 'C:\Documents and Settings\Sadroddin\My Documents\Visual Studio 2005\Projects\New Attach Smo bakup\New Attach Smo bakup\bin\Debug\students.mdf' already exists.
    Could not attach file 'C:\Documents and Settings\Sadroddin\Desktop\New Attach Smo bakup\New Attach Smo bakup\bin\Debug\students.mdf' as database 'students'.


    کانکشن استرینگ رو که در پست اول میبینید. وقتی برنامه برای بار اول اجرا میشه هیچ مشکلی نیست و خوب کار میکنه و دیتابیسو که کنار برنامه هست attach می کنه ولی تا موقعی که برنامه جابجا نشه./
    وقتی که برنامه رو در جای دیگه ای از هارد اجرا میکنیم خطا میده و میگه قبلا در فلان مسیر attach شده.

    من از راه sp_detach .... عمل کردم ولی میگه این دیتابیس با این نام وجود نداره.

    حالا سوال من اینه که چجوری باید این دیتابیسی رو که به این شکل attach شده رو detach کنم؟

    alimanam عزیز لطفا اگه چیزی به ذهنتون میرسه کمک کنید. ممنون

  7. #7
    کاربر دائمی آواتار alimanam
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    لندن
    سن
    38
    پست
    1,556

    نقل قول: Connection String همکاری در ساخت بکاپ گیری

    دوست عزیز سلام

    آیا حتماً باید با Smo بکاپ بگیری ؟ اگه جواب مثبته کدهاتو بزار ببینم میتونم کاری انجام بدم ( من با این روش زیاد آشنایی ندارم ) اگه هم اصراری نیست و فقط میخوای کار Backup و Restore صحیح انجام بشه که کداش آماده است بگو تا واست بفرستم .

    یا علی

  8. #8

    نقل قول: Connection String همکاری در ساخت بکاپ گیری

    راستش من تو بکاپ گرفتن با شیوه دیگر اصلا مشکلی ندارم. یکم گیر دادم که این مشکل و حل کنم که کنجکاو شدم فقط که بدونم دیتابیسهایی که به این شکل attach میشن رو از کجا و با چه کدی detach کنم همین. هیچ مشکل دیگه ای نیست. به هر حال ممنونم از پاسختون

  9. #9
    کاربر دائمی آواتار alimanam
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    لندن
    سن
    38
    پست
    1,556

    نقل قول: Connection String همکاری در ساخت بکاپ گیری

    با سلام

    اینو تست کردی ؟

    server.KillProcess(db.Name)
    db.DatabaseOptions.UserAccess = DatabaseUserAccess.Single
    db.Alter(TerminationClause.RollbackTransactionsImm ediately)
    server.DetachDatabase(db.Name, True)


    این جا رو هم سر بزن خیلی مفیده :

    واسه بکاپ گرفتن با SMO
    واسه ریستور کردن با SMO
    آخرین ویرایش به وسیله alimanam : یک شنبه 29 شهریور 1388 در 02:19 صبح

  10. #10
    کاربر دائمی آواتار biotechsoft
    تاریخ عضویت
    مهر 1388
    محل زندگی
    اصفهان
    پست
    124

    نقل قول: Connection String همکاری در ساخت بکاپ گیری

    خوهشا دوستانی که ابتدای کار هستن رو صحیح ، راحت و کامل راهنمایی کنید:
    ایجاد بک آپ:

    'save path
    Dim saveFileDialog1 As New SaveFileDialog
    saveFileDialog1.InitialDirectory = "C:\"
    saveFileDialog1.Title = "ذخیره فایل پشتیبان"
    saveFileDialog1.DefaultExt = "bck"
    saveFileDialog1.Filter = "BackUp files (*.BCK)|*.BCK"
    saveFileDialog1.FileName = "Artesh-" & Me.lbl_hijri_date.Text & ".BCK"

    If (saveFileDialog1.ShowDialog() = DialogResult.OK) Then
    Dim path As String
    path = saveFileDialog1.FileName
    'save code
    Dim cmd As New SqlClient.SqlCommand()
    cmd.Connection = New SqlClient.SqlConnection("server=MORTEZA-PC;database=Artesh;integrated security=true;")
    cmd.CommandText = "backup database Artesh to disk=@path"
    Try
    cmd.Parameters.Add("@path", SqlDbType.NVarChar).Value = path.ToString
    cmd.Connection.Open()
    cmd.ExecuteNonQuery()
    MessageBox.Show("نسخه پشتیبان ایجاد شد")
    Catch ex As Exception
    MessageBox.Show(ex.Message)
    Finally
    cmd.Connection.Close()
    End Try
    End If

  11. #11
    کاربر دائمی آواتار biotechsoft
    تاریخ عضویت
    مهر 1388
    محل زندگی
    اصفهان
    پست
    124

    نقل قول: Connection String همکاری در ساخت بکاپ گیری

    خوهشا دوستانی که ابتدای کار هستن رو صحیح ، راحت و کامل راهنمایی کنید:
    بازخوانی اطلاعات بک آپ:

    'save path
    Dim OpenFileDialog1 As New OpenFileDialog
    OpenFileDialog1.InitialDirectory = "C:\"
    OpenFileDialog1.Title = "انتخاب فایل پشتیبان"
    OpenFileDialog1.DefaultExt = "bck"
    OpenFileDialog1.Filter = "BackUp files (*.BCK)|*.BCK"

    If (OpenFileDialog1.ShowDialog() = DialogResult.OK) Then

    Dim path As String
    path = OpenFileDialog1.FileName
    'restore code
    Dim cmd As New SqlClient.SqlCommand()
    cmd.Connection = New SqlClient.SqlConnection("server=MORTEZA-PC;database=MASTER;integrated security=true;")
    cmd.CommandText = "ALTER DATABASE Artesh SET SINGLE_USER with ROLLBACK IMMEDIATE;" & _
    "RESTORE DATABASE Artesh FROM DISK= @path with REPLACE;" & _
    "ALTER DATABASE Artesh SET MULTI_USER"
    Try
    cmd.Parameters.Add("@path", SqlDbType.NVarChar).Value = path.ToString
    cmd.Connection.Open()
    cmd.ExecuteNonQuery()
    MessageBox.Show("بازسازی اطلاعات موفقیت آمیز بود،به صورت خودکار از برنامه خارج می گردید")
    Catch ex As Exception
    MessageBox.Show(ex.Message)
    Finally
    cmd.Connection.Close()
    End Try
    Me.Close()
    End If

  12. #12
    کاربر دائمی آواتار biotechsoft
    تاریخ عضویت
    مهر 1388
    محل زندگی
    اصفهان
    پست
    124

    نقل قول: Connection String همکاری در ساخت بکاپ گیری

    در ضمن از TOOLBAR COMPONENTS باید یک OpenFileDialog به برنامه اظافه کنید(نام آن بصورت خودکار OpenFileDialog1 است...

  13. #13

    نقل قول: Connection String همکاری در ساخت بکاپ گیری

    سلام من تازه وارد این بحث شدم
    منم این مشکلو دارم ولی نمیدونم چطور Connection string رو تنظیم کنم تا با نام پایگاه د اده ازش بک آپ بگیرم

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •