Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

ajouter une donnée dans le champ d'une table MySQL

32 réponses
Avatar
antoine
Bonsoir,

Est-il possible d'ajouter une donn=E9e, en plus de donn=E9es d=E9j=E0 enreg=
istr=E9es,
dans le champ d'une table MySQL ?
Et si oui, comment ?

ins=E9rer, remplacer, updater oui mais ajouter ... ?

Merci et bonne fin de soir=E9e.

antoine

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to debian-user-french-REQUEST@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org

10 réponses

1 2 3 4
Avatar
REMY Pierre Etienne
a écrit :
Peux-tu nous donner tout les champs de ta table "auteur_philo" car je ne
saisis pas bien comment se structure celle-ci.




Simplifions :
Un champ = "numéro_philo" (increment)
et un champ = "auteur_philo"



Puisque l'incrément est automatique, la méthode suivante devrait
fonctionner pour ajouter un nouvel auteur :

//il faut se connecter a la base de données

$nouvel_auteur = "kant";
// il faudra également vérifier que kant n'existe pas déjà dans la BDD.
//si kant n'existe pas déjà, alors on l'ajoute
$sql = "INSERT INTO auteur(auteur_philo) VALUES ('$nouvel_auteur')";
if ($requete = mysql_query($sql))
{
echo '<p>Nouvel auteur : '.$nouvel_auteur.' ajouté à la base de
données</p>';
}
else
{
echo'<p>Echec lors de l'ajour de '.$nouvel_auteur.' comme nouvel
auteur</p>;
}




Une question : tu stockes tous les auteurs philosophiques dans un seul
champ séparé par un espace ??? ou bien sont-ils stockés individuellement
dans une ligne pour chacun ???





Dans le cas ou tu stocks tout dans une seul ligne, il sera difficile
(mais pas impossible) de vérifier les doublons. Et je suppose
qu'ensuite, l'identifiant de l'auteur philo est utilisé pour renseigner
le champ auteur dans une table livre.
Si je pouvais avoir les 2 méthodes :
"séparées par un espace" et "dans une ligne pour chacun".



Donc séparer dans un espace, le code serait (mais préfere le stockage 1
ligne, 1 auteur)

//il faut se connecter a la base de données

$nouvel_auteur = "kant"; // il faudra également vérifier que kant
n'existe pas déjà dans la BDD.
$sql = SELECT auteur_philo FROM auteur;
$requete = mysql_query($sql);
$auteur_philo = mysql_result($requete, 0) // le paramètre 0 est pour
récupérer la 1ere ligne du résultat de $requete
$auteur_philo .= " ".$nouvel_auteur;
$sql = "INSERT INTO auteur(auteur_philo) VALUES ('$nouvel_auteur')";
if ($requete = mysql_query($sql))
{
echo '<p>Nouvel auteur : '.$nouvel_auteur.' ajouté à la base de
données</p>';
}
else
{
echo'<p>Echec lors de l'ajour de '.$nouvel_auteur.' comme nouvel
auteur</p>;
}
antoine




Les scripts n'ont pas été vérifiés, mais ça donne une idée.

NE TIENS PAS COMPTE DE CETTE REMARQUE SI JE SUIS A COTE DE LA PLAQUE :
Je serai curieux de voir la structure de la BDD (tables et champs) car
une table 'auteur_philo' me parait restrictive. Un table 'auteur' avec
une table 'type de littérature' qui aurait pour contenu '1=>philo'
'2=>policier' '3=>historique'... (je sais pas exactement, ce sont des
exemples) et la table 'auteur' aurait un champ 'type de littérature' qui
piocherait l'identifiant correspondant dans la table 'type de
littérature'. Et encore, un auteur peu avoir plusieurs 'types de
littérature' et donc attribuer le 'type de littérature' à un ouvrage
plutôt qu'a un auteur !

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
fabrice régnier
salut,

utilise CONCAT et rien d'autre.

http://dev.mysql.com/doc/refman/5.0/fr/string-functions.html

a+

f.

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
antoine
Bonsoir,

Voici la bonne syntaxe :
UPDATE livres SET auteur_philo=CONCAT('$auteur', '<br>', 'albert camus', ' ', '$date') WHERE auteur LIKE '$auteur' ";

Ce qui va afficher les données comme ceci :
albert camus 2009-03-01
kant 2009-03-01
alain 2009-03-01
...

Ceci entraîne une taille de données dans la champ " auteur" qui v a vite s'amplifier.

Comment supprimer les données si la taille des enregistrements dé passe un certain nombre,
par exemple : 100 Ko ?

merci.

antoine

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Sylvain Sauvage
, dimanche 1 mars 2009, 20:48:12 CET

Bonsoir,



’soir,

Voici la bonne syntaxe :
UPDATE livres SET auteur_philo=CONCAT('$auteur', '<br>',
'albert camus', ' ', '$date') WHERE auteur LIKE '$auteur' ";

Ce qui va afficher les données comme ceci :
albert camus 2009-03-01
kant 2009-03-01
alain 2009-03-01
...



STOP !

Cette liste n’est pas le lieu pour faire un cours. (Ce n’ est
pas le lieu pour des problèmes de conception de SI, ni non plus
de programmation SQL d’ailleurs.)

Mais faire ce que tu proposes c’est totalement mécomprendre
les bases de données. Les données qui sont dans un champ doivent
être, pour le SGBD, atomiques. Il ne doit pas passer son temps à
les découper ou à les agglutiner.
Ta base n’est même pas en 1NF !
http://fr.wikipedia.org/wiki/Forme_normale_(bases_de_données_relationn elles)

Donc on arrête les conneries tout de suite et on se renseigne
sur la conception des systèmes d’information.

--
Sylvain Sauvage

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
antoine
Le dimanche 1 mars 2009 21:07, Sylvain Sauvage a écrit :
STOP !
Cette liste n’est pas le lieu pour faire un cours. (Ce n’ est
pas le lieu pour des problèmes de conception de SI, ni non plus
de programmation SQL d’ailleurs.)
Mais faire ce que tu proposes c’est totalement mécomprendre
les bases de données. Les données qui sont dans un champ doivent
être, pour le SGBD, atomiques. Il ne doit pas passer son temps à
les découper ou à les agglutiner.
Ta base n’est même pas en 1NF !
http://fr.wikipedia.org/wiki/Forme_normale_(bases_de_données_relatio nnelles)
Donc on arrête les conneries tout de suite et on se renseigne
sur la conception des systèmes d’information.
Sylvain Sauvage


--------------------

Tu portes très bien ton nom !

Il s'agit de rendre service à ceux qui voudraient concaténer des données mysql.

La ligne n'était qu'un exemple rapide sans à l'alourdir avec la j urisprudence "1NF" ou "atomique".

Donc "on arrête ce type de réponses-conneries tout de suite et on renseigne sur
la politesse et le droit de ne pas jouer les petits chefs de service".

antoine

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Thierry Chatelet
--------------------

Tu portes très bien ton nom !

Il s'agit de rendre service à ceux qui voudraient concaténer de s données
mysql.

La ligne n'était qu'un exemple rapide sans à l'alourdir avec la
jurisprudence "1NF" ou "atomique".

Donc "on arrête ce type de réponses-conneries tout de suite et on renseigne
sur la politesse et le droit de ne pas jouer les petits chefs de service".

antoine




Sylvin est quelqu' un qui aide beaucoup sur cette liste, et ta question de
départ est plutôt mal posée, et au lieu de répondre com me tu le fais, tu
devrais le remercier de de te répondre. Fin du troll du WE
Thierry

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Stephane Bortzmeyer
On Sun, Mar 01, 2009 at 09:46:40PM +0100,
wrote
a message of 40 lines which said:

Il s'agit de rendre service à ceux qui voudraient concaténer des
données mysql.



Quand quelqu'un demande comment traverser l'Atlantique à la nage, je
ne l'aide pas, je ne lui conseille pas des marques de maillot de bain,
je lui dit que c'est une connerie. Sylvain a 100 % raison.

Donc "on arrête ce type de réponses-conneries tout de suite et on
renseigne sur la politesse et le droit de ne pas jouer les petits
chefs de service".



Si vous mettez Sylvain dans votre killfile, merci de m'y mettre aussi,
cela serait un honneur pour moi.

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Philippe Merlin
Bonsoir,
Le dimanche 1 mars 2009, Sylvain Sauvage a écrit :
, dimanche 1 mars 2009, 20:48:12 CET

> Bonsoir,

’soir,

>

Cette liste n’est pas le lieu pour faire un cours. (Ce n†™est
pas le lieu pour des problèmes de conception de SI, ni non plus
de programmation SQL d’ailleurs.)

Mais faire ce que tu proposes c’est totalement mécomprendre
les bases de données. Les données qui sont dans un champ doivent
être, pour le SGBD, atomiques. Il ne doit pas passer son temps à
les découper ou à les agglutiner.
Ta base n’est même pas en 1NF !
http://fr.wikipedia.org/wiki/Forme_normale_(bases_de_données_relatio nnelles
)

Donc on arrête les conneries tout de suite et on se renseigne
sur la conception des systèmes d’information.

--
Sylvain Sauvage


Je suis à 120 pour cent d'accord avec ce que vient d'écrire Sylva in,
A+
Philippe


--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
Thierry Chatelet
On 1 March 2009 21:56:27 Thierry Chatelet wrote:
--------------------

> Tu portes très bien ton nom !
>
> Il s'agit de rendre service à ceux qui voudraient concaténer des données
> mysql.
>
> La ligne n'était qu'un exemple rapide sans à l'alourdir avec la
> jurisprudence "1NF" ou "atomique".
>
> Donc "on arrête ce type de réponses-conneries tout de suite e t on
> renseigne sur la politesse et le droit de ne pas jouer les petits chefs
> de service".
>
> antoine

Sylvin est quelqu' un qui aide beaucoup sur cette liste, et ta question de
départ est plutôt mal posée, et au lieu de répondre c omme tu le fais, tu
devrais le remercier de de te répondre. Fin du troll du WE
Thierry



Aie, excuse SylvAin

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
Avatar
daniel huhardeaux
a écrit :
Le dimanche 1 mars 2009 21:07, Sylvain Sauvage a écrit :

STOP !
Cette liste n’est pas le lieu pour faire un cours.



[...]

Tu portes très bien ton nom !

Il s'agit de rendre service à ceux qui voudraient concaténer des données mysql.


Sylvain a raison: avant de poser des questions, un minimum de recherche
personnelle. De plus, je rappelle que la liste s'appelle
Debian-User-French, je trouve que ces derniers temps beaucoup de sujets
ne concernent pas la liste ceci sans même être estamplillés HS.

--
Daniel
Dubitatif quant à l'avenir de la liste

--
Lisez la FAQ de la liste avant de poser une question :
http://wiki.debian.org/fr/FrenchLists
Vous pouvez aussi ajouter le mot ``spam'' dans vos champs "From" et
"Reply-To:"

To UNSUBSCRIBE, email to
with a subject of "unsubscribe". Trouble? Contact
1 2 3 4