Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Delphi > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail


Донат для форума - использовать для поднятия настроения себе и модераторам

А ещё здесь можно купить рекламу за 25 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Ответ
 
Опции темы
Старый 26.03.2013, 16:17   #1
silent_lab
Пользователь
 
Регистрация: 16.06.2009
Сообщений: 36
Репутация: 10
Вопрос Дополнительное поля в Select в которой значение из EDIT

Всем здрасти !
Возник вопрос как добавить дополнительные поля в SELECT с уже присвоенными значениями, бд Access.

вот пример запроса :
Код:
INSERT INTO Table2 SELECT Table1.Pole1, Table1.Pole2, ('+Edit1.text+') AS Pole3, ('+DateTimePicker.Date+') AS DateIMP FROM Table1
не получаеться. Подскажите как реализовать.
silent_lab вне форума   Ответить с цитированием
Старый 26.03.2013, 16:24   #2
Yurk@
ПрофессионалДжуниор
 
Аватар для Yurk@
 
Регистрация: 19.12.2007
Адрес: Украина, г. Днепропетровск
Сообщений: 1,100
Репутация: 351

icq: 433559969
skype: vys.yurka
По умолчанию

Код:
INSERT INTO Table2 SELECT Table1.Pole1, Table1.Pole2, '+Edit1.text+', '+DateTimePicker.Date+' FROM Table1
а так?
если нет, можно попробовать заменить переменные на параметры
__________________
На форуме: Помогаю за спасибо
ICQ\Skype: Это моё личное время ...
Yurk@ вне форума   Ответить с цитированием
Старый 26.03.2013, 16:25   #3
silent_lab
Пользователь
 
Регистрация: 16.06.2009
Сообщений: 36
Репутация: 10
По умолчанию

попробую ща отпишусь
silent_lab вне форума   Ответить с цитированием
Старый 26.03.2013, 16:34   #4
silent_lab
Пользователь
 
Регистрация: 16.06.2009
Сообщений: 36
Репутация: 10
По умолчанию

выдает ошибку ((((
вот код:
Код:
with TADOCommand.Create(nil) do
              try
                Connection := AConnection;
                CommandText := 'INSERT INTO imp_lpu SELECT xls_imp.A, xls_imp.B, xls_imp.C, xls_imp.D, xls_imp.E, xls_imp.F, xls_imp.G, '+DateToStr(DateTimePicker1.Date)+', '+Edit1.Text+' FROM xls_imp';
                 try
                  Execute;
                 except
                  ShowMessage('Ошибка Обьединения !');

                 end;
              finally
                Free;
              end;
silent_lab вне форума   Ответить с цитированием
Старый 26.03.2013, 16:47   #5
Yurk@
ПрофессионалДжуниор
 
Аватар для Yurk@
 
Регистрация: 19.12.2007
Адрес: Украина, г. Днепропетровск
Сообщений: 1,100
Репутация: 351

icq: 433559969
skype: vys.yurka
По умолчанию

а текст ошибки можно глянуть то?)
и заодно: таблица imp_lpu соответствует выборке по полям "xls_imp.A, xls_imp.B, xls_imp.C, xls_imp.D, xls_imp.E, xls_imp.F, xls_imp.G, '+DateToStr(DateTimePicker1.Date)+' , '+Edit1.Text+'" ?
__________________
На форуме: Помогаю за спасибо
ICQ\Skype: Это моё личное время ...

Последний раз редактировалось Yurk@; 26.03.2013 в 16:50.
Yurk@ вне форума   Ответить с цитированием
Старый 26.03.2013, 16:54   #6
silent_lab
Пользователь
 
Регистрация: 16.06.2009
Сообщений: 36
Репутация: 10
По умолчанию

Да количество полей равно + в таблице imp_lpu 1е поле счетчик (id).
тоесть выходит что в таблице xls_imp - 9 полей , а в таблице imp_lpu -10 так как 1е поле счетчик (id)
именно код ошибки и не говорит уменято клиент самописный.
silent_lab вне форума   Ответить с цитированием
Старый 26.03.2013, 17:01   #7
silent_lab
Пользователь
 
Регистрация: 16.06.2009
Сообщений: 36
Репутация: 10
По умолчанию

Еще из за разных имен полей может быть ?
silent_lab вне форума   Ответить с цитированием
Старый 26.03.2013, 17:09   #8
Аватар
Модератор
Заслуженный модератор
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Адрес: Северодонецк.ua
Сообщений: 18,998
Репутация: 6725
По умолчанию

SQL не понимает текст полученный из DateToStr(DateTimePicker1.Date). Его как минимум в кавычки нужно взять и все равно не факт, что поймет, если поле-приемник типа дата-время. Лучше параметризировать запрос. Имена полей не причем. Главное, что бы приведение типов нормально сработало
__________________
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 26.03.2013 в 17:11.
Аватар на форуме   Ответить с цитированием
Старый 26.03.2013, 17:11   #9
silent_lab
Пользователь
 
Регистрация: 16.06.2009
Сообщений: 36
Репутация: 10
По умолчанию

поле даты, имеет тип строки
silent_lab вне форума   Ответить с цитированием
Старый 26.03.2013, 17:18   #10
silent_lab
Пользователь
 
Регистрация: 16.06.2009
Сообщений: 36
Репутация: 10
По умолчанию

INSERT INTO imp_lpu
SELECT xls_imp. as n_p, xls_imp.B as date_v,xls_imp.C as fio_v_tabn, xls_imp.D as fio_p, xls_imp.E as sn_polis, xls_imp.F as snils, xls_imp.G as sn_recept, '09,10,1978' as date_imp, 'NEWSSSSS' as id_lpu
FROM xls_imp;

А вот так Access разрешил !!! что самое странное
silent_lab вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Значение поля Edit Умагаджи Общие вопросы Delphi 7 10.05.2012 16:01
Edit + Select All SteAlzzer Win Api 1 21.12.2011 16:23
анкета, в которой должны быть заполнены все поля SILENT DImON JavaScript, Ajax 3 09.12.2010 02:15
как получить значение поля грид на основе значения другого lookUp поля malayka БД в Delphi 0 21.04.2010 19:06
can't edit, may select (combobox) TaTT DoGG Общие вопросы .NET 2 04.01.2009 17:17


20:39.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.