|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre régulier
![]() Inscription : avril 2004 Messages : 284 ![]() |
Bonjour,
J'ai une table composée d'une colonne id AUTO_INCREMENT et une colonne sequence TEXT. Cette sequence est >= 500 caractères (ADN). Lorsque je veux créer un index UNIQUE ou mettre sequence en clé primaire (en plus de l'id) j'ai une erreur de longueur de clé. Sauriez-vous vous comment résoudre ce problème (éventuellement un CHECK) ? En vous remerciant, C. Tobini |
|
|
00
|
|
|
#2 | |
|
Expert Confirmé
![]() ![]() Pierre Ingénieur qualité méthodes Inscription : mars 2003 Messages : 3 726 ![]() |
Citation:
__________________
"Il n'y a pas de bonnes réponses à une mauvaise question." (M. Godet) ----------------------- Pensez à cloturer votre sujet - Aucune réponse aux sollicitations techniques par MPUsus magister est optimus |
|
|
|
00
|
|
|
#3 | ||
|
Membre régulier
![]() Inscription : avril 2004 Messages : 284 ![]() |
Bonjour et merci de la réponse,
Ca marche parfaitement dans ce contexte, merci ! Mon problème maintenant est que je travaille sur des séquences d'ADN composées des lettres A, T, G ou C. Sachant que 2 séquences peuvent varier d'une seule lettre et que la longueur est variable, il m'est impossible de préciser une taille de comparaison pour l'index UNIQUE, et la comparaison doit donc se faire sur tous les caractères pour des séquences de même longueur. Le moyen d'effectuer ceci est-il de créer un trigger qui me permettrait de vérifier la préexistence avant insertion de 'sequence' ? Ex: Code :
C. Tobini |
||
|
|
00
|
|
|
#4 |
|
Expert Confirmé
![]() ![]() Pierre Ingénieur qualité méthodes Inscription : mars 2003 Messages : 3 726 ![]() |
Pour éviter ce genre de pb, il faudrait peut-être regarder du coté des mécanismes genre CRC afin d'obtenir une valeur qui sera indexable.
__________________
"Il n'y a pas de bonnes réponses à une mauvaise question." (M. Godet) ----------------------- Pensez à cloturer votre sujet - Aucune réponse aux sollicitations techniques par MPUsus magister est optimus |
|
|
00
|
|
|
#5 |
|
Membre régulier
![]() Inscription : avril 2004 Messages : 284 ![]() |
C'est-à-dire obtenir un nombre à partir d'un CRC et indexer ce nombre à la place de la séquence ?
C. Tobini |
|
|
00
|
|
|
#6 | |
|
Expert Confirmé
![]() ![]() Pierre Ingénieur qualité méthodes Inscription : mars 2003 Messages : 3 726 ![]() |
Citation:
__________________
"Il n'y a pas de bonnes réponses à une mauvaise question." (M. Godet) ----------------------- Pensez à cloturer votre sujet - Aucune réponse aux sollicitations techniques par MPUsus magister est optimus |
|
|
|
00
|
|
|
#7 |
|
Membre régulier
![]() Inscription : avril 2004 Messages : 284 ![]() |
Bonjour et désolé de ma réponse tardive,
J'ai finalement opté pour une indexation sur la totalité de la longueur. J'ai théoriquement un maximum de 500 caractères, en indiquant une taille supérieure, l'indexation se fait dynamiquement sur la taille d'index maximum. C'est lourd mais je n'ai pour l'instant pas énormémement de sondes à gérer, je préfère avoir la certitude d'avoir une séquence unique par table que prendre le risque d'avoir des doublons, ce qui serait catastrophique J'ai jeté un oeil du côté des forums d'algo en exposant mon problème et en regardant les mécanismes CRC et je n'ai pas la certitude d'avoir un INT unique, c'est un gros risque pour de la production ! Merci encore et bonne journée, C. Tobini |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com