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

Вниз

BatchMove не работает с вычисляемым полем!   Найти похожие ветки 

 
Соловьев   (2003-01-09 12:23) [0]

Использую BatchMove для сохранения данных из одной таблицу в другую. Если поле не вычисляемое , то все нормально, а как быть с вычисляемым?


 
MsGuns ©   (2003-01-09 13:00) [1]

Если обе таблицы идентичны, то не имеет смысла переписывать вычисляемые поля,- они сами по себе смысла не имеют. Если же в исх.таблице такого поля физически нет, а в результирующую надо его переписывать как поле обычное, то лучше это делать SQL-запросом.


 
Соловьев   (2003-01-09 13:05) [2]

Мне надо переписывать все записи с одной таблицы в другую: вычисляемое поле из первой в физическое поле второй. На сколько я знаю SQL добавляет по одной записи. А может я чего-то не понимаю. Сорри. Может поможите с SQL запросом тогда: чтобы добавлял множество.


 
MsGuns ©   (2003-01-09 13:12) [3]

Структуры таблиц - в студию !


 
Соловьев   (2003-01-09 13:18) [4]

2 MsGuns
Ты наверное не понял: мне надо сохранить вычисляемое поле из первой во вторую. SQL этого не сделает.


 
gek ©   (2003-01-09 13:30) [5]


> как быть с вычисляемым?

Никак см. MsGuns © (09.01.03 13:00)


 
Соловьев   (2003-01-09 13:30) [6]

А множество он добавить сможет, я не знал. :((((
insert into <table1> <select * from table2 >


 
Val ©   (2003-01-09 13:38) [7]

>Соловьев (09.01.03 13:30)
SQL этого не сделает.
На сколько я знаю SQL добавляет по одной записи
Прежде чем утверждать, неплохо бы изучить предмет.
В Вашем случае, лучший выход именно SQL.


 
Соловьев   (2003-01-09 13:40) [8]

2 Val
Да, с SQL я недоучил, но попробуй сохранить с помощью SQL вычисляемое поле.


 
Val ©   (2003-01-09 13:48) [9]

>Соловьев (09.01.03 13:40)

> но попробуй

Что пробовать, делать надо :)
Давайте структуры таблиц, для начала.
Единственная проблема может возникнуть в том, что Local SQL не поддержит конструкции, тогда придется ваоспользоваться Local views, возможно.


 
MsGuns ©   (2003-01-09 13:52) [10]

>Val © (09.01.03 13:48)
>Единственная проблема может возникнуть в том, что Local SQL не поддержит конструкции, тогда придется ваоспользоваться Local views, возможно.

Local SQL поддерживает бОльшую часть конструкций: конъюнкцию-дизъюнкцию, всю арифметику и еще кое-что. Но если там и взаправду зубодробительный алгоритм вычисляемого поля, то тогда вопросы к разработчику приложения.
А вообще-то без структур и формулы это все базарный п....ж !



 
Val ©   (2003-01-09 13:55) [11]

>MsGuns © (09.01.03 13:52)
согласен с утверждениями, с последним в особенности, но, Сергей, я говорил о вложенном в insert select"e, тут может не сработать на Local"е, хотя, я, конечно же, могу ошибаться.


 
Соловьев   (2003-01-09 14:01) [12]

OK!
Пишу. Структура такая:
Таблица №1
Поле1 - Name = VYDAN, type=character, size=150.
Остальные поля в вычислении не принимают участия поэтому не пишу.
В этом поле хранится Бог знает что - инфу набивали, кто только угодно. Алгорит такой, что нужно выцепить из строки ДАТУ и КЕМ ВЫДАН ДОКУМЕНТ=вся строка-ДАТА(или ЧАСТЬ ДАТЫ), если этого нельзя сделать то выдать всю строку.

Таблица №2
Поле1 - name=ID_VYDAN, type=numeric, size=2,0
Поле2 - name=N_VYDAN, type=character, size=150

Так вот нужно сохранить КЕМ ВЫДАН ДОКУМЕНТ в N_VYDAN.


 
Mike Kouzmine   (2003-01-09 14:09) [13]

Наверное, только while not eof appendrecord


 
Val ©   (2003-01-09 14:12) [14]

ничего не понял :(
где вычисляемое поле?
Поле1 - Name = VYDAN или нужно выцепить из строки ...?


 
Соловьев   (2003-01-09 14:19) [15]

КЕМ ВЫДАН ДОКУМЕНТ, ДАТА и ДРУГОЕ - 3 вычисляемых поля из одного.


 
Val ©   (2003-01-09 14:35) [16]

мда...вычисляемое поле называется. придется разбирать строку на паскале и добавлять по одной записи. см.Mike Kouzmine (09.01.03 14:09)


 
Соловьев   (2003-01-09 14:37) [17]

Я так и делаю. Но сохранять потом около 30 тыс записей перебором очень долго.


 
Val ©   (2003-01-09 14:39) [18]

это нормально для одноразовой работы


 
MsGuns ©   (2003-01-09 15:45) [19]

Как чувствовал :)) Зубодробительный !!!! Делал когда-то подобные вещи. Одним проходом без ручного контроля-правки тут обойтись тяжело. И это надо было всунуть в OnCalcFields ?!?! Ну уж, как говорится, флаг в руки, а древко - в ....


 
sniknik ©   (2003-01-09 15:47) [20]

Можно попробовать разбить строку если перейти на ADO + Jet (тогда в запросе многие функции бейсика доступны, получится чуть ли не программа в одном запросе)
но для одного раза действительно не стоит огород городить.



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

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

Наверх




Память: 0.51 MB
Время: 0.015 c
6-87003
boolean
2002-11-30 14:38
2003.01.27
Мастера, подскажите


3-86636
Ramil
2003-01-06 13:05
2003.01.27
Как отправить на севрер из локальной базы.


8-86985
daos
2002-10-09 13:20
2003.01.27
ПОМОГИТЕ ПОЖАЛУЙСТА!!! Экран >> видео.


1-86957
viper
2003-01-17 10:10
2003.01.27
DLL and EXE


1-86740
Vovaka
2003-01-17 10:11
2003.01.27
Кто-нибудь в тредах отправлял почту или файлы по ftp ?