Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > .NET Framework > Forum > VB.Net Restore SQL Database ไม่ได้อ่ะค่ะ มันติดตรง objCmd.ExecuteNonQuery()



 

VB.Net Restore SQL Database ไม่ได้อ่ะค่ะ มันติดตรง objCmd.ExecuteNonQuery()

 



Topic : 096664



โพสกระทู้ ( 114 )
บทความ ( 0 )



สถานะออฟไลน์




ทำไงดีมันติดตรง objCmd.ExecuteNonQuery() ฟ้องว่า

Code
The backup set holds a backup of a database other than the existing 'ControlEV54_Test' database.
RESTORE DATABASE is terminating abnormally.
Changed database context to 'ControlEV54'.


ต้องแก้ตรงไหนค่ะ help me plz.
Code (VB.NET)
Imports System.Data.SqlClient
Imports System.IO
Imports System.Data
Public Class Form2

    Dim objConn As SqlConnection
    Dim objCmd As SqlCommand
    Dim strConnString As String
    Dim cmdConnString As String
    Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
       

        strConnString = "Data Source=PROGRAMMER06-PC;Initial Catalog=ControlEV54_Test;Integrated Security=True"
        objConn = New SqlConnection(strConnString)
        objConn.Open()


    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        If objConn.State = ConnectionState.Open Then

            'objCmd = New SqlCommand("DROP DATABASE ControlEV54_Test", objConn)
            'objCmd.ExecuteNonQuery()

            objCmd = New SqlCommand("ALTER DATABASE ControlEV54_Test SET SINGLE_USER", objConn)
            objCmd.ExecuteNonQuery()
            'objConn.Close()


            objCmd = New SqlCommand("USE ControlEV54 RESTORE DATABASE ControlEV54_Test FROM DISK = 'D:\backup_nid\mybackup.bak'", objConn)
            objCmd.ExecuteNonQuery()
            'objConn.Close()
            MessageBox.Show("restore สำเร็จ")

            objCmd = New SqlCommand("ALTER DATABASE ControlEV54_Test SET MULTI_USER", objConn)
            objCmd.ExecuteNonQuery()
            objConn.Close()
        Else
            Me.lblText.Text = "SQL Server Connect Failed"
        End If
    End Sub

End Class




Tag : .NET







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2013-06-17 16:54:08 By : nunidnaja View : 1837 Reply : 17
 

 

No. 1

Guest


งานลักษณะแบบนี้ มันไม่ใช่หน้าที่ ของโปรแกรมเมอร์
ถึงแม้ว่าจะทำได้ แต่ไม่ควรทำโดยเด็ดขาด โดยหัวเด็ดตีนขาด
เพราะมันเกินความรับผิดชอบของ คนตัวเล็กฯ (หน้าที่/ความรับผิดชอบ ไม่เล็ก)


ผมยกตัวอย่าง จริง เปรียบเทียบให้ดู เล่นเล่น เป็นอุทาหรณ์

สมมุติว่า มีเจ้าหน้าที่คลังสินค้า (Store) ตัวเล็กฯ กระเจี้ยวไม่รักดีปวดฉี่บ่อย มือจับหาไม่เจอ มันหายไปไหนว่ะ?
ต้องใช้คีมคีบถ่าน ยืมมาจาก อ.บ.ต ดึงออกมา ฉี่เสร็จต้องล้างขาด้วยนะ

สมมุติว่า มีคนเดินดุ่ยดุ่ยดุ่ย เดินหน้าตั้งมาเลย และเป็น เจ้าของบริษัท

----- หยิบไอ้โน่นมาหน่อยซิ (ราคาหลายเงินอยู่ และด้วยความเคยชิน สั่งใครก็ได้) อั๊วจะเอาไปใช้
----- อั๊วเป็นเจ้าของบริษัท (หรือ มีอำนาจ)
----- น่าสงสาร เจ้าหน้าที่ตัวเล็กฯ ท่านครับ ท่านครับ ท่านครับ เขียนใบเบิกด้วยครับ (กล้าหรือ?)
----- ให้เบิกก็โดนทั้งขึ้นทั้งล่อง (ฉิบหาย) ไม่ให้เบิกก็โดนทั้งขึ้นทั้งล่อง (เตรียมหาหางานใหม่ได้เลย)

ลองคิดดูเอาเองครับ ถ้าสมมุติว่าคุณเป็นเจ้าหน้าที่ Store ตัวเล็กฯจะทำอย่างไร?


[x] ถ้ามีอะไรผิดพลาดขึ้นมา เขาเขาเขา ฟ้องตายห่าเลยครับ ได้ไม่คุ้มเสีย อันนี้เป็นเรื่องจริงนะครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-06-18 10:57:20 By : ผ่านมา
 


 

No. 2

Guest


เจ้าของบริษัท มันมีเรื่องคิดได้ร้อยแปดพันเก้า (ไม่อย่างนั้นเขาจะหาเงินมาจ่ายให้ลูกน้องสิบร้อยพันคนได้อย่างไร)
และไม่มีทางที่เขาจะจำได้ ทุกเรื่อง

สมมุติว่ามีของหายขึ้นมา (หรือมีความเสียหายตามมา ไม่ว่าในกรณีใดฯ)

ไอ้เจ้าหน้าที่ Store ตัวเล็กฯ เต็มที่ก็เป็นได้แค่ "ไอ้หัวขโมย/คนทำงานไม่ได้เรื่อง"
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-06-18 11:04:11 By : ผ่านมา
 

 

No. 3



โพสกระทู้ ( 114 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 1 เขียนโดย : ผ่านมา เมื่อวันที่ 2013-06-18 10:57:20
รายละเอียดของการตอบ ::
-*- หมายถึงอะไรหรอค่ะ งง มาก เกี่ยวกับกระทู้ที่โพสยังไงอ่ะค่ะ ไม่เข้าใจจริงๆค่ะ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-06-18 11:54:15 By : nunidnaja
 


 

No. 4



โพสกระทู้ ( 697 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 3 เขียนโดย : nunidnaja เมื่อวันที่ 2013-06-18 11:54:15
รายละเอียดของการตอบ ::
คุณเจ้าของกระทู้ครับ ผมขอสรุป 2 คอมเม้นที่คุณ ผ่านมา ให้ฟังตามความเข้าใจของผมนะครับ ซึ่งอาจจะไม่ผิดไม่ถูก

คุณ ผ่านมา เขาคงอยากจะสื่อว่า โค้ดคิวรี่ที่คุณเขียน ในโปรแกรมเนี้ย มันไม่สมควร(ไม่เหมาะสม) ที่จะให้เป็นหน้าที่ของโปรแกรมเรียกคิวรี่พวกนี้ ( ALTER DATABASE ... ) มาใช้งาน ส่วนใหญ่โปรแกรมควรจะ Select Update Insert Delete มาก็พอแล้ว

ส่วนการทำงานพวกนี้ควรจะเขียนและเรียกใช้ใน Store Procedure ใน SQL Server แทนนะครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-06-18 13:35:44 By : 01000010
 


 

No. 5



โพสกระทู้ ( 114 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 4 เขียนโดย : 01000010 เมื่อวันที่ 2013-06-18 13:35:44
รายละเอียดของการตอบ ::
ออ ค่ะ
แต่พอลองเทสทำง่ายๆ ลองคิวรี่ดูตามลิ้งด้านล่าง 2 ลิ้งไม่เห็นได้เลยค่ะ
v
v
https://www.thaicreate.com/tutorial/sql-select-into.html

https://www.thaicreate.com/tutorial/sql-copy-table.html

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-06-18 15:54:42 By : nunidnaja
 


 

No. 6



โพสกระทู้ ( 114 )
บทความ ( 0 )



สถานะออฟไลน์


แต่ทำใน localhost/phpmyadmin ได้นะค่ะ แต่ได้แค่code นี้ค่ะ

CREATE TABLE ตารางที่จะสร้าง SELECT * FROM ตารางที่ต้องการcopy

แต่ทำใน sql2008 ไม่ได้อ่ะค่ะ T_T
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-06-18 16:06:42 By : nunidnaja
 


 

No. 7

Guest


ขอให้โชคดีครับ

Code
Public Shared Function RunSQLScript() As Boolean Dim suc As Boolean = False Dim s As New StringBuilder() Dim scConnection As New ServerConnection(New SqlConnection() With { .ConnectionString = "Data Source=ServerName;Initial Catalog=xDB;User ID=sa;Password=1234" }) Dim sqlServer As New Microsoft.SqlServer.Management.Smo.Server(scConnection) sqlServer.ConnectionContext.SqlExecutionModes = SqlExecutionModes.ExecuteSql '****************************** 'ควรจะอ่านค่ามาจากไฟล์ yourFiles123456.sql หรือ Text Files xxx.text '****************************** s.Append("USE yourDB") s.Append("GO") s.Append("BEGIN TRANSACTION") s.Append("SET QUOTED_IDENTIFIER ON") s.Append("SET ARITHABORT ON") s.Append("SET NUMERIC_ROUNDABORT OFF") s.Append("SET CONCAT_NULL_YIELDS_NULL ON") s.Append("SET ANSI_NULLS ON") s.Append("SET ANSI_PADDING ON") s.Append("SET ANSI_WARNINGS ON") s.Append("COMMIT") s.Append("BEGIN TRANSACTION") s.Append("GO") s.Append("ALTER TABLE dbo.yourTable ADD yourNewColumn varchar(100) NULL") s.Append("GO") s.Append("ALTER TABLE dbo.xTable SET (LOCK_ESCALATION = TABLE)") s.Append("GO") s.Append("COMMIT") Try sqlServer.ConnectionContext.ExecuteNonQuery(s.ToString()) Catch ex As Exception 'TO DO End Try Return suc End Function


[x] อย่าลืม References ด้วยครับ
Microsoft.SqlServer.Smo
Microsoft.SqlServer.ConnectionInfo
Microsoft.SqlServer.Management.Sdk.Sfc
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-06-18 16:50:42 By : ผ่านมา
 


 

No. 8

Guest


Fixed Bug.

Code
Try sqlServer.ConnectionContext.ExecuteNonQuery(s.ToString()) suc = True Catch ex As Exception 'TO DO End Try



ขอให้โชคดีอีกครั้งหนึ่งครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-06-18 16:56:45 By : ผ่านมา
 


 

No. 9

Guest


Fixed Bug.

Code
s.Append("ALTER TABLE dbo.yourTable ADD yourNewColumn varchar(100) NULL") s.Append("GO") s.Append("ALTER TABLE dbo.yourTable SET (LOCK_ESCALATION = TABLE)")


Code
#NO 7 ท่านเจ้าของกระทู้ลองศึกษาคำสั่งแต่ละคำสั่งดูครับ (มันต้องเข้าใจอย่างลึกซึ้ง) งานแบบนี้ โชคดีไม่ได้อยู่ข้างเรา


[x] ผมเขียนโปรแกรมแต่ละครั้ง Bug เพียบ (ผมยอมรับว่า ห่วยแตกมากฯ ครับ)
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-06-18 17:15:52 By : ผ่านมา
 


 

No. 10



โพสกระทู้ ( 697 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ตอบความคิดเห็นที่ : 9 เขียนโดย : ผ่านมา เมื่อวันที่ 2013-06-18 17:15:52
รายละเอียดของการตอบ ::
ผมว่า "ยิ่งผิดเยอะ ยิ่งรู้เยอะ" ครับ



ประวัติการแก้ไข
2013-06-18 17:24:09
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-06-18 17:23:49 By : 01000010
 


 

No. 11



โพสกระทู้ ( 1,348 )
บทความ ( 1 )



สถานะออฟไลน์


"ผ่านมา" 1 กับ 7 คนเดียวกันรึเปล่า
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-06-18 20:11:49 By : watcharop
 


 

No. 12



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook


แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-06-18 20:35:04 By : mr.win
 


 

No. 13



โพสกระทู้ ( 1,348 )
บทความ ( 1 )



สถานะออฟไลน์


เหมือนมี 2 บุคลิกในคนเดียว
Mr.Win ไม่เฉลยสักหน่อยเหรอครับ
อย่างน้อยก็บอกสักหน่อยว่า IP เดียวกันรึเปล่า


ประวัติการแก้ไข
2013-06-18 20:40:19
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-06-18 20:39:29 By : watcharop
 


 

No. 14

Guest


ตอบความคิดเห็นที่ : 13 เขียนโดย : watcharop เมื่อวันที่ 2013-06-18 20:39:29
รายละเอียดของการตอบ ::
เหมือนมี 2 บุคลิกในคนเดียว
Mr.Win ไม่เฉลยสักหน่อยเหรอครับ
อย่างน้อยก็บอกสักหน่อยว่า IP เดียวกันรึเปล่า




ข้อดีของตัวเองเ่่ท่าที่ผมนึกได้มีดังนี้ครับ


ผมเป็นคนได้หน้าแล้วไม่ลืมหลัง (หน้าได้)
ผมเป็นคนได้หลังแล้วก็ไม่ลืมหน้า (หลังได้)


[x] +55555
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-06-19 08:57:37 By : ผ่านมา
 


 

No. 15



โพสกระทู้ ( 114 )
บทความ ( 0 )



สถานะออฟไลน์


สอบถามอีกหน่อยค่ะ ถ้าต้องการเก็บข้อมูลทั้งหมดของ database เอาทุกตารางทุกข้อมูลนี่จะใช้คำสั่งอะไรค่ะ ไม่ได้เอาเฉพาะตารางคือเอาทุกตารางเลยอ่ะค่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-06-19 14:59:32 By : nunidnaja
 


 

No. 16

Guest


Get Tables from RDBMS มีหลากหลายวิธีครับ อทิเช่น

Code
1. Select * From sys.Tables 2. Select * From sysobjects Where xtype='U' 3. Select * From INFORMATION_SCHEMA.TABLES ...


และถ้าผมเดาความต้องการไม่ผิด ต้องการโครงสร้างของตาราง (Table)
- Field Name
- Field Type
- Field Size
- etc

และถ้าผมเดาความต้องการไม่ผิด เป็นงานปรับปรุงโปรแกรม (Update Version)

Code
USE yourDB GO 5 SELECT * FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'yourTableName' And TABLE_SCHEMA = 'dbo'



ข้อควรระลึกถึง RDBMS ที่ดีไม่ได้มีแค่หนึ่ง เช่น SQL Server, Oracle, DB2, MySql, etc
บนหลักการเดียวกัน แต่รายละเอียดปลีกย่อย ไม่เหมือนกันครับ

[x] อย่าลืมท่องคำว่า BackUp (สำรองข้อมูล) ให้ขึ้นใจครับ อันนี้มีความหมายมากกว่าคำว่า สำคัญ


โชคดีจงเป็นของท่านเจ้าของกระทู้ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-06-21 09:39:05 By : ผ่านมา
 


 

No. 17



โพสกระทู้ ( 114 )
บทความ ( 0 )



สถานะออฟไลน์


ตอบความคิดเห็นที่ : 16 เขียนโดย : ผ่านมา เมื่อวันที่ 2013-06-21 09:39:05
รายละเอียดของการตอบ ::
ขอบคุณมากค่ะ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2013-06-21 10:27:13 By : nunidnaja
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : VB.Net Restore SQL Database ไม่ได้อ่ะค่ะ มันติดตรง objCmd.ExecuteNonQuery()
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 04
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่