Maison > base de données > tutoriel mysql > Comment insérer efficacement plusieurs lignes dans une base de données SQLite ?

Comment insérer efficacement plusieurs lignes dans une base de données SQLite ?

DDD
Libérer: 2025-01-23 13:58:09
original
312 Les gens l'ont consulté

How to Efficiently Insert Multiple Rows into an SQLite Database?

Compétences d'insertion multi-lignes SQLite

Contrairement à MySQL, SQLite lui-même ne prend pas directement en charge la syntaxe concise consistant à insérer plusieurs lignes en même temps. Il existe cependant une méthode alternative pour obtenir un effet similaire.

Syntaxe d'insertion multi-lignes SQLite

Pour insérer plusieurs lignes dans SQLite, vous pouvez utiliser la syntaxe suivante :

<code><br></br>INSERT INTO 'tablename'<br></br>SELECT 'data1' AS 'column1', 'data2' AS 'column2'<br></br>UNION ALL SELECT 'data1', 'data2'<br></br>UNION ALL SELECT 'data1', 'data2'<br></br>UNION ALL SELECT 'data1', 'data2'<br></br></code>
Copier après la connexion

Dans cet exemple, les données 'data1' et 'data2' seront insérées quatre fois dans la table 'tablename'.

La différence entre UNION et UNION ALL

L'utilisation de UNION ALL garantit que toutes les lignes sont insérées, même si elles contiennent des données en double. Si ALL est omis, les lignes en double sont éliminées.

Considérations relatives aux performances

Bien que cette approche permette d'insérer plusieurs lignes, elle n'est pas nécessairement plus efficace que l'utilisation d'une seule instruction INSERT dans une transaction. Pour de meilleures performances, pensez à utiliser la syntaxe suivante :

<code><br></br>BEGIN TRANSACTION;<br></br>INSERT INTO 'tablename' VALUES ('data1', 'data2');<br></br>INSERT INTO 'tablename' VALUES ('data3', 'data4');<br></br>...<br></br>COMMIT;<br></br></code>
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal