[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: créer les entrée de tables pour MySQL



bernard.schoenacker@free.fr wrote on Thu, Apr 06, 2017 at 06:35:49PM +0200
> 
> 
> ----- Mail original -----
> De: "Jean-Michel OLTRA" <jm.oltra.antispam@espinasse.net>
> À: debian-user-french@lists.debian.org
> Envoyé: Jeudi 6 Avril 2017 17:58:17
> Objet: Re: créer les entrée de tables pour MySQL
> 
> 
>     Bonjour,
> 
> 
> Le jeudi 06 avril 2017, bernard.schoenacker@free.fr a écrit...
> 
> 
> 
> > mysql> INSERT INTO `mailserver`.`virtual_domains`
> >     -> (`name`)
> >     -> VALUES
> >     -> (`happy-tux.org`)
> >     -> (`brotsch.happy-tux.org`)
> >     -> (`brotsch`)
> >     -> (`localhost.happy-tux.org`);
> > ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '(`brotsch.happy-tux.org`)
> 
> Il te manque les virgules entre les blocs de values :
> 
> values (....), (.....), …etc…
> Tu peux te passer des ` pour les noms d'objets de la base.
> Mets les valeurs entre guillemets simples : 'brotsch'
> 
> insert into mytable values ('value1'), ('value2'), …
> 
> -- 
> jm
> 
> bonjour,
> 
> merci pour la correction mais il persiste encore une erreur :
> 
> mysql> SELECT * FROM mailserver.virtual_domains;
> ERROR 1146 (42S02): Table 'mailserver.virtual_domains' doesn't exist
> 
> comment créer la table ?

En regardant la demande initiale et en supposant que la base de données mailserver existe :

mysql> create table mailserver.virtual_domains (id int not null primary key auto_increment, name varchar(255));

puis les insertions :

mysql> insert into table mailserver.virtual_domains (name) values ('value1'), ('value2'));

Il faut en effet spécifier le nom des champs dès lors que le nombre de champs à initialiser ne correspond pas au nombre
de champs existants.

Dominique
--


Reply to: