PHP使用PDO方式,将Mysql的数据转换成SQLite形式的一个function_MySQL
最近在做一个将mysql数据转换成sqlite数据的功能,因为要将image的数据切换为blob二进制形式保存,所以我就自己写一个类,从类中,我提取出这个方法来分享。为了以后还能正常使用,所以我使用了PDO方式来处理。
/** * 通过Mysql创建SQlite * $db 数据库 * $tbname 表名 * $is_images 需要保存的图片二进制数组 array("img1","img2","img3")形式,默认为false * return SQL的数组形式 */ function creat_sqlite($db, $tbname, $is_images = false){ $runsql1 = $db->query("SELECT * FROM `$tbname` limit 1"); $fields_rows = $runsql1->columnCount(); $tb_fields_info = array(); $tb_string = ""; for ($i = 0; $i < $fields_rows; $i++) { $dot = ($i > 0) ? "," : ""; $tb_meta = $runsql1->getColumnMeta($i); //如果存在数据且字段存在需要取消的字段中 if($is_images && in_array($tb_meta['name'], $is_images)){ continue; } $tb_string .= $dot.$tb_meta['name']; switch($tb_meta['native_type']){ case "VAR_STRING": $tb_string .= " "."varchar"; break; case "LONG": $tb_string .= " "."integer"; break; case "BLOB": $tb_string .= " "."text"; break; } if(isset($tb_meta['flags'][1]) && ($tb_meta['flags'][1] === "primary_key")){ $tb_string .= " "."PRIMARY KEY"; } if($tb_meta['flags'][0] === "not_null") { $tb_string .= " "."NOT NULL"; } } //创建数据的SQL语句 $creat_tbs['data'] = "CREATE TABLE IF NOT EXISTS data ($tb_string);"; //创建图片的SQL语句 if($is_images) { $tb_images = ''; foreach($is_images as $k => $v){ $di = ($k > 0) ? " , " : " "; $tb_images .= $di.$v." blob NOT NULL"; } $creat_tbs['images'] = "CREATE TABLE IF NOT EXISTS images ( id integer PRIMARY KEY NOT NULL, tid integer NOT NULL,$tb_images);"; } return $creat_tbs; }
demo生成的结果(没设置image)为(我将其转换成了json形式):
{"data":"CREATE TABLE IF NOT EXISTS data (id integer PRIMARY KEY NOT NULL,name varchar NOT NULL,nickname varchar NOT NULL,emails varchar NOT NULL,passwd varchar NOT NULL,status NOT NULL);"} |

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Cet article aborde l'erreur "Implom Open Open Wibrary" de MySQL. Le problème découle de l'incapacité de MySQL à localiser les bibliothèques partagées nécessaires (fichiers .so / .dll). Les solutions impliquent la vérification de l'installation de la bibliothèque via le package du système m

Cet article explore l'optimisation de l'utilisation de la mémoire MySQL dans Docker. Il traite des techniques de surveillance (statistiques Docker, du schéma de performance, des outils externes) et des stratégies de configuration. Il s'agit notamment des limites de mémoire Docker, de l'échange et des CGROUP, à côté

L'article discute de l'utilisation de l'instruction ALTER TABLE de MySQL pour modifier les tables, notamment en ajoutant / abandon les colonnes, en renommant des tables / colonnes et en modifiant les types de données de colonne.

Cet article compare l'installation de MySQL sur Linux directement par rapport à l'utilisation de conteneurs Podman, avec / sans phpmyadmin. Il détaille les étapes d'installation pour chaque méthode, mettant l'accent sur les avantages de Podman isolément, portabilité et reproductibilité, mais aussi

Cet article fournit un aperçu complet de SQLite, une base de données relationnelle autonome et sans serveur. Il détaille les avantages de SQLite (simplicité, portabilité, facilité d'utilisation) et les inconvénients (limitations de concurrence, défis d'évolutivité). C

L'article discute de la configuration du cryptage SSL / TLS pour MySQL, y compris la génération et la vérification de certificat. Le problème principal est d'utiliser les implications de sécurité des certificats auto-signés. [Compte de caractère: 159]

Ce guide démontre l'installation et la gestion de plusieurs versions MySQL sur MacOS à l'aide de Homebrew. Il met l'accent sur l'utilisation de Homebrew pour isoler les installations, empêchant les conflits. L'article détaille l'installation, les services de démarrage / d'arrêt et le meilleur PRA

L'article traite des outils de GUI MySQL populaires comme MySQL Workbench et PhpMyAdmin, en comparant leurs fonctionnalités et leur pertinence pour les débutants et les utilisateurs avancés. [159 caractères]
