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

Вниз

Добавление записей через запрос из одной таблицы в другую   Найти похожие ветки 

 
VOPROS   (2007-01-09 14:29) [0]

Доброго времени суток, уважаемые Мастера!
Таблицы Foxpro, ADOQuery
Таблица2 имеет несколько полей, совпадающие с полями таблицы 1, + свои собственные поля, которых нет в таблице 1
Из таблицы1 в таблицу2 добавляю записи, пишу так:
INSERT INTO table2 (bzv,bzv1,bzs) SELECT bzv,bzv1,bzs FROM table1
В этом случае выходит ошибка "Field ... does not accept null values", при этом Field - это собственное поле таблицы 2.
Тогда пишу так:
INSERT INTO table2 (bzv,bzv1,bzs,pole) SELECT bzv,bzv1,bzs,"""" as pole FROM table1
Вообщем, пришлось перечислить таким образом все поля, которых не было в первой таблице. Работает. НО - такие поля числового типа получают значение нуля, мне же необходимо, чтоб они были пустыми. Как это можно сделать?
Прошу помочь. Спасибо.


 
Ega23 ©   (2007-01-09 14:34) [1]

см. свойство колонки. если оно not null - ты там вообще null-значение никогда не получишь.
Иначе:
INSERT INTO table2 (bzv,bzv1,bzs,pole) SELECT bzv,bzv1,bzs,null as pole FROM table1


 
VOPROS   (2007-01-10 06:20) [2]


> см. свойство колонки. если оно not null - ты там вообще
> null-значение никогда не получишь.

вот именно - такое свойство не установлено. Вообще я пишу маленькую примочку к одной программе без исходников, помогающую скидывать не одну, а несколько таких таблиц 1 - сама программа может закидывать только одну таблицу и при этом в полях таблицы 2, которых нет в первой, значения пустые (проверялось не только на глаз, но и запросом) ???


> Иначе:
> INSERT INTO table2 (bzv,bzv1,bzs,pole) SELECT bzv,bzv1,bzs,
> null as pole FROM table1

Уже было опробовано - в таком случае ругается "SQL: can not determine datatype of sql column pole"  ???


 
Ega23 ©   (2007-01-10 09:28) [3]

Ошибка  "Field ... does not accept null values" плохо сочетается с
> вот именно - такое свойство не установлено.


 
Desdechado ©   (2007-01-10 11:27) [4]

> can not determine datatype of sql column pole
CAST( null AS NUMBER ) AS pole

PS а вообще явные противоречия в вопросах
темнить долго будешь?


 
VOPROS   (2007-01-11 13:39) [5]


> > can not determine datatype of sql column pole
> CAST( null AS NUMBER ) AS pole

и опять же "Field ... does not accept null values"


> Ошибка  "Field ... does not accept null values" плохо сочетается
> с
> > вот именно - такое свойство не установлено.

прекрасно это понимаю, вообще свойства полей проверялись черех tabledesigner FoxPro, там ничего не помечено, посоветуйте, где еще можно глянуть. В любом случае я не понимаю, как человек, писавший ту программу, смог все же закинуть данные из 1 таблицы, оставив при этом pole пустым??? И как сделать это мне?


 
Desdechado ©   (2007-01-11 13:43) [6]

Что-то я не припоминаю, чтобы в фоксе было возможно поставить ограничение NOT NULL на поле.
Может, ты в подключении намудрил или провайер такой?


 
VOPROS   (2007-01-11 14:09) [7]


> Что-то я не припоминаю, чтобы в фоксе было возможно поставить
> ограничение NOT NULL на поле.

вообще-то там есть свойство NULL, но в результате экспериментов оно показало, что не является ограничением

> Может, ты в подключении намудрил или провайер такой?

в подключении только путь к каталогу с таблицами, режим ReadWrite и Loginprompt=false, остальное по умолчанию. Провайдер Microsoft OLE DB Provider for Visual FoxPro 9.0 ???



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

Форум: "Начинающим";
Текущий архив: 2007.01.28;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.039 c
15-1168255147
i-am-vladko
2007-01-08 14:19
2007.01.28
Статья "Написание оптимального кода под Delphi"


3-1163013159
ivan8511
2006-11-08 22:12
2007.01.28
Создать программно базу данных


15-1168004495
Slider007
2007-01-05 16:41
2007.01.28
С днем рождения ! 5 января


15-1168349734
@!!ex
2007-01-09 16:35
2007.01.28
Углы Эйлера


15-1168419709
DVM
2007-01-10 12:01
2007.01.28
Вопрос по использованиии лицензионной Delphi





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский