A quoi sert la répétition de la ligne INSERT INTO `spip_articles`... dans une table ?

Bonjour,

J’édite le .sql d’une base et je vois que la ligne citée en fin de message revient plusieurs fois.

Si je regarde la table "Contenu de la table spip_articles je comprend cela comme étant le descriptif du contenu de la table qui suit; là j’ai 172 lignes dans ma table et cette ligne revient (entre autre) entre les articles 18 et 19, 41 et 42, 63 et 64… etc.

Elle est identique à chaque fois.
A quoi sert cette répétition ?

Au passage, je m’aperçois qu’entre le 53 et le 55, j’ai le 154 et que je n’ai pas de 154 entre le 153 et le 155… Si je regarde la base avec phpMyadmin, c’est la même chose… Je fais le ménage ?

Bonne journée,

Yves

INSERT INTO spip_articles (id_article, surtitre, titre, soustitre, id_rubrique, descriptif, chapo, texte, ps, date, statut, id_secteur, maj, export, date_redac, visites, referers, popularite, accepter_forum, date_modif, lang, langue_choisie, id_trad, extra, id_version, nom_site, url_site, composition, composition_lock, virtuel) VALUES

Bonjour,

Je ne vois pas de problème dans ton dump SQL, la commande MySQL « INSERT » permet de spécifier les champs (dans l’ordre) qui feront l’objet d’une intégration de données via la syntaxe suivante « VALUES ».

Elle est présente à chaque fois qu’une série d’enregistrements doit être ajoutée dans une table, autant de fois qu’il y a d’enregistrements à ajouter.

Ou alors je n’ai pas cerné ce sur quoi tu t’interroges, si tel est le cas, peux-tu le préciser ?

Cordialement,

Cédric JOUANNIN

Envoyé : mercredi 11 juin 2014 11:20

Bonjour à tous et toutes et les autres :=)

Cela fait froid dans le dos, ce qui, par nos grosses chaleurs, peut être vu comme rafraichissant ?
Brrrrr.

http://www.vice.com/fr/read/shodan-est-le-moteur-de-recherches-le-plus-dangereux-du-monde

Le Mercredi 11 juin 2014 11h35, jouannin cedric cedric.jouannin@reims.cci.fr a écrit :

Bonjour,

Je ne vois pas de problème dans ton dump SQL, la commande MySQL « INSERT » permet de spécifier les champs (dans l’ordre) qui feront l’objet d’une intégration de données via la syntaxe suivante « VALUES ».
Elle est présente à chaque fois qu’une série d’enregistrements doit être ajoutée dans une table, autant de fois qu’il y a d’enregistrements à ajouter.

Ou alors je n’ai pas cerné ce sur quoi tu t’interroges, si tel est le cas, peux-tu le préciser ?

Cordialement,

Cédric JOUANNIN

De : Yves Spip [mailto:yvesspip@gmail.com]
Envoyé : mercredi 11 juin 2014 11:20
À : SPIP users
Objet : [Spip] A quoi sert la répétition de la ligne INSERT INTO spip_articles… dans une table ?

Bonjour,

J’édite le .sql d’une base et je vois que la ligne citée en fin de message revient plusieurs fois.

Si je regarde la table "Contenu de la table spip_articles je comprend cela comme étant le descriptif du contenu de la table qui suit; là j’ai 172 lignes dans ma table et cette ligne revient (entre autre) entre les articles 18 et 19, 41 et 42, 63 et 64… etc.

Elle est identique à chaque fois.
A quoi sert cette répétition ?

Au passage, je m’aperçois qu’entre le 53 et le 55, j’ai le 154 et que je n’ai pas de 154 entre le 153 et le 155… Si je regarde la base avec phpMyadmin, c’est la même chose… Je fais le ménage ?

Bonne journée,

Yves

INSERT INTO spip_articles (id_article, surtitre, titre, soustitre, id_rubrique, descriptif, chapo, texte, ps, date, statut, id_secteur, maj, export, date_redac, visites, referers, popularite, accepter_forum, date_modif, lang, langue_choisie, id_trad, extra, id_version, nom_site, url_site, composition, composition_lock, virtuel) VALUES


liste spip
spip@rezo.net - désabonnement : envoyer un mail à spip-off@rezo.net

