我有条件,其中有一个数据库(在mssql中)有一些表,它将被复制到另一个数据库中。复制时间必须是特定时间,这将从应用程序中提供。就我而言,我使用Java编程。有没有最简单的方法呢?
答案 0 :(得分:0)
在MS SQL Server中创建SQL代理作业,将数据从一个数据库复制到另一个数据库。然后在Java应用程序中连接到MS SQL Server并启动SQL Server代理作业。
Connection rConn = //Your Connection details
CallableStatement cs = rConn.prepareCall("EXECUTE dbo.sp_start_job N'your job name'");
boolean checkvar = cs.execute();
您需要连接到MSDB
数据库,并且您与之关联的帐户必须属于sysadmin
角色或SQLAgentOperatorRole
您工作中的SQL语句可能如下所示:
INSERT INTO DestinationDatabseName.dbo.DestinationTable (ColumnNames)
SELECT YourColumns
FROM SourceDatabaseName.dbo.SourceTable