Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2005.02.06;
Скачать: [xml.tar.bz2];

Вниз

Почему не работает SQL запрос?   Найти похожие ветки 

 
Apophis ©   (2004-12-29 22:03) [0]

Имеем:
1) таблицу Paradox table1.db:
  f0 autoincrement
  f1 varchar(20)
  f2 varchar(20)
2) SQL:
  insert into table1 (f1, f2)
  select f1,f2 from table1;

Требуется:
1) Создать новую запись в таблице tabl1 из существующей. Другими словами, необходимо создать копию существующей записи.
2) При создании копии - изменить значение поля f1.

Проблема: при выполнении запроса ошибка "Capability not supported."

Вопрос:
1) Почему происходит ошибка?
2) Как реализвать то, что требуется без создания временных таблиц?

Спасибо.


 
Fay ©   (2004-12-29 22:30) [1]

А без SQL работать с локальной базой считается западло?


 
Apophis ©   (2004-12-29 23:11) [2]

Fay ©
Ну вот зачем сразу так отвечать? Я задал конкретный четкий вопрос, а западло или не западло - это, возможно, другой вопрос.


 
Johnmen ©   (2004-12-29 23:41) [3]

insert into table1 (f0, f1, f2)
select 0, f1, f2 from table1;


 
Apophis ©   (2004-12-29 23:53) [4]

Johnmen
Пробовал, ошибка та же. Плюс, f0 - автоинкрементное. Поэтому я в вопросе указывал поля без f0.


 
Johnmen ©   (2004-12-29 23:56) [5]

>Apophis ©  (29.12.04 23:53) [4]

тогда поясни

>необходимо создать копию существующей записи.


 
Anatoly Podgoretsky ©   (2004-12-29 23:58) [6]

varchar для Парадокса не поддержан


 
Apophis ©   (2004-12-30 01:28) [7]

Ну, с varchar-ом это я по инерции написал, - Alphanumeric. А что пояснять-то? Поясняю: нужно создать копию записи из существующей таблицы в ЭТОЙ же таблице посредством SQL запроса.  Структура таблицы - в вoпросе.


 
Fay ©   (2004-12-30 01:29) [8]

Anatoly Podgoretsky ©   (29.12.04 23:58) [6]
Ужас какой!!!


 
Apophis ©   (2004-12-30 02:01) [9]

2 Fay: Ну, допустим, типа "президент" Украины Ющ куда страшнее данного топика, расслабся!:)

Я тут только что книжку одну умную почитал, в связи с чем возник вопрос: какой стандарт SQL используется в Delphi7? Если SQL1, то первоначальный вопрос снимается, так как в этой реализации "самодобавление" в одну и ту же таблицу запрещено. Если SQL2 - почему не работает?


 
ЮЮ ©   (2004-12-30 06:18) [10]

Что значит "копию", если f0 - автоинкремент, а "значение поля f1 надо изменить при записи"? Как именно надо изменить?

>необходимо создать копию существующей записи
Какой именно записи? В твоем запросе нет WHERE, т.е. твой запрос должен для каждой записи создать дубликат

>при выполнении запроса ошибка "Capability not supported."
Как выполняется запрос? Query.ExecSQL, где Query.SQL содержит указанный запос?


 
Johnmen ©   (2004-12-30 09:23) [11]

>какой стандарт SQL используется в Delphi7?

Понимаешь, вопрос даже так не стоИт, какой стандарт.
Никакой...
А вопрос аналогичен "какая версия бейсика используется в Delphi7"
:)


 
Sandman25 ©   (2004-12-30 09:57) [12]

Для Paradox одной операцией скопировать таблицу невозможно. Можно тремя операциями - скопировать таблицу под другим именем, вставить данные новой таблицы в старую, удалить новую таблицу.


 
Apophis ©   (2004-12-30 11:13) [13]

В принципе то, что я и ожидал. Все, тема закрыта! ВСЕМ спасибо!



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

Форум: "Базы";
Текущий архив: 2005.02.06;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.035 c
14-1106121963
syte_ser78
2005-01-19 11:06
2005.02.06
Пример с книги Delphi 3 не работает на Delphi 6


14-1105971912
1008
2005-01-17 17:25
2005.02.06
Пиво опен сурс


9-1099395514
Sphinx
2004-11-02 14:38
2005.02.06
Заголовочные файлы DX


6-1101115999
BFG9k
2004-11-22 12:33
2005.02.06
Закачка файла через FTP


9-1099593515
ОлегЪ
2004-11-04 21:38
2005.02.06
Генерация ландшафта





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский