Maison >base de données >tutoriel mysql >Comment convertir un fichier SQL de vidage MySQL en base de données SQLite3 ?
Conversion de MySQL Dump SQL en base de données SQLite3
L'importation d'un fichier SQL de dump MySQL dans une base de données SQLite3 nécessite une conversion pour garantir la compatibilité.
Le script shell fourni offre un moyen automatisé de convertir le fichier de vidage :
<code class="shell">#!/bin/sh # Usage: <dumpname> if [ "x" == "x" ]; then echo "Usage: <dumpname>" exit fi cat | grep -v ' KEY "' | grep -v ' UNIQUE KEY "' | grep -v ' PRIMARY KEY ' | sed '/^SET/d' | sed 's/ unsigned / /g' | sed 's/ auto_increment/ primary key autoincrement/g' | sed 's/ smallint([0-9]*) / integer /g' | sed 's/ tinyint([0-9]*) / integer /g' | sed 's/ int([0-9]*) / integer /g' | sed 's/ character set [^ ]* / /g' | sed 's/ enum([^)]*) / varchar(255) /g' | sed 's/ on update [^,]*//g' | perl -e 'local $/;$_=<>;s/,\n\)/\n\)/gs;print "begin;\n";print;print "commit;\n"' | perl -pe ' if (/^(INSERT.+?)\(/) { $a=; s/\'\''/'\'\''/g; s/\n/\n/g; s/\),\(/\);\n$a\(/g; } ' > .sql cat .sql | sqlite3 .db > .err ERRORS=`cat .err | wc -l` if [ $ERRORS == 0 ]; then echo "Conversion completed without error. Output file: .db" rm .sql rm .err rm tmp else echo "There were errors during conversion. Please review .err and .sql for details." fi</code>
Le script effectue les transformations suivantes :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!