powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / FB и update
12 сообщений из 37, страница 2 из 2
FB и update
    #36261481
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Автор: Местами администратор
> С null значениями можно бороться с помощью NVL()

Это если сервер или ОДБС-драйвер поддерживает эту функцию :)
Для FB это будет Coalesce и повторюсь совсем не нужно боротся, на самом деле null очень удобная вещь

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
FB и update
    #36261507
RIGOR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
>Игорь Горбонос
>Какая ошибка?
Syntax error
...
Рейтинг: 0 / 0
FB и update
    #36261531
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Автор: RIGOR
> >Игорь Горбонос
> >Какая ошибка?
> Syntax error

Это кто пишет? и на что так пишет?

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
FB и update
    #36261546
RIGOR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Это пишет Фокс, когда, написав процедуру, пытаюсь запустить SQLEXEC(SQLCONNECT('Connect1'),"execute procedure NEW_PROCEDURE()")
...
Рейтинг: 0 / 0
FB и update
    #36261575
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Автор: RIGOR
> Это пишет Фокс, когда, написав процедуру, пытаюсь запустить SQLEXEC(SQLCONNECT('Connect1'),"execute procedure
> NEW_PROCEDURE()")

В IBExpert'e эта процедура выполняется нормально?
дай DDL таблиц и процедуры

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
FB и update
    #36261616
RIGOR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Таблица для адресов
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
CREATE TABLE H02_PERSADDRESSES (
    PERSON_ID     INTEGER NOT NULL,
    KLADR_ID      INTEGER NOT NULL,
    HOUSE         VARCHAR( 10 ),
    SECTION       VARCHAR( 10 ),
    APARTMENT     VARCHAR( 10 ),
    TPE_ID        VARCHAR( 8 ),
    ADD_DATE      DATE DEFAULT 'today' NOT NULL,
    ADD_TIME      TIME DEFAULT 'now' NOT NULL,
    INVAL_DATE    DATE,
    INVAL_TIME    TIME,
    INVAL_REASON  VARCHAR( 32 ),
    USR_NAME      VARCHAR( 16 ) DEFAULT user NOT NULL
);


Процедура
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
CREATE PROCEDURE HZ 
as
declare variable house varchar( 10 );
declare variable section varchar( 10 );
declare variable apartment varchar( 10 );
declare variable kladr_id integer;
declare variable id_person integer;
declare variable inval_reason varchar( 32 );
declare variable inval_date date;
begin
for select house,section,apartment,kladr_id,id_person  ,inval_reas  ,inval_date
from badedres
into :house,:section,:apartment,:kladr_id,:id_person,:inval_reason,:inval_date
do
begin
update H02_PERSADDRESSES
set inval_date = :inval_date, inval_reason = :inval_reason
where person_id =  :id_person and kladr_id=:kladr_id   ;

end
end

В IBE выполняется нормально
...
Рейтинг: 0 / 0
FB и update
    #36261626
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Где badedres?

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
FB и update
    #36261682
RIGOR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Извини
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
CREATE TABLE BADEDRES (
    KLADR_ID    INTEGER,
    ID_PERSON   INTEGER,
    INVAL_DATE  DATE,
    INVAL_REAS  VARCHAR( 32 ),
    HOUSE       VARCHAR( 10 ),
    SECTION     VARCHAR( 10 ),
    APARTMENT   VARCHAR( 10 )
);
...
Рейтинг: 0 / 0
FB и update
    #36261716
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
CREATE TABLE BADEDRES (
    ID_PERSON     INTEGER NOT NULL,
    KLADR_ID      INTEGER NOT NULL,
    HOUSE         VARCHAR( 10 ),
    SECTION       VARCHAR( 10 ),
    APARTMENT     VARCHAR( 10 ),
    TPE_ID        VARCHAR( 8 ),
    ADD_DATE      DATE DEFAULT 'today' NOT NULL,
    ADD_TIME      TIME DEFAULT 'now' NOT NULL,
    INVAL_DATE    DATE,
    INVAL_TIME    TIME,
    INVAL_REAS    VARCHAR( 32 ),
    USR_NAME      VARCHAR( 16 ) DEFAULT user NOT NULL
);
Таблицу я сделал такую, и вызов:
Код: plaintext
1.
2.
3.
nStatementHandle = SQLCONNECT("tror")
? SQLEXEC(nStatementHandle,"execute procedure HZ")
? MESSAGE()
SQLDISCONNECT(nStatementHandle)
вставил по строчке в каждую из таблиц, после ваызова процедуры поля в H02_PERSADDRESSES обновились.

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
FB и update
    #36261719
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"tror" - это у меня DSN


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
FB и update
    #36261954
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
процедура:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
nStatementHandle = SQLConnect("tror")
SQLExec(nStatementHandle,"select * from H02_PERSADDRESSES")
Browse
SQLExec(nStatementHandle,"select * from BADEDRES")
Browse
SQLExec(nStatementHandle,"execute procedure HZ")
SQLExec(nStatementHandle,"select * from H02_PERSADDRESSES")
Browse
SQLDisconnect(nStatementHandle)
и результат выполнения:
PERSON_ID KLADR_IDHOUSESECTIONAPARTMENTTPE_IDADD_DATEADD_TIMEINVAL_DATEINVAL_TIMEINVAL_REASONUSR_NAME 11nullnullnullnull20.10.200911:31:38nullnullnull SYSDBA
ID_PERSONKLADR_IDHOUSESECTIONAPARTMENTTPE_IDADD_DATEADD_TIMEINVAL_DATEINVAL_TIMEINVAL_REASUSR_NAME 11dfgsdthfgnull20.10.200911:30:3301.10.2009nullqqqqqqqSYSDBA
PERSON_IDKLADR_IDHOUSESECTIONAPARTMENTTPE_IDADD_DATEADD_TIMEINVAL_DATEINVAL_TIMEINVAL_REASONUSR_NAME 11nullnullnullnull20.10.200911:31:3801.10.2009nullqqqqqqqSYSDBA

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
FB и update
    #36263388
RIGOR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем спасибо. Особое спасибо Игорю Горбонос. Косяк был в том, что таблицу подключал другой человек. Изначально она называлась BADADRES, а этот нехороший человек написал BADEDRES - разница во вторй гласной. Соответственно этот вариант и выкладывался мной. Разобрался. Еще раз спасибо.
...
Рейтинг: 0 / 0
12 сообщений из 37, страница 2 из 2
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / FB и update
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]