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

Вниз

Вопрос для специалистов в области SQL для   Найти похожие ветки 

 
LevVL   (2002-06-24 16:20) [0]

Здравствуйте, уважаемые коллеги. Спасибо за интерес к моей проблеме.
Необходимо создать таблицу SQL-запросом, в которой для некоторых полей задаются значения по умолчанию.
Для доступа к данным использую компоненты ADO.
Делаю следующее:
create table TestTable (Code counter, Name string default "Иванов",Age integer default 30)
Так вот, непосредственно в Access-е такой запрос не работает. Если его выполнять программно, используя в TADOConnection Microsoft.Jet.OLEDB - провайдер, то он работает, но этот провайдер глючит, зараза, в других местах! И я использую более-менее родной для Access-а провайдер for ODBC drivers (MSDASQL), но при выполнении вышеозначенного запроса этот подлец ругается точно также, как в Accesse:
"Ошибка синтаксиса в инструкции CREATE TABLE" !!!
Знает кто-нибудь, что с этим делать, а? С меня бутылка пива - почтой...


 
sniknik   (2002-06-24 17:15) [1]

В каких местах TADOConnection Microsoft.Jet.OLEDB глючит? А то я с ним довольно давно работаю и у меня стойкое заблуждение о том что он нормально пашет во всех местах.
P.S.
Твой "родной" ODBC не понимает слов типа default.


 
LevVL   (2002-06-24 17:50) [2]

Ну ладно, ну хорошо, если уж он такой замечательный, то вот вопрос на засыпку: допустим, есть 2 таблицы - Test1 и Test2.
Вот первая:

create table Test1 (code1 counter not null primary key, name1 string)

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

create table Test2 (code2 integer not null,name2 string,foreign key (code2) references Test1(code1), update of Test1 cascades)

Но этот дьявол на такую мою хрень выдаёт следующее:
"Ошибка синтаксиса при определении поля" !!!
Что мне с этим делать, а? Я уже на всё согласный - пусть будет хотя бы и Jet-провайдер!


 
LevVL   (2002-06-24 18:05) [3]

Приношу всем свои извинения - ошибка синтаксиса при создании второй таблицы, ибо нужно с этим Jet-провайдером писать так:

create table test2 (code2 integer not null ,name2 string,foreign key (code2) references Test1(code1) on update cascade on delete cascade)


 
sniknik   (2002-06-24 18:47) [4]

Ну вот все же работает и именно через Jet. А через ODBC такое не воспринимается.
?? Говорил что глючит и сам же даеш рабочие под Jet-том примеры.

Роднее чем Jet для Access-а не придумаеш если уж сам Access через него работает.
в первом случае через ODBC нужно убрать после запятой update и дальше а второй полностью рабочий.



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

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

Наверх




Память: 0.45 MB
Время: 0.011 c
1-47254
Александр
2002-06-29 11:48
2002.07.15
Ошибка при установке DPK


14-47689
Malder
2002-06-14 21:19
2002.07.15
Придумал вот тут идею программы


4-47895
Alexander
2002-05-15 20:55
2002.07.15
обработка WM_LBUTTONDOWN


14-47698
Igorek
2002-06-17 23:33
2002.07.15
~Rand~, обьясни нам глупым что ты хочешь - может поймем.


7-47832
zooooo
2002-04-22 02:20
2002.07.15
Отключение/включение мыши/клавы





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