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

Вниз

гляньте, что тут не так?   Найти похожие ветки 

 
stud ©   (2003-10-10 15:46) [0]

begin
temp_date=:F_DATE;
temp_time=:F_TIME;
while (temp_date<=:t_date) do
begin
while (temp_time<=:t_time) do
begin
insert into RASPISANIE_VR (ID,DATEPR,TIMEPR,KOD_VR)
VALUES(gen_id(NEW_RASP,1),:TEMP_DATE,:TEMP_TIME,:KOD_VR);
temp_time=:TEMP_TIME+:timeslot;
end
temp_date=:TEMP_DATE+7;
end
end

ошибка такая
Overflow occurred during data type conversion.
conversion error from string "37907".

это параметры f_date и temp_date типа integer
что тут может быть не так, при изменении типа на double precision тоже самое


 
Delirium^.Tremens ©   (2003-10-10 15:53) [1]

stack overflow.

timeslot отрицательный или равен 0 (например)


 
Delirium^.Tremens ©   (2003-10-10 15:53) [2]

stack overflow.

timeslot отрицательный или равен 0 (например)


 
Delirium^.Tremens ©   (2003-10-10 15:55) [3]

Пардон! Это при преобразовании типов.
Ошибка с связанная с decimal separator


 
stud ©   (2003-10-10 16:00) [4]

похоже, но параметр - целого типа передаю значение тоже целого типа и вот такая ерунда


 
Delirium^.Tremens ©   (2003-10-10 16:09) [5]


> stud © (10.10.03 16:00) [4]

Что целого типа? Дата и время???


 
stud ©   (2003-10-10 16:15) [6]

при чем тут и при чем тут время, какая разница как названы параметры!)))) я же говорю что тип целый!


 
Johnmen ©   (2003-10-10 16:36) [7]

temp_time=TEMP_TIME+timeslot;
temp_date=TEMP_DATE+7;


 
stud ©   (2003-10-10 16:47) [8]

тоже самое!
по ошибке выходит,что виновато или f_date или temp_date но почему....


 
stud ©   (2003-10-10 16:47) [9]

тоже самое!
по ошибке выходит,что виновато или f_date или temp_date но почему....


 
Johnmen ©   (2003-10-10 16:53) [10]

Структуру таблицы и описание переменных процедуры в....:)
Студию !
А вы куда подумали ? :)


 
stud ©   (2003-10-10 16:55) [11]

сейчас
SET TERM ^ ;

ALTER PROCEDURE NEW_RASPPISANIE (
T_TIME DOUBLE PRECISION,
F_TIME DOUBLE PRECISION,
KOD_VR INTEGER,
TIMESLOT DOUBLE PRECISION,
F_DATE INTEGER,
T_DATE INTEGER)
AS
DECLARE VARIABLE TEMP_DATE INTEGER;
DECLARE VARIABLE TEMP_TIME DOUBLE PRECISION;
begin
TEMP_DATE=CAST(:F_DATE AS INTEGER);
TEMP_TIME=:F_TIME;
while (TEMP_DATE<=:t_date) do
begin
while (TEMP_TIME<=:t_time) do
begin
insert into RASPISANIE_VR (ID,DATEPR,TIMEPR,KOD_VR)
VALUES(gen_id(NEW_RASP,1),:TEMP_DATE,:TEMP_TIME,:KOD_VR);
TEMP_TIME=TEMP_TIME+:TIMESLOT;
end
TEMP_DATE=TEMP_DATE+7;
end
end

^

SET TERM ; ^


это процедура)))
CREATE TABLE RASPISANIE_VR (
ID INTEGER NOT NULL,
DATEPR DATE,
TIMEPR TIME,
KOD_VR INTEGER,
KAB INTEGER,
KL INTEGER,
K_USL INTEGER,
NT TIME
);

это таблица. делал в запросе приведение типов к дате и времени все равно не работает, но в ибэксперте в режиме трассировки все работает. или он к табоице не обращается?


 
Johnmen ©   (2003-10-10 17:04) [12]

Первая строка процедуры бессмысленна...:)

Ну и вот, пытаешься полю типа DATE присвоить значение типа DOUBLE PRECISION !!!!!!!!!!
См.документацию. Преобразование типов.


 
stud ©   (2003-10-10 17:07) [13]

ну не дабл и интегер DECLARE VARIABLE TEMP_DATE INTEGER;
это время - дабл
а если делаю cast(:temp_date as date) в insert результат тотже.


 
stud ©   (2003-10-10 17:24) [14]

а первая строка это уже метод научного тыка работает вовсю))



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

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

Наверх




Память: 0.49 MB
Время: 0.031 c
1-98690
Oleg Barsky
2003-10-21 11:12
2003.10.30
Нужно в определенной дерриктории найти все файлы опр. расширением


1-98685
Term
2003-10-21 12:04
2003.10.30
Как определить имя компьютера?


1-98635
Kein
2003-10-15 16:41
2003.10.30
проверка пароля при входе


7-98909
Jakommo
2003-08-20 10:10
2003.10.30
Ошибка 1053 при запуске сервиса.


14-98815
Zhouck
2003-10-12 13:56
2003.10.30
Как вам пара Россия - Испания