IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration MySQL Discussion :

Problème de création des utilisateurs et attribution des privilèges sous Mysql


Sujet :

Administration MySQL

  1. #21
    Débutant
    Inscrit en
    Mai 2009
    Messages
    392
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 392
    Points : 35
    Points
    35
    Par défaut
    Pour restaurer ce dump dans l'autre PC, il faut :
    1) y transférer le fichier bdcopy ;
    2) y créer la BDD dans MySQL
    3) y exécuter la commande suivante en ligne de commande :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysql -u root -proot nom_de_la_bdd_créée < bdcopy

    J'ai crée une nouvelle base de donnée "commerce1" pour contenir les tables et ses données de l'ancienne base de données "commerce".
    Le chemin de cette base "commerce1" est :
    "C:\Documents and Settings\All Users\Application Data\MySQL\MySQL Server 5.5\data"

    J'ai déplacé le fichier sql "bdcopy" dans le deuxième PC.
    Le chemin de ce fichier sql "bdcopy" est :
    "C:\Program Files\MySQL\MySQL Server 5.5\bin"

    Puis, j'ai tapé la commande suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    mysql> create database commerce1;
    Query OK, 1 row affected (0.00 sec)
     
    mysql> mysql -u root -proot commerce1 < bdcopy;
    J'ai eu le message d'erreur suivant:

    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 'mysql -u root -proot commerce1 < bdcopy' at line 1

  2. #22
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 793
    Points : 34 024
    Points
    34 024
    Billets dans le blog
    14
    Par défaut
    Tu es long à comprendre toi !
    Citation Envoyé par CinéPhil
    3) y exécuter la commande suivante en ligne de commande :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysql -u root -proot nom_de_la_bdd_créée < bdcopy
    Pas dans MySQL !
    Il faut que tu sortes de MySQL avec la requête QUIT;
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  3. #23
    Débutant
    Inscrit en
    Mai 2009
    Messages
    392
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 392
    Points : 35
    Points
    35
    Par défaut
    Bonjour,

    Je vous remercie pour vos aides.

    1) Pardon, il m'arrive lors d'une création d'une table dans une base données, j'ai l'erreur suivant :
    Can't create table '.\commerce\client.frm' <errno:150>
    Je n'ai pas compris c'est quoi cet erreur ? Quelle est la solution ?

    2) Après la création de la base de données, je voulais connecter et manipuler cette base à partir d'un programme java via JDBC et servlet sous Eclipse avec le serveur Tomcat.

    Pourriez-vous m'envoyer des tutoriels et des exemples pour m'aider et me guider à bien configurer l'environnement de travail (Eclipse, Apache, API JDBC) et à manipuler (insertion, modifier, afficher et supprimer) des données dans une base de donnée ?

    3) Je voulais créer une page HTML permettant de saisir les informations relative à un client. Puis, créer une servlet qui récupère les données saisies par l’utilisateur et permet de les insérer dans la table client de la base Commerce.

    Pourriez-vous m'envoyer des exemples guidés pour m'aider à manipuler des servlets ?


    Merci.

  4. #24
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 793
    Points : 34 024
    Points
    34 024
    Billets dans le blog
    14
    Par défaut
    Euh... tu as cherché avant de poser ces questions ?

    Il y a plein de tutoriels sur Developpez.com sur tous ces sujets et te donnera facilement des liens vers la doc ou des sites qui expliquent les codes d'erreur de MySQL.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  5. #25
    Débutant
    Inscrit en
    Mai 2009
    Messages
    392
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 392
    Points : 35
    Points
    35
    Par défaut
    Euh... tu as cherché avant de poser ces questions ?

    Oui j'ai cherché mais je n'ai pas posé des réponses à mes questions.

  6. #26
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 793
    Points : 34 024
    Points
    34 024
    Billets dans le blog
    14
    Par défaut
    Ben tu ne sais pas chercher alors !

    avec comme critère de recherche : "mysql errno:150"

    1er lien proposé : la doc de MySQL sur les clés étrangères.
    Ctrl+F et recherche de "150" envoie vers cet extrait :
    If you re-create a table that was dropped, it must have a definition that conforms to the foreign key constraints referencing it. It must have the right column names and types, and it must have indexes on the referenced keys, as stated earlier. If these are not satisfied, MySQL returns error number 1005 and refers to error 150 in the error message.

    If MySQL reports an error number 1005 from a CREATE TABLE statement, and the error message refers to error 150, table creation failed because a foreign key constraint was not correctly formed. Similarly, if an ALTER TABLE fails and it refers to error 150, that means a foreign key definition would be incorrectly formed for the altered table. You can use SHOW ENGINE INNODB STATUS to display a detailed explanation of the most recent InnoDB foreign key error in the server.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  7. #27
    Débutant
    Inscrit en
    Mai 2009
    Messages
    392
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 392
    Points : 35
    Points
    35
    Par défaut
    Merci pour votre aide. Mais, je vous informe que les clés étrangères sont bien définies.
    Je n'ai pas votre explication. Le problème persiste encore c'est dû à quoi ?

  8. #28
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 793
    Points : 34 024
    Points
    34 024
    Billets dans le blog
    14
    Par défaut
    Sans le code de création des tables, impossible de te répondre.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  9. #29
    Débutant
    Inscrit en
    Mai 2009
    Messages
    392
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 392
    Points : 35
    Points
    35
    Par défaut
    Bonjour,

    Sans le code de création des tables, impossible de te répondre.
    Voici le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
     
    create database commerce;
     
    use commerce;
     
    ----------
    create table Client(NOC varchar(30),
    Nom varchar(30),
    Adresse varchar(30),
    constraint Client_pk primary key(NOC));
     
    ------------
    create table service(NOS varchar(30),
    Intitule varchar(30),
    Localisation varchar(30),
    constraint Service_pk primary key(NOS));
     
    --------
    create table piece(NOP varchar(30),
    Designation varchar(50),
    Couleur varchar(30),
    Poids float,
    constraint Piece_pk primary key(NOP),
    constraint Poids_OK Check(Poids>0));
     
    ------
    create table ordre(NOP varchar(30),
    NOS varchar(30),
    NOC varchar(30),
    Quantite integer,
    Constraint Ordre_pk primary key(NOP,NOS,NOC),
    Constraint Ordre_fk1 foreign key(NOP) references PIECE(NOP),
    Constraint Ordre_fk2 foreign key(NOS) references SERVICE(NOS),
    Constraint Ordre_fk3 foreign key(NOC) references Client(NOC),
    constraint Quantite_OK Check(Quantite>0));
    Lors de la création de table ordre, j'ai l'erreur suivant :

    Can't create table '.\commerce\ordre.frm' <errno:150>
    Pourquoi ?

  10. #30
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 793
    Points : 34 024
    Points
    34 024
    Billets dans le blog
    14
    Par défaut
    1) Une clé primaire en VARCHAR est une mauvaise clé !

    2) Une adresse de 30 caractères maxi ; un peu léger non ?

    3) Le mauvais SGBD MySQL n'implémente pas la contrainte CHECK.
    Si tu veux un meilleur SGBD gratuit, passe à Postgresql.

    4) Ton erreur est peut-être due au fait que tu as écrit la table en capitales dans la contrainte de clé étrangère alors que le vrai nom de la table est en minuscules.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  11. #31
    Débutant
    Inscrit en
    Mai 2009
    Messages
    392
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 392
    Points : 35
    Points
    35
    Par défaut
    1) Une clé primaire en VARCHAR est une mauvaise clé !
    D'accord.

    2) Une adresse de 30 caractères maxi ; un peu léger non ?
    D'accord.

    3) Le mauvais SGBD MySQL n'implémente pas la contrainte CHECK.
    Si tu veux un meilleur SGBD gratuit, passe à Postgresql.
    Pas de problème. Mais Mysql implémente Check

    4) Ton erreur est peut-être due au fait que tu as écrit la table en capitales dans la contrainte de clé étrangère alors que le vrai nom de la table est en minuscules.
    Je ne crois pas car pas de différence majuscule ou minuscule en Mysql.

    Autre chose,

    - Pour les opérateurs ensemblistes : UNION, INTERSECT et EXCEPT (ou Minus). J'ai remarqué seulement UNION qui marche avec MySQL.
    Comment on peut traduire les autres opérateurs INTERSECT et EXCEPT (ou Minus) ? C'est possible un exemple ?

    - Je n'ai pas compris C'est quoi une base est bien en innodb ?

    - Pardon, comment configurer l'environnement de travail (Eclipse, Apache, API JDBC) et manipuler (insertion, modifier, afficher et supprimer) des données dans une base de donnée ? C'est possible un exemple ?

    Merci.

  12. #32
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 793
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 793
    Points : 34 024
    Points
    34 024
    Billets dans le blog
    14
    Par défaut
    Mais Mysql implémente Check
    Il accepte le mot dans le langage SQL mais s'en fout comme de son premier octet !

    - Pour les opérateurs ensemblistes : UNION, INTERSECT et EXCEPT (ou Minus). J'ai remarqué seulement UNION qui marche avec MySQL.
    Comment on peut traduire les autres opérateurs INTERSECT et EXCEPT (ou Minus) ? C'est possible un exemple ?
    Effectivement, le mauvais MySQL n'implémente pas ces mots clés.

    - Je n'ai pas compris C'est quoi une base est bien en innodb ?
    ce n'est pas la base de données qui "est en InnoDB" mais chaque table qui utilise le moteur InnoDB ou le moteur MyISAM. Il y en a encore d'autres mais d'usage beaucoup moins répandu que ces deux là. Si tu veux utiliser, avec raison, les contraintes de clés étrangères, il faut que les tables utilisent InnoDB. Si tu veux utiliser la recherche FULL TEXT, il faut que la table utilise le moteur MyISAM, cette fonctionnalité ne viendra que dans une prochaine version de MySQL avec le moteur InnoDB.

    - Pardon, comment configurer l'environnement de travail (Eclipse, Apache, API JDBC) et manipuler (insertion, modifier, afficher et supprimer) des données dans une base de donnée ? C'est possible un exemple ?
    Il existe des plugins Eclipse pour manipuler les BDD. Cherche un peu, ce n'est pas l'objet de ce forum.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

Discussions similaires

  1. Problème de création de la première base des données
    Par gentil2005 dans le forum Odoo (ex-OpenERP)
    Réponses: 2
    Dernier message: 18/12/2012, 17h20
  2. Problème de création d'un String avec des caractères
    Par titi42 dans le forum Débuter avec Java
    Réponses: 2
    Dernier message: 11/09/2009, 17h19
  3. Réponses: 3
    Dernier message: 08/03/2007, 11h18
  4. Réponses: 3
    Dernier message: 19/04/2006, 19h44
  5. sélection des bd en fonction des utilisateurs (pg_hba.conf)
    Par Bouboubou dans le forum PostgreSQL
    Réponses: 9
    Dernier message: 18/03/2004, 19h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo