Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Помогите с запросом  [new]
Willii
Member

Откуда:
Сообщений: 32
Здравствуйте помогите пожалуйста составить запрос к базе MSSQL 2005 с 2 таблицами
Или помогите примером.
есть 2 таблицы табле1 и табле2. Первая таблица имеет 2 слотбца ID и Name
Во второй есть тоже 2 столбца табле1ID и Name
Вопрос вот в чем как составить запрос так чтобы одновременно шел insert в обе таблицы но чтобы во второй таблице табле1ID= табле1.ID
8 авг 09, 11:37    [7513948]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом  [new]
Паганель
Member

Откуда: Винница
Сообщений: 22552
Willii
чтобы одновременно шел insert в обе таблицы
Другими словами, данные двух таблиц будут дублировать друг друга?
А зачем? Почему недостаточно одного экземпляра данных?
8 авг 09, 11:42    [7513955]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом  [new]
Willii
Member

Откуда:
Сообщений: 32
На одну запись первой таблицы будут много записей второй таблицы. Один - многим. Просто я мало понимаю в БД но кажется ещё и ключами там как-то делается общем
Есть в первой таблице запись
1 | Иванов. - у него 3 машины белая, красная и чёрная

Во второй надо чтобы получилось
1!белая
1!красная
1!чёрная
8 авг 09, 11:53    [7513961]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом  [new]
Willii
Member

Откуда:
Сообщений: 32
Да забыл сказать запись в первую таблицу надо добавлять этим же запросом
Insert into table1(Name)values(‘Иванов’)
Declare @s int;
Set S=SELECT SCOPE_IDENTITY()
Insert into table2(table1Id, name)values(s, 'белая')
Insert into table2(table1Id, name)values(s, 'красная')
Insert into table2(table1Id, name)values(s, 'чёрная')
8 авг 09, 12:00    [7513965]     Ответить | Цитировать Сообщить модератору
 Re: Помогите с запросом  [new]
Паганель
Member

Откуда: Винница
Сообщений: 22552
Willii
Да забыл сказать запись в первую таблицу надо добавлять этим же запросом
Я не знаю способа вставлять данные в две разные таблицы MS SQL одним запросом
(триггеры не в счет, они могут сделать вид, что запрос один)
Подозреваю, что необходимость "одного запроса" возникла,
чтобы не устраивать чат между клиентом и БД
В таком случае, заверните подобие того, что Вы написали, в хранимку, и дергайте ее с клиента
(один раз передадите ей имя Иванова и список его машин - и всё)
8 авг 09, 12:09    [7513972]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить