下面我们开始复制数据库:
1、打开SqlYog community Edition,分别在不同的选项卡中打开源数据库服务器与目标数据库服务器,这一点很重。
在源数据库服务器选项卡中你将看到所有数据库列表。
2、在需要复制迁移的数据库上右击,在d出菜单中选择“Copy Database to Different Host/Database”
3、在d出对话框中,我们能看到源数据库服务器及目标服务器,在左边,通过勾选复选框来选择需要复制迁移的对象,如表、函数、触发器等,也可以选择所有对象。
4、在右边选择需要迁移的目标服务器或数据库
5、根据你的需要选择复制类型:“Structure and Data”或“Structure only”,即“结构和数据”或“仅结构”。
6、选择结束后点击“Copy”按钮开始复制,知道数据迁移结束。拷贝服务器的数据库文件,然后在本地附加数据库
附加数据库
USE [master]
GO
CREATE DATABASE [MySQLDB] ON
( FILENAME = 'D:\workspace\TestDBmdf' ),
( FILENAME = 'D:\workspace\TestDB_BGndf' ),
( FILENAME = 'D:\workspace\TestDB_logldf' )
FOR ATTACH建议使用数据库备份功能。
右键数据库——》任务——》备份数据库
想要附加到别的库(或者使用该库)
右键-》任务-》还原数据库-》
注意:选择需要还原数据库的路径,可还原现有的库,也可以还原为新库补充你的函数体:
string connString = @"Provider=MicrosoftJetOLEDB40;Data Source=C:\Amdb;";
string comString1 = @"select into [n] from [D:\Bmdb][n]";
基本就是这样(默认服务器和架构一致),最好你还写一个判断A数据库原本有没有这个表n,防止重复插入。
下面是判断表有无存在的方法
public static bool tableExist(string tableName)
{
try
{
string connString = @"Provider=MicrosoftJetOLEDB40;Data Source=C:\Datamdb;";
OleDbConnection conn = new OleDbConnection(connString);
connOpen();
DataTable dt = connGetSchema("Tables");
connClose();
DataRow[] drs = dtSelect(stringFormat("TABLE_TYPE='TABLE' and TABLE_NAME='{0}'", tableName));
if (drsLength > 0)
{
return true;
}
else
{
return false;
}
}
catch (SystemException ex)
{
SystemWindowsFormsMessageBoxShow(exMessage);
return false;
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)