3种创建数据库的方法
-------还原数据库
RESTORE DATABASE [" + 新数据库名 + "] FROM DISK = N'" + 备份文件路径+ "' WITH FILE = 1, NOUNLOAD , STATS = 10, RECOVERY , MOVE N'" + Data文件名 + "' TO N'" + 存放DATA文件的绝对路径+ "', MOVE N'" + Log文件名 + "' TO N'" + 存放LDF文件的绝对路径 +"'"
-------脚本.sql创建数据库(OSQL执行)
Dim connStr As String = String.Format("data source={0};user id={1};password={2};persist security info=false;packet size=4096", 服务器名,用户名,密码)
'根据输入的数据库名称建立数据库
' ExecuteSql(connStr, "master", "USE MASTER IF EXISTS (SELECT NAME FROM SYSDATABASES WHERE NAME='" + TxtDBFileName.Text.Trim + "') DROP DATABASE " + TxtDBFileName.Text.Trim)
ExecuteSql(connStr, "master", "CREATE DATABASE " + 数据库名)
'调用osql执行脚本
Dim sqlProcess As New System.Diagnostics.Process
sqlProcess.StartInfo.FileName = "osql.exe "
sqlProcess.StartInfo.Arguments = String.Format(" -U {0} -P {1} -d {2} -i {3}" ,用户名,密码, 数据库名, 脚本文件路径 )
sqlProcess.StartInfo.WindowStyle = Diagnostics.ProcessWindowStyle.Hidden
sqlProcess.Start()
sqlProcess.WaitForExit() '等待执行
sqlProcess.Close()
----------------附加数据库
EXEC sp_attach_db N'" +数据库名 + "', N'" + DATA文件路径+ "', N'" + LOG文件路径+ "'"
RESTORE DATABASE [" + 新数据库名 + "] FROM DISK = N'" + 备份文件路径+ "' WITH FILE = 1, NOUNLOAD , STATS = 10, RECOVERY , MOVE N'" + Data文件名 + "' TO N'" + 存放DATA文件的绝对路径+ "', MOVE N'" + Log文件名 + "' TO N'" + 存放LDF文件的绝对路径 +"'"
-------脚本.sql创建数据库(OSQL执行)
Dim connStr As String = String.Format("data source={0};user id={1};password={2};persist security info=false;packet size=4096", 服务器名,用户名,密码)
'根据输入的数据库名称建立数据库
' ExecuteSql(connStr, "master", "USE MASTER IF EXISTS (SELECT NAME FROM SYSDATABASES WHERE NAME='" + TxtDBFileName.Text.Trim + "') DROP DATABASE " + TxtDBFileName.Text.Trim)
ExecuteSql(connStr, "master", "CREATE DATABASE " + 数据库名)
'调用osql执行脚本
Dim sqlProcess As New System.Diagnostics.Process
sqlProcess.StartInfo.FileName = "osql.exe "
sqlProcess.StartInfo.Arguments = String.Format(" -U {0} -P {1} -d {2} -i {3}" ,用户名,密码, 数据库名, 脚本文件路径 )
sqlProcess.StartInfo.WindowStyle = Diagnostics.ProcessWindowStyle.Hidden
sqlProcess.Start()
sqlProcess.WaitForExit() '等待执行
sqlProcess.Close()
----------------附加数据库
EXEC sp_attach_db N'" +数据库名 + "', N'" + DATA文件路径+ "', N'" + LOG文件路径+ "'"