JONUEVA
Messages postés3Date d'inscriptionmardi 27 mars 2007StatutMembreDernière intervention10 octobre 2007
-
9 oct. 2007 à 22:37
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 2015
-
10 oct. 2007 à 19:54
Bonjour aux lecteurs,
Je débute en VB6 et encore plus en SQL.
Je rencontre une erreur sur ma création de table.
J'ai déja envoyé des requêtes sur cette base de donnée donc la connexion marche bien.
Le message d'erreur est: "Erreur de syntaxe dans l'instruction CREATE TABLE."
ValeurBorne(0) est un String.
Voyez-vous où est l'erreur dans la syntaxe?
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 10 oct. 2007 à 18:20
Salut
Elle est bizarre ta syntaxe : C'est la première fois que je vois une clause "EXISTS" dans un "Create Table" - à vérifier
Regarde de plus près le contenu de ta variable "ValeurBorne(0)" : Si le nom d'une table (ou d'un champ) comporte des espaces, des caractères particuliers du langage (accents) ou des symboles réservés au langage (genre _ ), il faut absolument encadrer ces noms avec des crochets droits [ et ]
D'autre part, tu remarqueras qu'il n'y a pas d'espace entre le nom de ta table et la parenthèse qui la suit : Des fois, les compilos n'aiment pas.
strSQL = "CREATE TABLE IF NOT EXISTS [" & valeurborne(0) & "] "& _
"(NuméroBorne VARCHAR(5)" & _ ...
Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 10 oct. 2007 à 18:24
PS : C'est du SQL qui va fonctionner avec quel moteur ? MySQL, Access-Jet ... ?
Les syntaxes SQL peuvent différer, alors consulte la doc en rapport avec la marque du moteur
JONUEVA
Messages postés3Date d'inscriptionmardi 27 mars 2007StatutMembreDernière intervention10 octobre 2007 10 oct. 2007 à 19:08
Bonsoir,
Merci de vos réponses.
J'ai testé les crochets ainsi que l'espace aprés le nom de la table mais toujours pareil.
IF NOT EXISTS permet de créer la table si elle n'existe pas, sinon la requête est ignorée.
C'est une requête je j'envoie par l'intermédiaire de l'objet suivant vers une base *.MDB:
Dim ct as ADODB.Connection
J'ai déjà envoyé des requêtes via cet objet mais c'était plus pour gérer les enregistrement(Ajout, suppresion, modification...)
Peut-etre que l'on ne peut pas gérer les tables avec...?
Vous n’avez pas trouvé la réponse que vous recherchez ?
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 10 oct. 2007 à 19:54
Re
En effet, je pense que cette syntaxe SQL avec le EXISTS est propre au PHP/MySQL.
Sous le SQL de MS, je ne pense pas que ce soit applicable.
De toute façon, comme tu sembles vouloir écraser ta table, simplement fait un DROP puis un CREATE
Le résultat sera le même.
Si tu as besoin de vérifier si ta table existe déjà, regarde cette source trouvée en tapant "table existe" dans la recherche parmi les codes du site : http://www.vbfrance.com/codes/VERIFIER-EXISTENCE-TABLE_2553.aspx
Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)