通过 PHP 将一张表从 MySQL 复制到 SQLite
Posted
技术标签:
【中文标题】通过 PHP 将一张表从 MySQL 复制到 SQLite【英文标题】:Copying one table from MySQL to SQLite through PHP 【发布时间】:2016-08-29 02:10:54 【问题描述】:我的 mysql 数据库中有一堆音乐数据,我需要将其复制到另一个 MySQL,但只复制选定的列(艺术家、歌曲、持续时间)。
MySQL 127.0.0.1 - 数据库Music
| Artist | Song | Duration | Location | Bitrate | Rating | Times Played |
------------------------------------------------------------------------------
| Bob | Song 1 | 11:06 | C:\b\1.mp3 | 160kbps | 5 | 132 |
| Jack | Song 7 | 0:06 | C:\j\7.mp3 | 160kbps | 2 | 10 |
| Mike | Song 3 | 3:06 | C:\m\3.mp3 | 128kbps | 4 | 150 |
| Mike | Song 5 | 5:06 | C:\m\5.mp3 | 128kbps | 1 | 222 |
| ------------------------------ 5000+ records ------------------------------|
SQLite 192.168.10.100 - 数据库Music
| Artist | Song | Duration |
------------------------------
| Bob | Song 1 | 11:06 |
| Mike | Song 3 | 3:06 |
| Mike | Song 5 | 5:06 |
|~~~~~~~ and so on... ~~~~~~~|
挑战是复制Times Played
超过100+ 的三列,因此不应将Jack
歌曲Song 7
复制到新数据库中。
虽然我尝试将 select
查询转储到 database.sql
文件并将其提供给 SQLite,但每次都必须手动完成转储。相反,我需要一个可以每天 CRON 的 php 脚本。
【问题讨论】:
看这个:***.com/a/36924293/4980017其实需要做一个简单的流程 看起来不错。但我有一个启示。如果第二个数据库在 SQLite 下怎么办? 那么,就简单了。因为您是通过 PHP 执行此操作的。因此,由您决定使其与您喜欢的任何数据库引擎兼容 【参考方案1】:基本方法:
INSERT INTO databese1.Music ( Artist , Song , Duration )
SELECT Artist , Song , Duration
FROM database2.Music
您需要唯一标识每个数据库
【讨论】:
以上是关于通过 PHP 将一张表从 MySQL 复制到 SQLite的主要内容,如果未能解决你的问题,请参考以下文章
oracle 中如何将一张500万数据的表从一个库快速转移到另外一个库
在 MySQL 中,如何将一张表的内容复制到同一个数据库中的另一张表中?
在 MySQL 中,如何将一张表的内容复制到同一个数据库中的另一张表中?