Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.22;
Скачать: CL | DM;

Вниз

в базе данных странные вещи!   Найти похожие ветки 

 
stud ©   (2003-09-01 16:56) [0]

есть БД. при попытке update выдается сообщение arifmetik exception ...... причем не на всех записях. если сделать бекап/ресторе, то можно отредактировать один раз))) запись на которой выскакивает ошибка.
кто-нибудь может подсказать с чем это может быть связано?


 
Vlad ©   (2003-09-01 17:03) [1]

>>в базе данных странные вещи
Нда... Стивен Кинг рядом не стоял !
Ну ничего. Главное - в чудеса не верить.
А текст SQL апдейта глянуть краем глаза можно ?


 
stud ©   (2003-09-01 17:13) [2]

update uslugi set naim="ЗНАЧЕНИЕ" where kod=123
причем записи не обновляются избирательно. т.е. часть записей обновить можно а часть нет??
а кинга тут нету))


 
stud ©   (2003-09-01 17:16) [3]

в то же время запрос
update uslugi set naim=naim проходит без проблем


 
Mike Kouzmine ©   (2003-09-01 17:16) [4]

Может это только с кириллицей?


 
stud ©   (2003-09-01 17:27) [5]

так ведь не на всех записях!!


 
MsGuns ©   (2003-09-01 17:28) [6]

барабашка..


 
stud ©   (2003-09-01 17:29) [7]

а я то думал)))))
тогда надо вызывать охотников за барашками


 
HSolo ©   (2003-09-01 17:31) [8]

1. В какой кодировке база?
2. С какой кодировкой коннектитесь?


 
stud ©   (2003-09-01 17:34) [9]

кодировка win1251
конктюсь с pdoxansicyrilic через бде
OPISANIE VARCHAR(200) COLLATE PXW_CYRL,
KOD_USL VARCHAR(20) COLLATE PXW_CYRL,
PARENT INTEGER,
NAIM VARCHAR(220) COLLATE PXW_CYRL,


 
MsGuns ©   (2003-09-01 17:43) [10]

>stud © (01.09.03 17:34) [9]
>кодировка win1251
>конктюсь с pdoxansicyrilic через бде

Дим, а какого лешего интербазу шарим через бидэ ? Ну если не военнная тайна, конечно :"))


 
Zacho ©   (2003-09-02 08:08) [11]

С кодировками вроде все нормально, тогда остаются варианты:
1. Пытаешься запихнуть строку длиннее 220 символов.
2. Есть триггер на апдейт, в котором и происходит ошибка.


 
Sergey13 ©   (2003-09-02 09:02) [12]

2stud © (01.09.03 17:34) [9]
А как это совместить?

OPISANIE VARCHAR(200) COLLATE PXW_CYRL,
KOD_USL VARCHAR(20) COLLATE PXW_CYRL,
PARENT INTEGER,
NAIM VARCHAR(220) COLLATE PXW_CYRL,

и

update uslugi set naim="ЗНАЧЕНИЕ" where kod=123

Судя по структуре kod поля нет, а kod_usl - varchar.


 
stud ©   (2003-09-02 09:24) [13]


> Sergey13

это просто кусок описания текстовых полей))


> MsGuns

понимаеш политика такая. хотя при работе в ibexpert происходит тоже самое.


> Zacho

проверял это. максимальная длина 200 символов.
тригеры есть, но
update uslugi set naim=naim проходит без проблем


 
Zacho ©   (2003-09-02 09:30) [14]

Покажи триггеры. И структуру таблицы - целиком.


 
stud ©   (2003-09-02 09:35) [15]

это сложно))
потому что ведется журнал по этой таблице и тригеров много. они создавались автоматически ibexpertom.
хотя действительно есть подозрение, что были записаны данные большей длины, но сейчас максимальная длина поля 200 символов


 
Sergey13 ©   (2003-09-02 10:19) [16]

2stud © (02.09.03 09:24) [13]
Вот ведь как. Дают "просто кусок описания текстовых полей", просто от балды запрос, и просто хотят получить конкретное решение конкретной проблемы возникающей на конкретной таблице с конкретным запросом. 8-(


 
stud ©   (2003-09-02 10:25) [17]

ну запрос не от балды а реальный, остальные поля таблицы числовые.

CREATE TABLE USLUGI_SPR (
KOD INTEGER NOT NULL,
OPISANIE VARCHAR(200) COLLATE PXW_CYRL,
KOD_USL VARCHAR(20) COLLATE PXW_CYRL,
PARENT INTEGER,
NAIM VARCHAR(220) COLLATE PXW_CYRL,
PRIZNAK SMALLINT DEFAULT 0 NOT NULL
);


 
Sergey13 ©   (2003-09-02 10:56) [18]

Можно попробовать создать поле дубликат naim. Записать туда из оригинала, обнулить оригинал (можно и без этого попробовать), вернуть значение оригиналу из дубликата, грохнуть дубликат. Лог на это время ессно отключить. Шаманство конечно, но меня как то спасло от подобных проблем. У тебя возможно менялся тип (длина) этого поля.


 
stud ©   (2003-09-02 11:10) [19]

менялся. и делал я это по твоей схеме.


 
stud ©   (2003-09-02 11:14) [20]

хотелось бы удалить все данные из этой таблицы. только ведь тоже не дает! из 800 записей 200 с ошибками. можно как-то их удалить? только удалять поля не предлагать - есть связанные объекты


 
Sergey13 ©   (2003-09-02 11:17) [21]

Ну тогда, ИМХО, тригера смотреть надо. Тем паче "тригеров много". Чего хоть они делают то и зачем их "много" и скока точно "много".


 
stud ©   (2003-09-02 11:23) [22]

5 тригеров, 2 процедуры, и 1 таблица. смысл смотреть тригеры, если 600 записей я все-таки удалил??


 
stud ©   (2003-09-02 11:29) [23]


> Sergey13

ну спасибо. действительно триггеры))))



Страницы: 1 вся ветка

Текущий архив: 2003.09.22;
Скачать: CL | DM;

Наверх




Память: 0.52 MB
Время: 0.035 c
1-71751
Zhouck
2003-09-10 11:56
2003.09.22
Kylix3+InterBase


1-71707
TGrey
2003-09-10 20:10
2003.09.22
Русский текст в консоли


14-71904
unlx
2003-09-03 13:13
2003.09.22
Простая система офисной почты для локальной сети


1-71723
Вован
2003-09-11 15:36
2003.09.22
Как на WinAPI перетаскивать окно за любое место?


3-71499
Russko
2003-09-01 09:38
2003.09.22
На конце 0