![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Три проблемы [D6, MSSQL]
MS-REM © (2005-08-10 16:35:00)Здравствуйте УВАЖАЕМЫЕ МАСТЕРА!!!
У меня сейчас возникли проблемы, помогите, пожалуйста.
1) Сделать вычисление из двух таблиц и добавить результат в компоненту Label на SQL в DELPHI.
2) Как можно добавить дату такого типа 05-FEB-88, то есть в запросах на DELPHI.
3) Почему у меня вот этот код не добавляет данные в таблицу или я не так понял команду?
[CODE]
BEGIN TRANSACTION
IF EXISTS (SELECT * FROM SALESREPS WHERE EMPL_NUM <> 105)
BEGIN
/* Пример добавление в таблицу SALESREPS*/
INSERT INTO SALESREPS (EMPL_NUM, NAME, SALES)
VALUES (105,'Bill Adams',0)
/* Пример добавление в таблицу OFFICES*/
INSERT INTO OFFICES (OFFICE, CITY, REGION, SALES)
VALUES (13,'Atlanta','Eastern',0)
END
ELSE
BEGIN
ROLLBACK TRANSACTION
RETURN
END
COMMIT TRANSACTION
[/CODE]
Без транзакций он добавляет, а с транзакций не добавляет?
Что я хочу:
В общем мне нужно добавить данные в том случи если их там нет!
YK (2005-08-12 11:43:00) [1]
> 1) Он не выдает ОШИБКУ o:
А ты сделал EMPL_NO PRIMARY_KEY ?
> 2) DateTime (MSSQL)
> 3) Типа взять из поля зарплаты и отнять выручку...
> 4) И ещё вопрос как записать такое значение в поле Money
> $300.123.00?
Если хочешь нормальных советов - напичи труктуру своих таблиц
Похоже у тебя проблемы с проектирование базы
И ещё почитай сначала книги именно про это, а потом и с SQL полегче будет :)
alex_*** (2005-08-10 18:32:00) [2]навставляй принтов и смотри куда он входит
Anatoly Podgoretsky (2005-08-10 17:24:00) [3]ANB © (10.08.05 17:07) [6]
Книжка это не панацея.
ANB (2005-08-10 17:07:00) [4]
> $300.123.00?
= 300123
Попробуй просто убрать rollback - он там не нужен.
Выполняешь в QA ?
И логика какая то странная. Если есть записи, кроме добавляемой, то добавлять. Иначе - rollback. Странно. Ты точно из книжки пример конопатил ?
MS-REM (2005-08-10 16:57:00) [5]1) Он не выдает ОШИБКУ o:
2) DateTime (MSSQL)
3) Типа взять из поля зарплаты и отнять выручку...
4) И ещё вопрос как записать такое значение в поле Money $300.123.00?
С уважением и благодарностью!!!
MS-REM (2005-08-10 16:47:00) [6]Не знаю так впримере было!!! Это типа ОТКАТ и конец транзакций.
alex_*** (2005-08-10 16:46:00) [7]sorry, не заметил return. Вставил бы транзакцию внутрь EXISTS...
alex_*** (2005-08-10 16:44:00) [8]COMMIT после ROLLBACK зачем нужен?
yk (2005-08-10 16:41:00) [9]EXISTS (SELECT * FROM SALESREPS WHERE EMPL_NUM <> 105)
не нужно, если EMPL_NUM - первичный ключь
сервер сам не будет добавлять - выдаст ошибку
> 2) Как можно добавить дату такого типа 05-FEB-88, то есть
> в запросах на DELPHI.
Дата в таблице какого типа? DATE или varchar?
> 1) Сделать вычисление из двух таблиц и добавить результат
> в компоненту Label на SQL в DELPHI.
Какого рода вычисление?