powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Новичок я в этом деле,,
11 сообщений из 11, страница 1 из 1
Новичок я в этом деле,,
    #32132554
i
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
i
Гость
Посоветуйте как лучше сделать. Мне нужно ежедневно обновлять записи в таблице. А брать эти записи нужно в других таблицах (из 4 в 1). Я цепляю их через ODBC объединяю таблицы в Query получается запрос, так вот:
1.как мне этот результат вставить в мою таб. (insert union) не прокатывает
2. Как ежедневно обновлять эти записи?
...
Рейтинг: 0 / 0
Новичок я в этом деле,,
    #32132657
alexia
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. insert <TableName> (Field1, Field2, Field3, Field4) select Table1.Field1, ... Table4.Field4 from Table1, ..., Table4 where ....
2. Удалять и снова вставлять
...
Рейтинг: 0 / 0
Новичок я в этом деле,,
    #32132850
i
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
i
Гость
вот какой запрос у меня получается:
insert result (fiovk, godr, nomls)
select f99b.fiovk, f99b.godr, s99b.nomls
from f99b,s99b where (F99b.nomls=s99b.nomls) and (s99b.oper='878')
это связаны две таблицы, а есть еще такие же две таблицы с одинаковой структурой и стаким же where...Если я объединяю их через union, то результат выводится, но мне надо этот результат вставить в таб result. Result тоже с такой структурой.
...
Рейтинг: 0 / 0
Новичок я в этом деле,,
    #32132882
alexia
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
insert result (fiovk, godr, nomls)
select f99b.fiovk, f99b.godr, s99b.nomls
from f99b,s99b where (F99b.nomls=s99b.nomls) and (s99b.oper='878')
union
select f99b1.fiovk, f99b1.godr, s99b1.nomls
from f99b1,s99b1 where (F99b1.nomls=s99b1.nomls) and (s99b1.oper='878')

либо

insert result (fiovk, godr, nomls)
select f99b.fiovk, f99b.godr, s99b.nomls
from f99b,s99b where (F99b.nomls=s99b.nomls) and (s99b.oper='878')

insert result (fiovk, godr, nomls)
select f99b1.fiovk, f99b1.godr, s99b1.nomls
from f99b1,s99b1 where (F99b1.nomls=s99b1.nomls) and (s99b1.oper='878')
...
Рейтинг: 0 / 0
Новичок я в этом деле,,
    #32132925
i
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
i
Гость
Не прокатывают оба этих запроса. Записи вставляются только если используется один запрос, т.е.

insert result (fiovk, godr, nomls)
select f99b.fiovk, f99b.godr, s99b.nomls
from f99b,s99b where (F99b.nomls=s99b.nomls) and (s99b.oper='878')

ито если после insert стоит into , а вот оба запроса когда я пытаюсь вставить , то пишет general SQL error
...
Рейтинг: 0 / 0
Новичок я в этом деле,,
    #32132945
Фотография SmaLL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Какая база?
...
Рейтинг: 0 / 0
Новичок я в этом деле,,
    #32133114
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. Возможно, вставка записей нарушает уникальность какого-то ключа. Что обязательно будет, если пытаться каждый день заливать все данные. В этом случае таблицу надо сначала очистить. При достаточно больших обемах DELETE FROM будет сильно тормозить, так как все удаляемые записи будут писаться в LOG. Лучше использовать TRUNCATE TABLE, но для этого у юзера должны быть права.

2. Select ... into возможно только если целевая таблица отсутствуеут. Т.е. если такая табла уже есть, то ее надо удалить. А для этого у юзера должны быть права на удаление таблиц. Так же как и на создание.

Если все права есть и все работает из QA, то попробуйте вставить свой запрос в хранимую процедуру и выполнять ее.
...
Рейтинг: 0 / 0
Новичок я в этом деле,,
    #32133148
i
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
i
Гость
База - dbf, таблица куда я пытаюсь впихнуть записи еще пустая, там еще нет никаких записей, вот
...
Рейтинг: 0 / 0
Новичок я в этом деле,,
    #32133155
ivanovich
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Такая проблемма у меня была, при работе с dbf-ками, пробовал под SQL (такой же запрос выполнить) все проходило нормально. Пришлось вставлять двумя запросами.
...
Рейтинг: 0 / 0
Новичок я в этом деле,,
    #32133252
Фотография SmaLL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
С базами dBase работа идЁт через LocalSQL, а она очень порезаная, например нельзя создавать вложенные запросы.
Может проблема в этом!
...
Рейтинг: 0 / 0
Новичок я в этом деле,,
    #32133921
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
i>Дык предупреждать надо. У нас ныне все телепаты в отпуске. А с каждым форматом базы свои заморочки. Так же по моему мнению с DBF удобнее работать через BDE. В BDE-5 SQL почти нормальный
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Новичок я в этом деле,,
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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