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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> INSERT INTO 
V
    Опции темы
Pogreb
Дата 9.4.2008, 02:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Awaiting Authorisation
Сообщений: 69
Регистрация: 17.10.2005

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



Доброго времени суток smile

У меня такой вопрос возник. Я создал базу данных (MS SQL 2005 SQLEXPRESS), в данной базе у меня несколько таблиц.
Первая таблица с именами клиентов. Каждой записи присваивается уникальный ID и это поле естественно Primary key.
Проблема возникает тогда когда я добавляю в базу новую запись. А запись о клиенте добавляется сразу в несколько таблиц, которые ссылаются на ID в таблице с именами. Вставляю я в три таблицы командой INSERT INTO. Поля называются CustomerID в трех таблицах, и связаны между собой и значение NULL не может быть присвоенно.  И когда я выполняю данную SP у меня выдает сообщение об ошибке, о том что мне может добавить, потому что значение NULL не может быть присвоено полю CustomerID.

Можно ли сделать так чтобы при добавлении записи в таблицу с именами, значение CustomerID каскадом добавлялось в другие 2 таблицы???
PM MAIL   Вверх
Itsys
Дата 9.4.2008, 06:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1338
Регистрация: 21.1.2008
Где: г. Москва

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



Цитата(Pogreb @  9.4.2008,  02:14 Найти цитируемый пост)
Можно ли сделать так чтобы при добавлении записи в таблицу с именами, значение CustomerID каскадом добавлялось в другие 2 таблицы

Каскадным может быть только обновление и удаление smile 

Все делается ручками сначала вносишь данные в одну таблицу, потом получаешь либо MAX(CustomerID) либо @@IDENTITY и испольщуешь его при добавлении данных в другие таблицы.
PM MAIL WWW Skype   Вверх
Pogreb
Дата 9.4.2008, 14:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Awaiting Authorisation
Сообщений: 69
Регистрация: 17.10.2005

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



Спасибо.
PM MAIL   Вверх
Magnifico
Дата 9.4.2008, 16:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

Репутация: 10
Всего: 17



Цитата

потом получаешь либо MAX(CustomerID) либо @@IDENTITY


А если CustomerID не счетчик?
 а что типа  :
123_ABC
775_BBB
648_NMN


--------------------
Всё  в  порядке   -   спасибо  зарядке  !
PM MAIL   Вверх
Itsys
Дата 9.4.2008, 22:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1338
Регистрация: 21.1.2008
Где: г. Москва

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



Magnifico, Раз помогло, значит счетчик  smile 
PM MAIL WWW Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "MS SQL"
Akina

Akina

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

Публиковать ссылки и обсуждать взлом чего бы то ни было.

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы составления неспецифических запросов рассматриваются здесь
  • Используйте теги [code=sql][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.

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

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


 




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


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

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