备份恢复数据库
每个系统都应该有数据库的备份和还原功能,以防各种情况下的数据库损坏造成不可挽回的损失。这个功能挺简单,但在代码实现过程中也多多少少遇到了些问题,我把错误都总结了出来,供大家参考学习。 下面先给出正确的代码实现: Imports System.Data.SqlClient
每个系统都应该有数据库的备份和还原功能,以防各种情况下的数据库损坏造成不可挽回的损失。这个功能挺简单,但在代码实现过程中也多多少少遇到了些问题,我把错误都总结了出来,供大家参考学习。
下面先给出正确的代码实现:
Imports System.Data.SqlClient Public Class Form1 '备份数据库 'BACKUP DATABASE Test TO DISK='' WITH Format sql语句 Private Sub btnBackup_Click(sender As Object, e As EventArgs) Handles btnBackup.Click Dim conn As SqlConnection conn = New SqlConnection("Data Source=.;Initial Catalog=test3;User ID=sa;Password=123456") Dim cmd As SqlCommand Dim path As String '选择备份路径 FolderBrowserDialog1.ShowDialog() path = FolderBrowserDialog1.SelectedPath If path = Nothing Then MessageBox.Show("文件名不能为空", "系统提示") Exit Sub End If '执行sql命令语句,备份数据库 cmd = New SqlCommand("BACKUP DATABASE test3 TO DISK='" & path & "\backup' WITH format,BACKUP LOG WITH NORECOVERY", conn) conn.Open() Try cmd.ExecuteNonQuery() Catch ex As Exception MsgBox(ex.Message, MsgBoxStyle.OkOnly, "系统提示") Exit Sub End Try MsgBox("备份成功") conn.Close() End Sub '还原数据库 Private Sub btnRecovery_Click(sender As Object, e As EventArgs) Handles btnRecovery.Click If MsgBox("真的要还原吗?数据会恢复到最近备份的数据!", MsgBoxStyle.YesNo, "系统提示") = MsgBoxResult.Yes Then Dim cn As New SqlConnection Dim cn1 As New SqlConnection Dim mydr As SqlDataReader Dim str As String Dim tmpConnectionString As String = "Data Source=.;Initial Catalog=test3;User ID=sa;Password=123456;pooling=false" Dim all As String '获取当前文件名筛选器字符 Me.OpenFileDialog1.Filter = "所有文件(*.*)|*.*|备份文件(*.bak)|*.bak" Me.OpenFileDialog1.ShowDialog() all = OpenFileDialog1.FileName If all = Nothing Then MessageBox.Show("文件名不能为空", "系统提示") Exit Sub End If cn.ConnectionString = tmpConnectionString cn1.ConnectionString = tmpConnectionString cn.Open() cn1.Open() '查询与数据库有关的进程 Dim cm As SqlCommand = New SqlCommand("use master select spid from master..sysprocesses where dbid=db_id('test3')", cn) mydr = cm.ExecuteReader() Dim cm1 As SqlCommand = New SqlCommand() cm1.Connection = cn1 While (mydr.Read()) '杀死进程 str = "kill " & mydr("spid").ToString() cm1.CommandText = str cm1.CommandType = CommandType.Text Application.DoEvents() cm1.ExecuteNonQuery() End While mydr.Close() '使要还原的数据库脱机 cm = New SqlCommand("ALTER DATABASE test3 SET OFFLINE WITH ROLLBACK IMMEDIATE", cn) cm.ExecuteNonQuery() '恢复备份 cm = New SqlCommand("RESTORE DATABASE test3 FROM DISK='" & all & "' WITH REPLACE", cn) cm.ExecuteNonQuery() '使要还原的数据库联机 cm = New SqlCommand("ALTER DATABASE test3 SET ONLINE WITH ROLLBACK IMMEDIATE", cn) cm.ExecuteNonQuery() MsgBox("恢复成功,软件自动关闭,请重新启动本系统!") '关闭数据库连接 cn.Close() cn1.Close() Me.Close() Else Exit Sub End If End Sub End Class
错误代码一:
select spid from test3..sysprocesses where dbid=db_id('test3')
错误描述:
解决方法:
在sql语句前添加use master 即
use master select spid from master..sysprocesses where dbid=db_id('test3')
User master表示在master数据库执行该语句,spid指当前用户进程的会话 ID,master是系统数据库,它里面有很多对象,每个对象都有自己的所有者.如果没有指明所有者,系统就默认dbo为对象的所有者.一个对象完整的表达式为:数据库名.所有者.对象, 比如:master.dbo.sysobjects。杀进程前当然要先找出当前该数据库所有的进程了。
错误二:
直接用SQL语句还原数据库。
错误描述:
解决方法:
方法一:
在还原之前先将该数据库脱机,恢复之后再联机。前后加上两条sql语句即可。
ALTER DATABASE [datebase] SET OFFLINE WITH ROLLBACK IMMEDIATE
ALTER DATABASE [ datebase] SET ONLINE
方法二:
(该方法采取限制访问数据库的方式,因为实际中我们经常多用户访问,所以符合情况时再考虑这种解决方法吧。)
在还原的时候还有其他进程连在上面,导致无法获得独占造成的,可以使用数据库的单用户模式,设置方式:选中要还原的数据库-->属性-->选项-->限制访问,该值从MULTI_USER修改为SINGLE_USER。
以下是GUI的模式,语句比较简单
USE MASTER
GO
ALTER DATABASEeol_tcgroup SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
GO

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Pada 29 Julai, pada majlis pelepasan kereta baharu AITO Wenjie yang ke-400,000, Yu Chengdong, Pengarah Urusan Huawei, Pengerusi Terminal BG, dan Pengerusi Smart Car Solutions BU, menghadiri dan menyampaikan ucapan dan mengumumkan bahawa model siri Wenjie akan akan dilancarkan tahun ini Pada bulan Ogos, Huawei Qiankun ADS 3.0 versi telah dilancarkan, dan ia dirancang untuk terus naik taraf dari Ogos hingga September. Xiangjie S9, yang akan dikeluarkan pada 6 Ogos, akan memperkenalkan sistem pemanduan pintar ADS3.0 Huawei. Dengan bantuan lidar, versi Huawei Qiankun ADS3.0 akan meningkatkan keupayaan pemanduan pintarnya, mempunyai keupayaan bersepadu hujung-ke-hujung, dan mengguna pakai seni bina hujung ke hujung baharu GOD (pengenalpastian halangan am)/PDP (ramalan). membuat keputusan dan kawalan), menyediakan fungsi NCA pemanduan pintar dari ruang letak kereta ke ruang letak kereta, dan menaik taraf CAS3.0

Membuat sandaran dan memulihkan pangkalan data MySQL dalam PHP boleh dicapai dengan mengikuti langkah berikut: Sandarkan pangkalan data: Gunakan arahan mysqldump untuk membuang pangkalan data ke dalam fail SQL. Pulihkan pangkalan data: Gunakan arahan mysql untuk memulihkan pangkalan data daripada fail SQL.

Bahasa Go ialah bahasa pengaturcaraan yang cekap, ringkas dan mudah dipelajari Ia digemari oleh pembangun kerana kelebihannya dalam pengaturcaraan serentak dan pengaturcaraan rangkaian. Dalam pembangunan sebenar, operasi pangkalan data adalah bahagian yang sangat diperlukan Artikel ini akan memperkenalkan cara menggunakan bahasa Go untuk melaksanakan operasi penambahan, pemadaman, pengubahsuaian dan pertanyaan pangkalan data. Dalam bahasa Go, kami biasanya menggunakan perpustakaan pihak ketiga untuk mengendalikan pangkalan data, seperti pakej sql yang biasa digunakan, gorm, dsb. Di sini kami mengambil pakej sql sebagai contoh untuk memperkenalkan cara melaksanakan operasi penambahan, pemadaman, pengubahsuaian dan pertanyaan pangkalan data. Andaikan kami menggunakan pangkalan data MySQL.

Pada 11 April, Huawei secara rasmi mengumumkan pelan peningkatan 100 mesin HarmonyOS 4.2 kali ini, lebih daripada 180 peranti akan mengambil bahagian dalam peningkatan, meliputi telefon bimbit, tablet, jam tangan, fon kepala, skrin pintar dan peranti lain. Pada bulan lalu, dengan kemajuan mantap pelan peningkatan 100 mesin HarmonyOS4.2, banyak model popular termasuk Huawei Pocket2, siri Huawei MateX5, siri nova12, siri Huawei Pura, dll. juga telah mula menaik taraf dan menyesuaikan diri, yang bermaksud bahawa akan ada Lebih ramai pengguna model Huawei boleh menikmati pengalaman biasa dan selalunya baharu yang dibawa oleh HarmonyOS. Berdasarkan maklum balas pengguna, pengalaman model siri Huawei Mate60 telah bertambah baik dalam semua aspek selepas menaik taraf HarmonyOS4.2. Terutamanya Huawei M

Xiaohongshu ialah platform e-dagang sosial yang popular di mana pengguna boleh berkongsi pengalaman membeli-belah, butiran kehidupan, dsb. Semasa penggunaan, sesetengah pengguna mungkin mengalami ulasan mereka dipadamkan. Jadi, bagaimana untuk memulihkan ulasan yang dipadam pada Xiaohongshu? 1. Bagaimana untuk memulihkan ulasan yang dipadam pada Xiaohongshu? Jika didapati komen telah dipadam secara tidak sengaja, pengguna boleh memilih untuk menunggu pasukan rasmi Xiaohongshu memulihkannya. Dalam kes ini, sebaiknya bersabar dan tunggu kerana pasukan rasmi mungkin memproses dan menyambung semula ulasan secara automatik selepas beberapa ketika. Jika anda mendapati bahawa ulasan telah dipadamkan, pertimbangkan untuk menerbitkan semula kandungan yang serupa. Tetapi apabila menyiarkan semula, sila pastikan kandungan mematuhi garis panduan komuniti Xiaohongshu untuk mengelakkan dialih keluar lagi. 3. Hubungi khidmat pelanggan Xiaohongshu: Jika anda rasa komen anda telah tersilap

Cara menggunakan MySQLi untuk mewujudkan sambungan pangkalan data dalam PHP: Sertakan sambungan MySQLi (require_once) Cipta fungsi sambungan (functionconnect_to_db) Fungsi sambungan panggilan ($conn=connect_to_db()) Laksanakan pertanyaan ($result=$conn->query()) Tutup sambungan ( $conn->close())

Pemetaan polimorfik hibernate boleh memetakan kelas yang diwarisi ke pangkalan data dan menyediakan jenis pemetaan berikut: subkelas bercantum: Cipta jadual berasingan untuk subkelas, termasuk semua lajur kelas induk. table-per-class: Cipta jadual berasingan untuk subkelas, yang mengandungi hanya lajur khusus subkelas. union-subclass: serupa dengan joined-subclass, tetapi jadual kelas induk menggabungkan semua lajur subclass.

Baru-baru ini, Huawei mengumumkan bahawa ia akan melancarkan produk boleh pakai pintar baharu yang dilengkapi sistem penderiaan Xuanji pada bulan September, yang dijangka menjadi jam tangan pintar terbaru Huawei. Produk baharu ini akan menyepadukan fungsi pemantauan kesihatan emosi termaju Sistem Persepsi Xuanji menyediakan pengguna dengan penilaian kesihatan yang komprehensif dengan enam cirinya - ketepatan, kekomprehensif, kelajuan, fleksibiliti, keterbukaan dan skalabiliti. Sistem ini menggunakan modul penderiaan super dan mengoptimumkan teknologi seni bina laluan optik berbilang saluran, yang meningkatkan ketepatan pemantauan penunjuk asas seperti kadar jantung, oksigen darah dan kadar pernafasan. Selain itu, Sistem Penderiaan Xuanji juga telah mengembangkan penyelidikan mengenai keadaan emosi berdasarkan data kadar jantung Ia tidak terhad kepada penunjuk fisiologi, tetapi juga boleh menilai keadaan emosi dan tahap tekanan pengguna. Ia menyokong pemantauan lebih daripada 60 sukan penunjuk kesihatan, meliputi kardiovaskular, pernafasan, neurologi, endokrin,
