powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / процедура для удаления записей из 2 таблиц
4 сообщений из 29, страница 2 из 2
процедура для удаления записей из 2 таблиц
    #40035112
bastibubu
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
m7m
bastibubu
даже без этого всё обошлось!

Если ты про это
Код: sql
1.
2.
3.
 select i.in_id,i.qnt
     from tInCome i
     where i.indate < :d 

то тут оно и не нужно
а если про это
Код: sql
1.
2.
3.
select i.in_id,i.qnt
     from tInCome i
     where i.indate < '01/01/2018'

то сомневаюсь


m7m , я имел ввиду явное указывание даты в процедуре

Код: plsql
1.
2.
3.
where i.indate < date '01/01/2018'
  ...
 having max(o.outdate) < date '01/01/2018'
...
Рейтинг: 0 / 0
процедура для удаления записей из 2 таблиц
    #40035144
m7m
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
Firebird не дура, Firebird приводит строку к дате, а не наоборот.

Я не прав, совсем
Ну откуда же в голове оно у меня сидит, придется вытравливать :)
...
Рейтинг: 0 / 0
процедура для удаления записей из 2 таблиц
    #40035151
m7m
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
m7m,

Разрыв шаблона
Читаю Руководство по языку SQL СУБД Firebird 2.5

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
Неявное преобразование типов данных

В 3-м диалекте невозможно неявное преобразование данных, здесь требуется указывать
функцию CAST для явной трансляции одного типа в другой. Однако это не относится к 
операции конкатенации, при которой все другие типы данных будут неявно 
преобразованы к символьному. 
При использовании 1-го диалекта во многих выражениях выполняется неявное 
преобразование одних типов в другой без применение функции CAST. Например, в 
выражении отбора в диалекте 1 можно записать:
 
WHERE DOC_DATE < '31.08.2014'                   
               
и преобразование строки в дату произойдёт неявно. 

Из чего делаю вывод что в 3-м диалекте такое не прокатит,
однако прокатывает
...
Рейтинг: 0 / 0
процедура для удаления записей из 2 таблиц
    #40035162
Фотография DarkMaster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
m7m,

Работает и :

Код: plsql
1.
2.
3.
declare d date;

d='01.'||extract(month from current_date)||'.'||extract(year from current_date); --  <- неявное преобразование в строку + преобразование строки в дату
...
Рейтинг: 0 / 0
4 сообщений из 29, страница 2 из 2
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / процедура для удаления записей из 2 таблиц
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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