把另一数据库实例中数据按主键导入本实例相应数据表内
两个数据库实例
一个向另一个导入批量数据
如以下执行向本数据库表中导入y2026hxp_online中相应数据,按主键排除
以下表中主键为CAS,JTJND,TJND,XZQH
INSERT INTO BIZ_DATA_TABLE
SELECT *
FROM DB2.BIZ_DATA_TABLE WTTP
WHERE NOT EXISTS
(SELECT 1
FROM BIZ_DATA_TABLE TMP
WHERE WTTP.CAS = TMP.CAS AND WTTP.JTJND = TMP.JTJND AND WTTP.TJND = TMP.TJND AND WTTP.XZQH = TMP.XZQH);
根据以上语句,形成以下直接执行的过程
-- 动态生成 INSERT 语句并执行
SET @SQL =
(SELECT GROUP_CONCAT(CC ORDER BY CC ASC SEPARATOR ';') CCC
FROM (SELECT CONCAT('INSERT INTO ', TABLE_NAME, ' SELECT * FROM y2026hxp_online.', TABLE_NAME, ' WTTP WHERE NOT EXISTS', '(SELECT 1 FROM ', TABLE_NAME, ' TMP WHERE ', GROUP_CONCAT(CONCAT('WTTP.`', COLUMN_NAME, '` = TMP.`', COLUMN_NAME, '`') ORDER BY COLUMN_NAME ASC SEPARATOR ' AND '), ');') CC
FROM INFORMATION_SCHEMA.COLUMNS
WHERE (TABLE_NAME LIKE 'tb%' OR TABLE_NAME LIKE 'bpm%' OR TABLE_NAME LIKE 'base_user%') AND TABLE_SCHEMA =
DATABASE() AND COLUMN_KEY = 'pri'
GROUP BY TABLE_NAME) WW);
PREPARE STMT FROM @SQL;
EXECUTE STMT;
DEALLOCATE PREPARE STMT;
骑着母猪去打猎的备忘录,如有侵权请联系本人骑着母猪去打猎删除。https://www.cnblogs.com/shichq/p/20362179
如果本文对您有所帮助,麻烦在下面评论里面随便敲上那么几下键盘,谢谢了
浙公网安备 33010602011771号