Précédent   Forum des professionnels en informatique > Bases de données > Firebird > Connexion aux bases de données
Connexion aux bases de données Forum d'entraide sur la connectivité Firebird: composants, drivers, transactions, etc.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/11/2003, 05h08   #1
Invité de passage
 
Inscription : septembre 2003
Messages : 7
Détails du profil
Informations forums :
Inscription : septembre 2003
Messages : 7
Points : 3
Points : 3
Par défaut TIbQuery et SQL.Text

Salut

J'ai une base Interbase du type.

Code :
1
2
3
4
 CREATE TABLE "TEST.db" (
        Nom VARCHAR(50),
        Prenom VARCHAR(50),
        DateDeNaissance VARCHAR(10) )
Sur ma fichier j'ai :
  • - TIbQuery
    -TIbTable
    -TIbDatabase
    -TIbTransaction
    -TDataSource


Pourquoi si je fait celà ça ne marche pas, alors que sur une base non Interbase, oui?

Code :
1
2
3
 
INSERT INTO "TEST.db" (Nom,Prenom,DateDeNaissance )
  VALUES ("Moi", "meme","25/12/2003")
Et si je veux faire un select cela ne marche pas non plus
Code :
1
2
 
SELECT * FROM "TEST.db" WHERE Nom="Moi"
Je met ce code SQL dans IbQuery1.Sql.Text.

En mettant des ParamByName cela marche, mais etons obligé de mettre des parametres??

Une autre question, Peut on utiliser un TQuery sur base Interbase??

Merci
Vdsoft est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/11/2003, 10h36   #2
Membre Expert
 
Avatar de Barbibulle
 
Frédéric
Inscription : octobre 2002
Messages : 1 722
Détails du profil
Informations personnelles :
Nom : Frédéric
Âge : 42

Informations forums :
Inscription : octobre 2002
Messages : 1 722
Points : 2 025
Points : 2 025
Première remarque :

Les doubles cotes " doivent être utilisée pour faire référence aux objets de la base (Nom de colonne, nom de table etc...) et les simple cotes pour les chaines de caractères '

Donc en mettant
Code :
1
2
INSERT INTO "TEST.db" (Nom,Prenom,DateDeNaissance ) 
  VALUES ("Moi", "meme","25/12/2003")
il considère que Moi et meme etc.. sont des noms de colonnes.
il faut mettre :
Code :
1
2
INSERT INTO "TEST.db" (Nom,Prenom,DateDeNaissance ) 
  VALUES ('Moi', 'meme','25/12/2003')
Deuxième remarque il est préférable de mettre les noms d'objets qui ne sont pas écrits en majuscules entre double cote :
Code :
1
2
INSERT INTO "TEST.db" ("Nom","Prenom","DateDeNaissance" ) 
  VALUES ('Moi', 'meme','25/12/2003')
Troisième remarque les dates doivent être au format américain. Ou de type annee/Mois/jours.
Donc
Code :
1
2
INSERT INTO "TEST.db" ("Nom","Prenom","DateDeNaissance" ) 
  VALUES ('Moi', 'meme','2003/12/25')
ou bien
Code :
1
2
INSERT INTO "TEST.db" ("Nom","Prenom","DateDeNaissance" ) 
  VALUES ('Moi', 'meme','12/25/2003')
Même remarque pour le select :
Code :
SELECT * FROM "TEST.db" WHERE "Nom"='Moi'
Voilà qui te permettra de continuer plus facilement
Barbibulle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/11/2003, 14h07   #3
Invité de passage
 
Inscription : septembre 2003
Messages : 7
Détails du profil
Informations forums :
Inscription : septembre 2003
Messages : 7
Points : 3
Points : 3
Merci Barbidule, pour ce petit cours tres instructif.

Je suis en effet débutant en BD, et jamais je n'aurrais pensé que les " et ' avait une telle importance

@+
Vdsoft est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h50.


 
 
 
 
Partenaires

Hébergement Web