Précédent   Forum des professionnels en informatique > Bases de données > Autres SGBD
Autres SGBD Vos questions sur les autres SGBD
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 31/08/2006, 15h39   #1
Membre régulier
 
Homme Jean-Marc
Inscription : octobre 2003
Messages : 136
Détails du profil
Informations personnelles :
Nom : Homme Jean-Marc
Âge : 45
Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : octobre 2003
Messages : 136
Points : 76
Points : 76
Par défaut Créer une table DBase en langage SQL

Bonjour,

J'ai un petit trou de mémoire, quelqu'un peut-il m'aider ?


Je voudrais créer une table DBase à partir de mon programme Delphi, en écrivant une requête SQL. Je ne sais plus quelle est la syntaxe exacte à utiliser, car le résultat que j'obtiens n'est pas conforma à ce que j'attends. En particulier, pour les champs numériques.

Par exemple, comment créer une table T1 contenant les champs suivants :

IDPiece numérique 5
Quantite numérique 5
PrixUnit numerique 5 et 2 décimales
TVA numerique 5 et 2 décimales

Merci d'avance de votre aide.
JeanMarc_T2k est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/09/2006, 11h14   #2
Xo
Expert Confirmé
 
Avatar de Xo
 
Inscription : janvier 2005
Messages : 2 701
Détails du profil
Informations personnelles :
Âge : 38

Informations forums :
Inscription : janvier 2005
Messages : 2 701
Points : 3 237
Points : 3 237
Envoyer un message via Skype™ à Xo
Salut,

Peux-tu STP nous poster le script que tu utilises ? Et le résultat obtenu ?
__________________
"Ce que l'on conçoit bien s'énonce clairement,
Et les mots pour le dire arrivent aisément." Nicolas Boileau

"Expliquer empêche de comprendre si cela dispense de chercher"

Quiz Oracle : venez tester vos connaissances !

La FAQ Oracle : 138 réponses à vos questions
Aidez-nous à la compléter
Xo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/09/2006, 11h44   #3
Membre régulier
 
Homme Jean-Marc
Inscription : octobre 2003
Messages : 136
Détails du profil
Informations personnelles :
Nom : Homme Jean-Marc
Âge : 45
Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

Informations forums :
Inscription : octobre 2003
Messages : 136
Points : 76
Points : 76
Bonjour,

J'ai essayé 2 méthodes :
- définir les champs (FildeDefs) de mon composant table, et appeler la procédure CreateTable (du composant table)
- écrire une requête et l'exécuter.

Dans les deux cas, le résultat est le même : les champs de type caractère sont correctement créés, alors que les champs de type numérique ne le sont pas. Leur nom apparait bien, mais leur type est indéfini, lorsque je consulte la structure de la table avec le module base de données.

La requête utilisée pour créer la table est par exemple :
Code :
1
2
3
4
CREATE TABLE Table1 (idpiece numeric(5), 
Quantite numeric(5), 
prixUnit numeric(5,2), 
TVA numeric(5,2) )
Est-ce la bonne syntaxe ?
JeanMarc_T2k est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/09/2006, 13h27   #4
Xo
Expert Confirmé
 
Avatar de Xo
 
Inscription : janvier 2005
Messages : 2 701
Détails du profil
Informations personnelles :
Âge : 38

Informations forums :
Inscription : janvier 2005
Messages : 2 701
Points : 3 237
Points : 3 237
Envoyer un message via Skype™ à Xo
Je ne connais pas DBase, mais en SQL standard, la syntaxe correcte est la suivante :
Code :
1
2
3
4
5
CREATE TABLE Table1 (
idpiece NUMBER(5), 
Quantite NUMBER(5), 
prixUnit NUMBER(5,2), 
TVA NUMBER(5,2) )
Si tu as besoin de compléments, tu trouveras les sours sur SQL ici, et en particulier celui-ci : Les fondements

[Edit] Alors après vérification et relecture du lien fourni, il semble bien que j'ai dit des bêtises et que tu aies raison ...

cf
Types de données numériques

Essaye peut-être avec Decimal.
[Edit]
__________________
"Ce que l'on conçoit bien s'énonce clairement,
Et les mots pour le dire arrivent aisément." Nicolas Boileau

"Expliquer empêche de comprendre si cela dispense de chercher"

Quiz Oracle : venez tester vos connaissances !

La FAQ Oracle : 138 réponses à vos questions
Aidez-nous à la compléter
Xo 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 05h32.


 
 
 
 
Partenaires

Hébergement Web