|
|
|
index
|
|||
|---|---|---|---|
|
#18+
Есть таблица и в ней паспортные данные pser varcahar(2), pkod varchar(12) //вносяться только цифры (varchar для того,чтобы можно было хранитить 00123456) На них установлен уникальный индекс ...(pser,pkod) Всё работает нормально, но как мне устранить такую вещь если внести "АС" рускими буквами, а потом "AC" латинскими то индекс не срабатывает, я понимаю что так и должно быть, но может есть способ перевести с одной кодировки в другую для того чтобы заменять латинские буквы на кирилицу в тригере before update ? Зарание благодарен ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2004, 14:52:52 |
|
||
|
index
|
|||
|---|---|---|---|
|
#18+
Сделай триггер BEFORE INSERT и BEFORE UPDATE. Или один универсальный, если у тебя FB1.5. В нем проверяй значение и приводи к нужному тебе алфавиту. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2004, 15:00:20 |
|
||
|
index
|
|||
|---|---|---|---|
|
#18+
To Michaylo В качестве дополнения. Я тут статейку прочитал по совету Мимопроходящего, за что кстати ему большое спасибо, как хранятся типы CHAR и VARCHAR (www.ibase.ru) И судя по всему тебе выгоднее использовать CHAR, ну по крайней мере для серии. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2004, 15:26:46 |
|
||
|
index
|
|||
|---|---|---|---|
|
#18+
// В нем проверяй значение и приводи к нужному тебе алфавиту Как проверять? // И судя по всему тебе выгоднее использовать CHAR, ну по крайней мере для серии Согласен, но база рабочая и переделывать ее нет возможности. Если возможно поменять тип то как (хотя я сомневаюсь) на рабочей базе. Без полной остановки ее работы и использования "data pump". Зарание благодарен ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2004, 15:51:19 |
|
||
|
index
|
|||
|---|---|---|---|
|
#18+
Не трогай. В данном случае это не критично. На пару байт больше, не смертельно. А по поводу проверки и замены, лучше всего написать свою UDF. Как писать смотри тут . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2004, 16:13:07 |
|
||
|
index
|
|||
|---|---|---|---|
|
#18+
Если ничего другого не придумаю напишу UDF. Хотя это не панацея :) Может воспользуюсь масивами если они в FB1.5 остались (жаль с ними не работал.) А может есть другие варианты ? Зарание благодарен ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2004, 17:07:33 |
|
||
|
index
|
|||
|---|---|---|---|
|
#18+
Массивы тут тебе не помогут. Если влом писать UDF, пиши обработку прямо в триггере на PSQL, используя встроенную функцию SUBSTRING ( <string expr> FROM <pos> [ FOR <length>]). Правда, возни в этом случае, гораздо больше. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2004, 17:12:44 |
|
||
|
index
|
|||
|---|---|---|---|
|
#18+
быть проверку на стороне клиента делать перед отправкой данных на сервер. Там можно и множества для этого использовать и много других фич. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.05.2004, 19:32:10 |
|
||
|
|

start [/forum/topic.php?fid=40&msg=32515358&tid=1578668]: |
0ms |
get settings: |
7ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
38ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
31ms |
get tp. blocked users: |
1ms |
| others: | 231ms |
| total: | 331ms |

| 0 / 0 |
