Comment créer un index de clé primaire à partir de deux colonnes ou plus dans Visual FoxPro 9? Les colonnes peuvent être de types différents.Création d'une clé primaire à partir de deux colonnes ou plus dans Visual FoxPro 9
Répondre
Les index composés doivent être des chaînes, utilisez la fonction appropriée (STR(), DTOS(), etc.) pour convertir le champ avant de le concaténer. Voir le MSDN documentation pour plus de détails.
Une autre mise en garde est de s'assurer que vous ne coupez jamais la représentation de caractère de l'une des colonnes incluses dans les clés. Autre chose que vous devez savoir, c'est que le code d'intégrité référentielle généré par VFP n'est parfois pas propre ou conçu pour fonctionner correctement avec les clés concaténées. Le code est beaucoup plus simple pour les clés de substitution (colonne simple sans signification, normalement entier ou GUID). Il pourrait être trop tard dans la conception pour vous de considérer cela, mais je vais le mettre ici juste au cas où il est encore dans la phase de conception ou encore un changement pratique à faire. Rick Schummer VFP MVP
Merci, je l'ai maintenant. – Prasad
Une mise en garde supplémentaire lors de la conversion des dates (le cas échéant), comme Ignacio l'a mentionné, utilise DTOS() qui convertira en une chaîne au format AAAAMMJJ. Selon "SET CENTURY ON/OFF" dans VFP, le siècle peut seulement appliquer 09 au lieu de 2009 et donner des fausses trouvailles pendant les recherches. – DRapp
DRapp - la fonction DTOS() n'est pas affectée par le réglage SET CENTURY. C'est l'une des raisons pour lesquelles cela est meilleur pour l'indexation. Le bémol est que vous devez inclure le siècle entier lorsque vous faites une recherche. –