Sql, deux champs de même valeur
qisbug
Messages postés
5
Date d'inscription
Statut
Membre
Dernière intervention
-
qisbub -
qisbub -
Bonjour,
Bonjour,
J'ai 1900 documents dans ma table spip_documents de ma base de données.
Dans la colonne titre, je n'ai rien
Dans la colonne Fichier j'ai ceci : mon-image.jpg
Je cherche une requête SQL qui permettrait de mettre dans 'titre' les mêmes indications que dans 'fichier'
de façon que les 1900 documents aient, chacun, un titre, sans être obligée de le faire un à un
J'ai fait ceci pour le document 58 mais ça ne fonctionne pas.
UPDATE spip_documents
SET 'titre'= VALUES('fichier')
FROM 'spip_documents' WHERE 'id_document' = 58
J'ai essayé ça aussi :
UPDATE spip_documents
SET 'titre'= ('fichier')
FROM 'spip_documents' WHERE 'id_document' = 58
Quelqu'un peut-il m 'aider ? Un grand merci d'avance, en espérant que cette question n'a pas été déjà posée (en tout cas je n'ai pas trouvé d'indication)
Bonjour,
J'ai 1900 documents dans ma table spip_documents de ma base de données.
Dans la colonne titre, je n'ai rien
Dans la colonne Fichier j'ai ceci : mon-image.jpg
Je cherche une requête SQL qui permettrait de mettre dans 'titre' les mêmes indications que dans 'fichier'
de façon que les 1900 documents aient, chacun, un titre, sans être obligée de le faire un à un
J'ai fait ceci pour le document 58 mais ça ne fonctionne pas.
UPDATE spip_documents
SET 'titre'= VALUES('fichier')
FROM 'spip_documents' WHERE 'id_document' = 58
J'ai essayé ça aussi :
UPDATE spip_documents
SET 'titre'= ('fichier')
FROM 'spip_documents' WHERE 'id_document' = 58
Quelqu'un peut-il m 'aider ? Un grand merci d'avance, en espérant que cette question n'a pas été déjà posée (en tout cas je n'ai pas trouvé d'indication)
A voir également:
- Sql, deux champs de même valeur
- Nombre de jours entre deux dates excel - Guide
- Deux ecran pc - Guide
- Comment faire deux colonnes sur word - Guide
- Deux compte whatsapp sur le même téléphone samsung - Guide
- Logiciel gratuit calcul valeur nutritionnelle - Télécharger - Santé & Bien-être
2 réponses
Bonjour,
Je vais coder en PHP pour traiter les 1900 documents en même temps.
<?php
$config = array('host' => 'myHost', 'user' => 'userName', 'pwd' => 'myPwd', 'base' => 'maBase'); // Remplace myHost par ton host, userName par ton nom d'utilisateur, myPwd par ton mot de passe, maBase par ta base
mysql_connect($config['host'], $config['user'], $config['pwd']);
mysql_select_db($config['base']);
for($i=0; $i < 1900; $i++){
$ask = mysql_query('SELECT * FROM 'maTable' WHERE ID = "' . $i . '"');
$array = mysql_fetch_array($ask);
$newValeur = $array['fichier']; // la variable prend la valeur du fichier dans la BDD
mysql_query('UPDATE 'maTable ' SET 'titre' = "'. $newValeur . '" WHERE ID = "'. $i . '"');
}
mysql_close();
?>
En espérant que ça marche, ce code est à intégrer sur une page en php, il suffit de charger la page une seule fois pour que ça marche. En espérant ne pas avoir fait de fautes de syntaxe, ni même de nommage, et que ça marche.
EDIT: <italic>Apparement, il accepte pas les ' de la touche 7 sur le clavier. Il suffit de les remplacer au bon endroit</italic>
Bon courage.
iBobos, une question? Une solution.
Je vais coder en PHP pour traiter les 1900 documents en même temps.
<?php
$config = array('host' => 'myHost', 'user' => 'userName', 'pwd' => 'myPwd', 'base' => 'maBase'); // Remplace myHost par ton host, userName par ton nom d'utilisateur, myPwd par ton mot de passe, maBase par ta base
mysql_connect($config['host'], $config['user'], $config['pwd']);
mysql_select_db($config['base']);
for($i=0; $i < 1900; $i++){
$ask = mysql_query('SELECT * FROM 'maTable' WHERE ID = "' . $i . '"');
$array = mysql_fetch_array($ask);
$newValeur = $array['fichier']; // la variable prend la valeur du fichier dans la BDD
mysql_query('UPDATE 'maTable ' SET 'titre' = "'. $newValeur . '" WHERE ID = "'. $i . '"');
}
mysql_close();
?>
En espérant que ça marche, ce code est à intégrer sur une page en php, il suffit de charger la page une seule fois pour que ça marche. En espérant ne pas avoir fait de fautes de syntaxe, ni même de nommage, et que ça marche.
EDIT: <italic>Apparement, il accepte pas les ' de la touche 7 sur le clavier. Il suffit de les remplacer au bon endroit</italic>
Bon courage.
iBobos, une question? Une solution.
Bonjour
J'ai enfin trouvé la requête SQL qui fonctionne. Voici : j'avais 1900 documents sans titre, dans la table spip_documents, et je voulais, pour chacun, mettre, dans la colonne titre, le contenu de la colonne 'fichier'.
Voici la requête SQL :
UPDATE 'spip_documents'
SET 'titre'='fichier'
WHERE 'titre'=""
Ce qui veut dire :
Mettre à jour (UPDATE) la table 'spip_documents'
en mettant 'titre'='fichier'
Lorsque le titre est vide
Mon problème est donc résolu. Merci à ceux qui m'ont aidée
J'ai enfin trouvé la requête SQL qui fonctionne. Voici : j'avais 1900 documents sans titre, dans la table spip_documents, et je voulais, pour chacun, mettre, dans la colonne titre, le contenu de la colonne 'fichier'.
Voici la requête SQL :
UPDATE 'spip_documents'
SET 'titre'='fichier'
WHERE 'titre'=""
Ce qui veut dire :
Mettre à jour (UPDATE) la table 'spip_documents'
en mettant 'titre'='fichier'
Lorsque le titre est vide
Mon problème est donc résolu. Merci à ceux qui m'ont aidée