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

Вниз

INSERT INTO   Найти похожие ветки 

 
Veetyok ©   (2004-01-14 00:49) [0]

Помогите пожалуйста, у меня такая проблема: у меня две таблицы НОРМАТИВЫ (КодН, НазвН) и производная от нее ОЦЕНКИ (КодО, Оценка, Результат, КодН). мне нужно чтобы (при вводе, например в Edit, НазвН) в таблицу "Ocenki" добавилась одна запись.
-----------
INSERT INTO Ocenki ( Ocenka, Rezult, Id_Normativ )
SELECT 5, 250, Normativs.Id_norm
FROM Ocenki INNER JOIN Normativs ON Ocenki.Id_norm = Normativs.Id_norm
WHERE ((Нормативы.Норматив)=""Jump"")
-----------
В синтаксисе все нормально, добавляется строка, но не одна, а столько, сколько записей с нужным КодН(Id_norm) в таблице ОЦЕНКИ.


 
DrPass ©   (2004-01-14 01:00) [1]

Логично. Потому как ерунда написана. Проще не пробовал?
INSERT INTO Ocenki ( Ocenka, Rezult, Id_Normativ )
SELECT 5, 250, Normativs.Id_norm
FROM Normativs
WHERE ((Нормативы.Норматив)=""Jump"")


 
Veetyok ©   (2004-01-14 01:09) [2]

я щас попробывал - он теперь вводит столько строк, сколько было до этого, короче увеличивает вдвое. не катит, давай что-нить другое :)


 
DrPass ©   (2004-01-14 01:18) [3]

Это будет только в том случае, если в таблице "Нормативы" у тебя полно записей с названием Jump. А должна быть только одна. Если так, то какой у тебя движок БД? Может, он просто не поддерживает в полной мере SQL-92?


 
Veetyok ©   (2004-01-14 06:31) [4]

в таблице Нормативы одна запись с Jump. а для создания Д я использую MS Access


 
DrPass ©   (2004-01-14 20:16) [5]

Тогда не получится - SQL в Access ублюдочный. Тебе нужно будет просто делать это двумя запросами - сперва получаешь код, потом заносишь его в Оценки


 
sniknik ©   (2004-01-14 20:57) [6]

нечего на зеркало ...

> INSERT INTO Ocenki ( Ocenka, Rezult, Id_Normativ )
> SELECT 5, 250, Normativs.Id_norm
> FROM Normativs
> WHERE (( Нормативы.Норматив)=""Jump"")
выборка, условие к одной а значение из другой таблицы?
а если это "опечатка" и это одно и тоже то что выдаст запрос
SELECT 5, 250, Normativs.Id_norm
FROM Normativs
WHERE (Normativs.Норматив="Jump")
? сколько записей ???


 
DrPass ©   (2004-01-14 21:43) [7]

Я предположил, что у него всего одна таблица (Нормативы или Normativs - как правильно, не знаю). Обратное было бы уж слишком маловероятным извращением



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

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

Наверх




Память: 0.48 MB
Время: 0.023 c
3-16055
Trok
2004-01-12 14:19
2004.02.06
Как в FB сделать ключевое составное вычисляемое поле ?


1-16384
AlexNx
2004-01-22 11:50
2004.02.06
Execl


1-16251
Maxim2030
2004-01-26 15:29
2004.02.06
как преобразовать .tlb -> .pas через командную строку


3-16054
Yuri I. Bouloui
2004-01-12 16:16
2004.02.06
TClientDataSet -> TDataSetProvider -> TIBDataSet. Получить ПК?


6-16573
Micah'GF
2003-11-29 19:21
2004.02.06
Правильная посделовательность соединения