|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre actif
![]() Inscription : octobre 2006 Messages : 664 ![]() |
Bonjour,
J'ai un champ dans une table qui est de type VARCHAR 2048. Je l'utilise enormément pour effectuer des grosses requêtes, c'est pourquoi je souhaiterai l'indéxer. Cependant, l'indexation d'un VARCHAR d'une taille de 2048 semble impossible. Comment puis-je faire ? Merci, ZiP |
|
00
|
|
|
#2 |
|
Expert Confirmé
![]() ![]() ![]() Philippe MakowskiConsultant spécialité Firebird Inscription : mai 2002 Messages : 2 215 ![]() |
tout dépend du jeu de caractère utilisé
avec FB2, un index sur un varchar(2048) avec character set None est possible maintenant peut être qu'une autre solution est possible avec un autre champs, tout dépend de ce qui est stocké dans ce champ et si on peu en extraire quelque chose de significatif dans un autre champs plus petit et aussi des recherches qui sont faites sur ce champ j'imagine mal des recherches exactes dessus, si c'est des commence par, alors un index sur un autre champ maintenu par un trigger et qui ne comprendrai alors que les x premiers caractères peu aider
__________________
Philippe Makowski IBPhoenix - Firebird Membre de l'April |
|
00
|
|
|
#3 | ||
|
Membre actif
![]() Inscription : octobre 2006 Messages : 664 ![]() |
Salut,
Voici la ligne de création de mon champ : Code :
Merci, ZiP |
||
|
00
|
|
|
#4 |
|
Expert Confirmé
![]() ![]() ![]() Philippe MakowskiConsultant spécialité Firebird Inscription : mai 2002 Messages : 2 215 ![]() |
Url Varchar(2048) Character Set None
__________________
Philippe Makowski IBPhoenix - Firebird Membre de l'April |
|
00
|
|
|
#5 | ||
|
Membre actif
![]() Inscription : octobre 2006 Messages : 664 ![]() |
Bonjour,
Voici ma table : Code :
J'utilise la dernière version de Firebird disponible. Merci pour votre aide, ZiP |
||
|
00
|
|
|
#6 |
|
Expert Confirmé
![]() ![]() ![]() Philippe MakowskiConsultant spécialité Firebird Inscription : mai 2002 Messages : 2 215 ![]() |
il faut lire un peu la doc livrée
252-byte index length limit is gone A. Brinkman New and reworked index code is very fast and tolerant of large numbers of duplicates. The old aggregate key length limit of 252 bytes is removed. Now the limit depends on page size: the maximum size of the key in bytes is 1/4 of the page size (512 on 2048, 1024 on 4096, etc.)
__________________
Philippe Makowski IBPhoenix - Firebird Membre de l'April |
|
00
|
|
|
#7 |
|
Membre actif
![]() Inscription : octobre 2006 Messages : 664 ![]() |
Bonjour,
J'ai modifié mon page size à 8192. Mais le problème persiste : ![]() Merci pour votre aide, ZiP |
|
00
|
|
|
#8 |
|
Expert Confirmé
![]() ![]() ![]() Philippe MakowskiConsultant spécialité Firebird Inscription : mai 2002 Messages : 2 215 ![]() |
page size 16384 dans ton cas
mais franchement, je ne suis pas certains que ce soit une très bonne idée mais si tu ne peux pas faire autrement... quels types de requêtes tu vas faire sur ce champs ? est ce vraiment obligatoire d'avoir une taille si importante ?
__________________
Philippe Makowski IBPhoenix - Firebird Membre de l'April |
|
00
|
|
|
#9 | |
|
Membre actif
![]() Inscription : octobre 2006 Messages : 664 ![]() |
Citation:
Je stock des adresses de pages Internet avec lesquelles je réalise des statistiques d'utilisations par le biais de requêtes de type : SELECT [...] WHERE [...] LIKE Merci, ZiP |
|
|
00
|
|
|
#10 | |
|
Expert Confirmé
![]() ![]() ![]() Philippe MakowskiConsultant spécialité Firebird Inscription : mai 2002 Messages : 2 215 ![]() |
Citation:
ceci dit l'index ne sera utiliser que sur une recherche équivalente à STARTING WITH donc l'édée de faire un autre champ avec seulement les x premiers caractères est à explorer sérieusement
__________________
Philippe Makowski IBPhoenix - Firebird Membre de l'April |
|
|
00
|
|
|
#11 |
|
Membre actif
![]() Inscription : octobre 2006 Messages : 664 ![]() |
OK!
Merci pour ce complément d'informations et votre aide. ZiP |
|
00
|
Copyright © 2000-2012 - www.developpez.com