Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Создание таблицы через SQL

1.9K
20 апреля 2004 года
svetik
53 / / 01.08.2003
Уважаемые знатоки access'а и SQL!

Подскажите, пожалуйста, как создать таблицу с полем Double у которого число десятичных знаков можно указать явно (через SQL)

У меня это выглидит так:

sql = "CREATE TABLE tab1 (Код Long, Курс Currency, Сумма DOUBLE );"
cnn.Execute sql

Все хорошо, да только поля КУРС и СУММА ,по умолчанию, имеют число десятичных знаков "Авто". А мне надо это явно задать.

Подскажите, что еще надо дописать в эту SQL-евскую строку.

Спасибо, всем кто откликнется но зов помощи!
258
21 апреля 2004 года
SergeySV
1.5K / / 19.03.2003
Цитата:
Originally posted by svetik
Уважаемые знатоки access'а и SQL!

Подскажите, пожалуйста, как создать таблицу с полем Double у которого число десятичных знаков можно указать явно (через SQL)

У меня это выглидит так:

sql = "CREATE TABLE tab1 (Код Long, Курс Currency, Сумма DOUBLE );"
cnn.Execute sql

Все хорошо, да только поля КУРС и СУММА ,по умолчанию, имеют число десятичных знаков "Авто". А мне надо это явно задать.

Подскажите, что еще надо дописать в эту SQL-евскую строку.

Спасибо, всем кто откликнется но зов помощи!



Судя по всему ты пишешь под Access,... потому что свойство поля - число десятичных знаков является доп. свойством (или как говорят на языке ADO являются динамическими свойствами). Поэтому в универсальном языке SQL (пусть даже и в спец. версии SQL под Access) не предусмотрено указание таких тонкостей.

Если очень надо, то для того чтобы добраться до этих свойств надо использовать ADO, который дин. образом формирует доступные свойства OLE DB провайдера и позволяет к ним обращаться.
Например, достаточно известный пример, это добавления к полю своих пояснений (показывается справа от поля в конструкторе), это дин. свойство Description.

P.S. Приятно видеть старых знакомых :) книжку смогла достать?

1.9K
21 апреля 2004 года
svetik
53 / / 01.08.2003
Цитата:
Originally posted by SergeySV


Судя по всему ты пишешь под Access,... потому что свойство поля - число десятичных знаков является доп. свойством (или как говорят на языке ADO являются динамическими свойствами). Поэтому в универсальном языке SQL (пусть даже и в спец. версии SQL под Access) не предусмотрено указание таких тонкостей.

Если очень надо, то для того чтобы добраться до этих свойств надо использовать ADO, который дин. образом формирует доступные свойства OLE DB провайдера и позволяет к ним обращаться.
Например, достаточно известный пример, это добавления к полю своих пояснений (показывается справа от поля в конструкторе), это дин. свойство Description.

P.S. Приятно видеть старых знакомых :) книжку смогла достать?

1.9K
21 апреля 2004 года
svetik
53 / / 01.08.2003
Черт, не получилось с первого раза.

Извиняюсь, за свой дурацкий вопрос. До меня дошло (правда уже после отправки сообщения), что это Access-овский параметр а не SQL.

P.s. Книжку купила!!! Она мне очень помогла. Mercy за совет.
Правда, остался еще один вопросик (наверное такой же дурацкий). Если позволите, я его задам.
Как создать MDE файл? У меня почему-то данный пункт меню не активен (Access вроде бы устанавливала по максимуму).

А вообще, ОГРОМНОЕ спасибо за помощь.
258
22 апреля 2004 года
SergeySV
1.5K / / 19.03.2003
Цитата:
Originally posted by svetik
Черт, не получилось с первого раза.

Извиняюсь, за свой дурацкий вопрос. До меня дошло (правда уже после отправки сообщения), что это Access-овский параметр а не SQL.

P.s. Книжку купила!!! Она мне очень помогла. Mercy за совет.
Правда, остался еще один вопросик (наверное такой же дурацкий). Если позволите, я его задам.
Как создать MDE файл? У меня почему-то данный пункт меню не активен (Access вроде бы устанавливала по максимуму).

А вообще, ОГРОМНОЕ спасибо за помощь.



Сервис/Служебные программы/Создать MDE-файл

Сложней всего найти как сохранить свою базу в формате mda - надстройка Access. Ответ - никак, этого пункта в меню нет, убрали за ненадобностью, чтобы Access считал твою mdb базу надстройкой, достаточно сменить у базы mdb расширение на mda
Весело да :) Если заинтересуют особенности создания mda, пиши, я сам с ними недавно разбирался.

1.9K
23 апреля 2004 года
svetik
53 / / 01.08.2003
Сначала хочу разобраться с MDE.
Оказалось, что моя база другой версии, поэтому менюшка была не доступна. Конвертнула, меню доступно, но все равно не создается. Почему? (пишет Acces was unable to create MDE, а почему не понятно. Может из-за того, что у меня в старт апе прописана функция, хотя вряд ли) Попробую еще поковыряться, но если будут идеи, напишите мне пожалуйста.

p.s. А про MDA обязательно посмотрю и если что ....
258
23 апреля 2004 года
SergeySV
1.5K / / 19.03.2003
Цитата:
Originally posted by svetik
Сначала хочу разобраться с MDE.
Оказалось, что моя база другой версии, поэтому менюшка была не доступна. Конвертнула, меню доступно, но все равно не создается. Почему? (пишет Acces was unable to create MDE, а почему не понятно. Может из-за того, что у меня в старт апе прописана функция, хотя вряд ли) Попробую еще поковыряться, но если будут идеи, напишите мне пожалуйста.

p.s. А про MDA обязательно посмотрю и если что ....



Возникающие ошибки при создании mde файла достаточно известная проблема, возникает она из-за того что в базе изначально уже есть какие-то ошибки.

Да, да, именно есть. Просто когда мы запускаем базу на выполнение, то она компиллирует только те модули которые необходимы для работы именно сейчас базы и которые не имеют значка о том что модуль уже откомпиллирован. Может сложится такая ситуция например, что у модуля юудет стоять статус что он откомпиллирован и при этом в нем в одной из функции есть ошибка, а так как он имеет статус откомпилл. модуля, то Access не будет его еще раз компиллировать при вызове меню Debug из редактора. Эти моменты хорошо описаны у Гетца в первом томе -
Глава 13 Оптимизация приложения, Пункт: Оптимизация и компиляция модулей VBA.

Так вот, когда ты запускаешь сохранение в mde формат, то Access принудительно снимает флажки о компиляции и компилярует весь код базы заново, с чистого листа как говорится.

Если ты хочешь обнаружить ошибки в своей базе, то необходимо сбросить флажки о компиляции у всех модулей, это можно сделать несколькими способами (у Гетца есть про ключ Decompl...), кроме этого некоторые придерживаются другого варианта, считающегося более безопасным - это импорт всех объектов в новую пустую базу и последующая компиляция. Этот метод имеет несколько преймуществ о которых полезно почитать: блин, ща немогу найти, hiprog.ru еле ползает, но там была и статья и модуль, который все автоматом делал

1.9K
24 апреля 2004 года
svetik
53 / / 01.08.2003
Спасибо преогромное. Беду разбираться где у меня ошибки (хотя вроде бы все работает нормально)
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог