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

PHP & Base de données Discussion :

[SQL] Erreur dans code PHP


Sujet :

PHP & Base de données

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 11
    Points : 8
    Points
    8
    Par défaut [SQL] Erreur dans code PHP
    Bonjour,

    je suis en stage et je mets en place un serveur Syslog afin de visualiser l'ensemble des logs qui transitent par le Firewall de les redirigés vers un fichier txt et de les stocker dans une base de données. Je ne rencontre pas de problème en ce qui concerne les deux premières étapes mais pour la troisième j'ai une erreur dans mon code qui est le suivant:

    requête SQL:
    Code SQL : 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
    CREATE TABLE SystemEvents(
    ID int unsigned NOT NULL AUTO_INCREMENT PRIMARY KEY ,
    CustomerID bigint,
    ReceivedAt datetime NULL ,
    DeviceReportedTime datetime NULL ,
    Facility smallint NULL ,
    Priority smallint NULL ,
    FromHost varchar( 60 ) NULL ,
    Message text,
    NTSeverity int NULL ,
    Importance int NULL ,
    EventSource varchar( 60 ) ,
    EventUser varchar( 60 ) NULL ,
    EventCategory int NULL ,
    EventID int NULL ,
    EventBinaryData text NULL ,
    MaxAvailable int NULL ,
    CurrUsage int NULL ,
    MinUsage int NULL ,
    MaxUsage int NULL ,
    InfoUnitID int NULL ,
    SysLogTag varchar( 60 ) ,
    EventLogType varchar( 60 ) ,
    GenericFileName VarChar( 60 ) ,
    SystemID int NULL 
    )
     
    CREATE TABLE SystemEventsProperties(
    ID int unsigned NOT NULL AUTO_INCREMENT PRIMARY KEY ,
    SystemEventID int NULL ,
    ParamName varchar( 255 ) NULL ,
    ParamValue text NULL 
    )

    le message d'erreur est le suivant:
    MySQL a répondu:

    #1064 - Erreur de syntaxe pr�s de 'CREATE TABLE SystemEventsProperties
    (
    ID int unsigned not nul' � la ligne 29
    quelqu'un pourrait-il m'éclairer


    MERCI

  2. #2
    Membre averti Avatar de Asmodean
    Profil pro
    Inscrit en
    Février 2006
    Messages
    311
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 311
    Points : 378
    Points
    378
    Par défaut
    Il faut un ; avant le deuxième CREATE

    En fait la syntaxe est la suivant:
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    CREATE TABLE ...(
    ..
    );
     
    CREATE TABLE ...(
    ...
    );

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 11
    Points : 8
    Points
    8
    Par défaut
    merci beaucoup!!!

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 11
    Points : 8
    Points
    8
    Par défaut
    Dans un premier temps j'avais executé le code avec la solution proposée ci-dessus mais il s'avère que lorqsue je l'utilise avec WinSyslog ( solution que j'utilise pour mettre en place un serveur Syslog), il y a encore une erreur de syntaxe.
    A vrai dire je en compren pa trop, ceci est-il du o fait que ce ne soit pas la version complète que j'utilise ??

    merci d'avance

  5. #5
    Membre averti Avatar de BornBanane
    Homme Profil pro
    dev
    Inscrit en
    Mars 2007
    Messages
    284
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : dev

    Informations forums :
    Inscription : Mars 2007
    Messages : 284
    Points : 416
    Points
    416
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    CREATE TABLE SystemEvents(
     
    ID int unsigned not null AUTO_INCREMENT,
    ....
    PRIMARY KEY(ID )
    );
    Je ferais comme cela, à voir si ca change quelque chose.

    Sinon tu utilise quoi comme server de BDD ?
    auto_increment marche pour MySQL mais pas avec oracle et sql server par exemple.

  6. #6
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 11
    Points : 8
    Points
    8
    Par défaut
    Bonjour,

    Pour la BDD j'utilise MySQL et ce n'est pas le auto_increment qui pose problème c 'est desormais le point virgule qui représente une erreur.J'ai pensé peut etre que c'est un probleme de version de driver myodbc mais apparemment non , j'ai testé plusieur version et le résultat est le meme donc je ne suis pas plus avancé. cependant lorsque j'execute le progamme à la main je n'obtient pas d'erreur mais dès que je veux créer les tables avec Winsyslog 7, j'obtient un message d'erreur qui est le suivant:

    ODBC Error 5
    SQL Errorstate: 37000
    SQL Errordescription:[MySQL][ODBC 3.51 Driver][mysql-4.1.9-max]Erreur de syntaxe près de ';
    CREATE TABLE SystemEventsProperties
    (

    ID int unsigned not ' à la ligne 28



    kelk1 a-t-il déjà rencontrer ce genre de difficultés?

    Merci

    Cdlt

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 11
    Points : 8
    Points
    8
    Par défaut
    Merci Asmodean et francoisIT, il s'agissait en fait d'un probleme de driver avec la version 5 de myodbc il n'y a plus de message d'erreur.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Erreur dans code et requête sql
    Par majudis dans le forum VBA Access
    Réponses: 1
    Dernier message: 07/07/2010, 19h33
  2. [PostgreSQL] SQL DB_query Segmentation fault dans code PHP
    Par diabli73 dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 18/11/2008, 12h59
  3. [SQL] Erreur dans mon code de back office
    Par alainboiteau dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 18/06/2007, 11h03
  4. [SQL] erreur dans la requette SQL ou dans le code PHP
    Par jack_1981 dans le forum PHP & Base de données
    Réponses: 19
    Dernier message: 11/07/2006, 21h21
  5. [MySQL] Erreur dans code php
    Par Badr3am dans le forum PHP & Base de données
    Réponses: 11
    Dernier message: 31/01/2006, 22h16

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