You have an error in your SQL syntax
Livvie
-
funnycat Messages postés 153 Date d'inscription Statut Membre Dernière intervention -
funnycat Messages postés 153 Date d'inscription Statut Membre Dernière intervention -
Salit à tous
j'ai essayé de generer ma base de donnée à partir du diagramme de classe mais toujours je rencontres des erreurs dont je sais pas pourquoi?
voila une de erreurs que j'ai rencontré
#1064 - 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 ') )' at line 21
cette erreure apparait lors de la création d'une table produit voila son code sql
quel est la signification du primary key()?
merci pour toute aide
j'ai essayé de generer ma base de donnée à partir du diagramme de classe mais toujours je rencontres des erreurs dont je sais pas pourquoi?
voila une de erreurs que j'ai rencontré
#1064 - 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 ') )' at line 21
cette erreure apparait lors de la création d'une table produit voila son code sql
create table Produit ( idProduit int, typeProduit varchar(254), categorie varchar(254), nom varchar(254), marque varchar(254), reference varchar(254), image blob, description text, taille int, auteur varchar(254), date_fab datetime, dateExp datetime, precaution varchar(254), prix numeric(8,0), disponibilite bool, primary key () );
quel est la signification du primary key()?
merci pour toute aide
A voir également:
- You have an error in your SQL syntax
- In da place - Forum Mail
- Dc in - Forum Audio
- Deco in paris avis ✓ - Forum Consommation & Internet
- Navigation in private - Guide
- Network error iptv - Forum Réseaux sociaux
1 réponse
Bonjour,
La primary key (alias la : clé primaire) correspond à une colonne où tous les enregistrement vont être unique. C'est en quelque sorte une référence unique pour chaque ligne. En l'occurrence dans votre cas, la clé primaire sera surement idProduit.
Votre code ressemblera donc surement à ceci :
Une autre manière d'insérer la clé primaire consiste à insérer "PRIMARY KEY" sur la ligne même du champ concerné (voir un exemple sur cette fiche explicative : https://sql.sh/cours/create-table ).
Si je peux me permettre, voici une autre façon de créer votre table :
Petites astuces utilisées :
- Que des minuscules pour le nom des tables et des colonnes
- préfixe pour chaque nom de colonne (permet d'éviter les confusions si vous devez utiliser des jointures)
- Clé primaire non signée (il n'y aura jamais de valeur négative).
Cordialement,
La primary key (alias la : clé primaire) correspond à une colonne où tous les enregistrement vont être unique. C'est en quelque sorte une référence unique pour chaque ligne. En l'occurrence dans votre cas, la clé primaire sera surement idProduit.
Votre code ressemblera donc surement à ceci :
CREATE TABLE Produit ( idProduit int, typeProduit varchar(254), categorie varchar(254), nom varchar(254), marque varchar(254), reference varchar(254), image blob, description text, taille int, auteur varchar(254), date_fab datetime, dateExp datetime, precaution varchar(254), prix numeric(8,0), disponibilite bool, PRIMARY KEY (idProduit) );
Une autre manière d'insérer la clé primaire consiste à insérer "PRIMARY KEY" sur la ligne même du champ concerné (voir un exemple sur cette fiche explicative : https://sql.sh/cours/create-table ).
Si je peux me permettre, voici une autre façon de créer votre table :
CREATE TABLE produit ( p_id INT PRIMARY KEY UNSIGNED NOT NULL, p_type VARCHAR(255), p_categorie VARCHAR(255), p_nom VARCHAR(255), p_marque VARCHAR(255), p_reference VARCHAR(255), p_image BLOB, p_description TEXT, p_taille INT, p_auteur VARCHAR(255), p_date_fab DATETIME, p_date_exp DATETIME, p_precaution VARCHAR(255), p_prix NUMERIC(8,0), p_disponibilite BOOL );
Petites astuces utilisées :
- Que des minuscules pour le nom des tables et des colonnes
- préfixe pour chaque nom de colonne (permet d'éviter les confusions si vous devez utiliser des jointures)
- Clé primaire non signée (il n'y aura jamais de valeur négative).
Cordialement,