Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Переименование столбца 
:(
    Опции темы
GePo
Дата 3.8.2006, 13:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 166
Регистрация: 30.3.2003
Где: Москва

Репутация: нет
Всего: 3



Как программно изменить имя определенного столбца в таблице? В своем приложении использую ADO. В Jet SQL в конструкции ALTER TABLE не нашел возможности изменения имени, только типа.
Знаю только такой вариант: создать новый столбец, скопировать значения из старого и удалить старый.
Но неужели нет нормального и быстрого способа переименования?

Это сообщение отредактировал(а) GePo - 3.8.2006, 14:02
--------------------
PM MAIL WWW   Вверх
Akina
Дата 6.8.2006, 17:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 30
Всего: 454



Код

ALTER TABLE tablename
RENAME COLUMN Oldname TO newname


Добавлено @ 17:28 
ВАЖНО!!!
В зависимости от реализации индексы, условия целостности (как для поля, так и для таблицы), вьювы-хранимки-прочее имеют право продолжать ссылаться на СТАРОЕ имя поля.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Данкинг
Дата 2.6.2007, 23:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 1
Всего: 130



Набираю именно так:

Код

ALTER TABLE base RENAME   column addr  to addr1


Не выполняется с ошибкой "Ошибка синтаксиса в инструкции ALTER TABLE"... Почему?!


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Akina
Дата 3.6.2007, 22:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 30
Всего: 454



Цитата(Данкинг @  3.6.2007,  00:41 Найти цитируемый пост)
Набираю именно так:

и именно через ADO?


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Данкинг
Дата 3.6.2007, 22:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 1
Всего: 130



Цитата(Akina @ 3.6.2007,  23:37)
Цитата(Данкинг @  3.6.2007,  00:41 Найти цитируемый пост)
Набираю именно так:

и именно через ADO?

Да, но я и в самом Акцессе то же самое пробую - та же фигня. Кстати, Акцесс у меня 2000 - может, в нём такое не поддерживается?


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Akina
Дата 4.6.2007, 08:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 30
Всего: 454



Цитата(встроенная справка)

Ядро базы данных Microsoft Jet не поддерживает использование инструкции ALTER TABLE и всех инструкций языка определения данных (DDL) с базами данных, несовместимыми со стандартом Microsoft Jet. Применяйте вместо них методы объектов доступа к данным (DAO).
Так что ни через Jet, ни через ADO инструкция работать не будет.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Данкинг
Дата 4.6.2007, 20:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 1
Всего: 130



Дык, добавление столбца же отлично работает!

Код

alter table base add column NNN varchar (100)



--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
Akina
Дата 4.6.2007, 21:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 30
Всего: 454



Цитата(Данкинг @  4.6.2007,  21:26 Найти цитируемый пост)
Дык, добавление столбца же отлично работает!

Значит, оно СОВМЕСТИМО со стандартом Microsoft Jet. За подробностями милости прошу в MSDN. Самостоятельно.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
Данкинг
Дата 4.6.2007, 22:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 1
Всего: 130



Эх, никогда мне Access не нравился.  Если только для хранения простейших данных. smile В общем, Фокс рулит! smile 


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "MS Access"
Akina
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] и [code=sql][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MS Access | Следующая тема »


 




[ Время генерации скрипта: 0.0513 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.