当你使用mysqldumo程序产生数据库备份文件时,缺省地,文件内容包含创建正在倾倒的表的CREATE语句和包含表中行数据的INSERT语句。换句话说,mysqldump产生的输出可在以后用作mysql的输入来重建数据库。
你可以将整个数据库倾倒进一个单独的文本文件中,如下:
%mysqldump samp_db >/usr/archives/mysql/samp_db.1999-10-02
输出文件的开头看起来象这样:
# MySQL Dump 6.0# # Host: localhost Database: samp_db#-------------
--------------------------# Server version 3.23.2-alpha-log## Table st
ructure for table 'absence'#CREATE TABLE absence( student_id int(10)
unsigned DEFAULT '0' NOT NULL, date date DEFAULT '0000-00-00' NOT NUL
L, PRIMARY KEY (student_id,date));## Dumping data for table 'absence'
#INSERT INTO absence VALUES (3,'1999-09-03');INSERT INTO absence VALUE
S (5,'1999-09-03');INSERT INTO absence VALUES (10,'1999-09-08');......
Dim MyFileName As String = _
路径+ "\InputDB.bak"
Dim MyDatabase As String = "InputDB"
Dim MySQL As String = _
"use master;backup database @MyDatabase to disk = @MyFileName;"
Dim MyConnection As New System.Data.SqlClient.SqlConnection( _
"Data Source=.;Initial Catalog=;Integrated Security=True")
Dim MyCommand As New System.Data.SqlClient.SqlCommand( _
MySQL, MyConnection)
MyCommand.Parameters.Add("@MyDatabase", SqlDbType.Char)
MyCommand.Parameters("@MyDatabase").Value = MyDatabase
MyCommand.Parameters.Add("@MyFileName", SqlDbType.Char)
MyCommand.Parameters("@MyFileName").Value = MyFileName
Try
MyCommand.Connection.Open()
MyCommand.ExecuteNonQuery()
MessageBox.Show("成功备份指定数据库", "信息提示", _
MessageBoxButtons.OK, MessageBoxIcon.Information)
Catch ex As Exception
MessageBox.Show(ex.Message, "信息提示", _
MessageBoxButtons.OK, MessageBoxIcon.Information)
Finally
MyConnection.Close()
End Try