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

نام تاپیک: برگرداندن اطلاعات دیتابیس SQL Server

  1. #1
    کاربر دائمی آواتار ROSTAM2
    تاریخ عضویت
    اسفند 1390
    محل زندگی
    فارس
    پست
    2,010

    Question برگرداندن اطلاعات دیتابیس SQL Server

    سلام

    من برای برگرداندن دیتابیس از این روش استفاده کردم (Console Application):


    Sub ExecuteQuery(Query As String)
    Try
    Dim Server As String = ""
    Dim login As String = ""
    Dim password As String = ""
    Dim ConnectionString As String = ""
    Dim Value As String = ""
    Console.WriteLine()
    Console.ForegroundColor = ConsoleColor.Yellow
    Console.WriteLine("{0} Connect to New Server: ", vbTab)
    Console.WriteLine()
    Console.ForegroundColor = ConsoleColor.DarkGreen
    value = " Server: "
    FillName(value, 17)
    Console.Write(value)
    Console.ForegroundColor = ConsoleColor.Gray
    value = Console.ReadLine
    If Value.Length = 0 Then Exit Sub
    Server = value.Trim
    Console.WriteLine()
    Console.ForegroundColor = ConsoleColor.DarkGreen
    Value = " Login(User ID): "
    FillName(value, 17)
    Console.Write(value)
    Console.ForegroundColor = ConsoleColor.Gray
    Console.WriteLine("sa")
    login = "sa"
    Console.ForegroundColor = ConsoleColor.DarkGreen
    Value = "'sa' Password: "
    FillName(value, 17)
    Console.Write(value)
    Console.BackgroundColor = ConsoleColor.Black
    Console.ForegroundColor = ConsoleColor.Black
    value = Console.ReadLine
    password = value.Trim
    Console.ResetColor()


    Dim connection As SqlConnection
    ConnectionString = NewConnectionString(Server, login, password, "master")
    connection = New SqlConnection(ConnectionString)
    connection.Open()
    Dim command As SqlCommand
    command = connection.CreateCommand()
    command.CommandText = Query
    command.ExecuteNonQuery()
    Catch ex As Exception
    Console.ForegroundColor = ConsoleColor.Red
    Console.WriteLine("{0} {1}! {2}", vbTab, ex.Message.Trim, Query)
    End Try
    End Sub
    Function NewConnectionString(Server As String, login As String, password As String, Optional Database As String = "Projects") As String
    Return String.Format("Data Source={0};Initial Catalog={3};User ID={1};Password={2}", Server, login, password, Database)
    End Function

    Shared Sub Backup()
    ExecuteQuery(String.Format("BACKUP DATABASE Projects TO DISK='{0}'",
    IO.Path.GetFullPath(".\Projects.BAK")))
    End Sub
    Shared Sub Restore()
    ExecuteQuery(String.Format("RESTORE DATABASE Projects FROM DISK='{0}'",
    IO.Path.GetFullPath(".\Projects.BAK")))
    End Sub



    ولی موقع Restore این خطا رو بر می گردونه که دیتابیس در حال استفاده است....


    With ProjectsAdapter.Connection
    .Close()
    End With
    AdapterManager.Connection.Close()
    Data.Restore()


    Screenshot 2024-10-17 125258.jpg

  2. #2
    کاربر دائمی آواتار ROSTAM2
    تاریخ عضویت
    اسفند 1390
    محل زندگی
    فارس
    پست
    2,010

    نقل قول: برگرداندن اطلاعات دیتابیس SQL Server

    SQL Server Management Studio هم همین خطا رو برمی گردونه!!!

    Screenshot 2024-10-17 131609.jpg

  3. #3
    کاربر دائمی آواتار mazoolagh
    تاریخ عضویت
    اردیبهشت 1384
    سن
    72
    پست
    3,578

    نقل قول: برگرداندن اطلاعات دیتابیس SQL Server

    سلام و روز خوش

    1- میتونین بجای نوشتن یک console app از command lineهای خود sql استفاده کنین.
    2- در restore ، یک with replace اضافه و تست کنین ببینین مشکل حل میشه.


    osql -E -Q "BACKUP DATABASE ... TO DISK='...'"
    osql -E -Q "RESTORE DATABASE .. FROM DISK='...' WITH REPLACE"


    Screenshot 2024-10-17 141122.png

  4. #4
    کاربر دائمی آواتار ROSTAM2
    تاریخ عضویت
    اسفند 1390
    محل زندگی
    فارس
    پست
    2,010

    نقل قول: برگرداندن اطلاعات دیتابیس SQL Server

    سلام مجدد

    Console Application من به شبکه متصل می شه، یک جدول دارم که با Dataset کوئری ها رو براش نوشتم که از کلاینت نرم افزار رو اجرا می کنم همون جدول AppProjects قابل مدیریت هست هیچ مشکلی هم نداره، ولی با جدولی که جدیدا اضافه کردم Videos برای اتصال مشکل داره (کلاینت) ولی در سیستم اصلی هیچ مشکلی نداره.

    نکته اینجاست که من پوشه دیباگ از پروژه رو به اشتراک گذاشتم و از طریق powershell نرم افزار رو اجرا می کنم.

    خطای جدول videos در کلاینت...

    Annotation 2024-10-18 223922.jpg

    کدهای تعاریف Adapter ها :


    Friend WithEvents ProjectsAdapter As New Projects.
    ProjectsDatasetTableAdapters.
    AppProjectsTableAdapter With {.ClearBeforeFill = True}
    Friend WithEvents VideosAdapter As New ProjectsDatasetTableAdapters.
    VideosTableAdapter With {.ClearBeforeFill = True}


    Friend WithEvents Dataset As New ProjectsDataset
    Friend WithEvents AdapterManager As New Projects.
    ProjectsDatasetTableAdapters.
    TableAdapterManager With {.AppProjectsTableAdapter =
    ProjectsAdapter, .VideosTableAdapter = VideosAdapter}


    پردازش اولیه:


    Dim ConnectionString As String = Data.ConnectionString
    If ConnectionString.Length > 0 Then
    With AdapterManager.Connection
    Try
    .Close()
    .ConnectionString = ConnectionString
    .Open()
    Catch ex As Exception
    Console.ForegroundColor = ConsoleColor.Red
    Console.WriteLine("{0} {1}!", vbTab, ex.Message.Trim)
    Finally


    End Try
    End With
    End If


    Data.ConnectionString اطلاعات اتصال به SQL Server در دیتابیس Settings ذخیره می شه که موقع اجرای نرم افزار استفاده می شه

  5. #5
    کاربر دائمی آواتار ROSTAM2
    تاریخ عضویت
    اسفند 1390
    محل زندگی
    فارس
    پست
    2,010

    نقل قول: برگرداندن اطلاعات دیتابیس SQL Server

    مثل اینکه تغییر ConnectionString از AdapterManager به تنهایی کافی نبوده ....

    با این دستور مشکل اتصال به جدولو حل شد....



    With VideosAdapter.Connection
    .Close()
    .ConnectionString = ConnectionString
    .Open()
    End With

  6. #6
    کاربر دائمی آواتار mazoolagh
    تاریخ عضویت
    اردیبهشت 1384
    سن
    72
    پست
    3,578

    نقل قول: برگرداندن اطلاعات دیتابیس SQL Server

    این "جدولو" خیلی خوب بود!

تاپیک های مشابه

  1. پاسخ: 2
    آخرین پست: پنج شنبه 11 تیر 1394, 16:11 عصر
  2. پاسخ: 1
    آخرین پست: پنج شنبه 17 مرداد 1392, 02:21 صبح
  3. تبدیل دیتابیس فاكس پرو (FoxPro) به دیتابیس (SQL SERVER 2008) با پشتیبانی از زبان فارسی
    نوشته شده توسط majid_darab در بخش مسائل مرتبط با نصب و راه اندازی
    پاسخ: 9
    آخرین پست: سه شنبه 15 فروردین 1391, 16:14 عصر
  4. تفاوت ایجاد دیتابیس در server explorer vb 2010 با SQL Server Management Studio
    نوشته شده توسط sh2007 در بخش مدیریت دیتابیس (Database Administration)
    پاسخ: 1
    آخرین پست: یک شنبه 20 شهریور 1390, 22:36 عصر

برچسب های این تاپیک

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

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