Infos et archives : http://listes.rezo.net/mailman/listinfo/spip
http://archives.rezo.net/spip.mbox/

Documentation de SPIP : http://www.spip.net/

Irc : de l’aide à toute heure : http://spip.net/irc

re-bonjour et merci pour ta réponse.

Mon souci c’est pas la première ligne qui commence par « insert »… etc

ce que je me demande c’est pourquoi sa répétition un peu n’importe où (pour moi)

exemple :
(41, ‹  ›, '04. Gaule … (et la suite de l’article)

ligne suivante :
INSERT INTO spip_articles (`id_a…

et ligne suivante :
(42, ‹  ›, '05. Giusto (et la suite de l’article)

Il n’y a aucune différence de structure entre les lignes 41 et 42 pourtant « insert into… » revient.

Et ce plusieurs fois dans la table…

(mon idée finale étant de faire une fusion de deux tables spip_aricle de deux sites pour n’en faire qu’une (et de faire de même pour les autres tables utiles) (et pas mal de tripatouillages annexes) (spip-fusion plante dans le cas de ces deux sites).

Encore merci et bonne journée à toi.

Bien cordialement,

Y

Bonjour,

la syntax de INSERT est :
INSERT INTO `nom_de_la_table` VALUES [ les valeurs ] ;

Donc depuis le INSERT, jusqu'au ';' final, ce n'est qu'une seule
commande. Maintenant, il est possible de préciser ( comme c'est le cas
ici ), ce que l'on va insérer et ou. Dans
INSERT INTO `spip_articles` (`id_article`, `surtitre`, `titre`,
`soustitre`, `id_rubrique`, `descriptif`, `chapo`, `texte`, `ps`,
`date`, `statut`, `id_secteur`, `maj`, `export`, `date_redac`,
`visites`, `referers`, `popularite`, `accepter_forum`, `date_modif`,
`lang`, `langue_choisie`, `id_trad`, `extra`, `id_version`, `nom_site`,
`url_site`, `composition`, `composition_lock`, `virtuel`) VALUES
on précise que ce qui vient après le VALUES corrspond dans l’ordre à
:`id_article`, `surtitre`, `titre`, `soustitre`, `id_rubrique`,
`descriptif`, `chapo`, `texte`, `ps`, `date`, `statut`, `id_secteur`,
`maj`, `export`, `date_redac`, `visites`, `referers`, `popularite`,
`accepter_forum`, `date_modif`, `lang`, `langue_choisie`, `id_trad`,
`extra`, `id_version`, `nom_site`, `url_site`, `composition`,
`composition_lock`, `virtuel`.

Si l'on omet cette partie et qu'il y a une différence minime entre la
table d'origine et celle avec laquelle on a généré la requête, les
choses commencent à mal se passer. Bref, préciser ce que l'on insère
plutôt que d'espérer que la structure de la table soit la bonne permet
de limiter les risques lors de l'exécution de la requête.
Moralité, s'il y a 41 articles il y aura 41
INSERT INTO `spip_articles` (`id_article`, `surtitre`, `titre`,
`soustitre`, `id_rubrique`, `descriptif`, `chapo`, `texte`, `ps`,
`date`, `statut`, `id_secteur`, `maj`, `export`, `date_redac`,
`visites`, `referers`, `popularite`, `accepter_forum`, `date_modif`,
`lang`, `langue_choisie`, `id_trad`, `extra`, `id_version`, `nom_site`,
`url_site`, `composition`, `composition_lock`, `virtuel`) VALUES

Re,

C’est ce que je mentionnais, la commande « INSERT » est présente dans un dump SQL autant de fois qu’il y a d’enregistrements à ajouter dans une table.

Dans ton cas :

  • « INSERT INTO spip_articles (…) VALUES (41, ‹  ›, '04. Gaule …) » va ajouter l’article n°41

  • « INSERT INTO spip_articles (…) VALUES (42, ‹  ›, '05. Giust, …) » va ajouter l’article n°42

Et cela donc pour chaque enregistrement à ajouter, la répétition de la commande « INSERT » est donc nécessaire.

J’espère avoir pu répondre à tes interrogations, sinon il va falloir d’avantage éclaircir le sujet. :wink:

Cordialement,

Cédric JOUANNIN

Envoyé : mercredi 11 juin 2014 15:07