Bonjour tout le monde,
Voilà j'ai un problème avec une application Delphi qui utilise des fichiers DBF avec ADO.
Je veux créer une table avec un index unique. Je pensais que c'était simple mais a priori non .
Ma connectionString est configuré comme cela:
Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=Mon répertoire contenant les DBF;Mode=Share Deny None;Extended Properties=dBASE IV;
Pour créé la table j'utilise ma connexion et la procédure Execute():
1 2 3
| ADOConnection1.Execute('CREATE TABLE TEST (ID INTEGER,
NOM CHAR(32),
CONSTRAINT MACLE UNIQUE(ID))'); |
ADO me créé bien mon fichier DBF ainsi que le fichier index MDX.
Mais malheureusement la clé unique n'a pas l'air d'être utilisé car je peux insérer plusieurs enregistrements avec le même ID.
Par exemple, si j'exécute plusieurs fois la requête :
ADOConnection1.Execute('INSERT INTO TEST (ID) VALUES (0)');
Il n'y a aucune erreur
Est ce que quelqu'un a une idée ? Je doit rater un truc quelques part mais je vois pas
Merci pour votre aide.
Partager