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

Вниз

проблема с хранимой процедурой   Найти похожие ветки 

 
dreamse   (2006-02-21 08:59) [0]

Не получаеться написать хранимую процедуру :( Смысл в чём :

Вот процедура которая добавляет запись в базу данных :


CREATE PROCEDURE AddDataJurnal (
@compNumber char(10)
@IndDAte char(10),
@indTime char(10),
@CompZanatochar char(10),
@Nerabotshicomp char(10))

AS

-- Записываем  
Insert Into Tab_zagruzka
Values (@compNumber,@IndDAte,@data_time,@CompZanatochar,@Nerabotshicomp)



Получаеться что мы кодом записываем одну строчку а таблицу.

Что не получаеться сделать :

Хотелось бы проверять существует ли строка с непустым полем
@compNumber и если существует то обновлять только одну колонку в строке , например @Nerabotshicomp а строку оставлять ... а то получаеться мне нужно записать с разными интервалами поля : @Nerabotshicomp , @IndDAte и пр. но строка должна оставаться одной ... т.е если она есть то меняеться содержимое полей , если строки нет то добавляеться.

Надеюсь понятно обяснил мысль ... Кто разбираеться подскажите как написать такую процедуру


 
MOA ©   (2006-02-21 09:10) [1]

>как написать такую процедуру
Вначале определитесь с ключевыми полями - т.е. полями, которые однозначно идентифицируют сущность (по другому - поля, которые для данной сущности не меняются).
Если в Вашем случае поле compNumber - ключевое, то просто проверяйте существование строки
IF EXISTS(SELET * FROM Tab_zagruzka WHERE compNumber = @compNumber)
и если да - делайте UPDATE, если нет - INSERT.
Однако, ещё раз - вначале разработайте операции, которые Вы намерены реализовать (на бумажке, на русском языке, в виде "добавить компьютер", "выбросить компутер", "списать компутер" и т.д.) и структуру Вашей базы.
Удачи!


 
dreamse   (2006-02-21 11:49) [2]

> MOA ©   (21.02.06 09:10) [1]

Спасибо ,

Вы не могли бы подсказать как выполнить запрос UPDATE ?
Просто не помню структкру запроса :(

С остальным разобрался


 
ALIES   (2006-02-21 12:00) [3]

UPDATE
[pubs].[dbo].[sales]
SET
[stor_id]=<stor_id,char(4),>,
[ord_num]=<ord_num,varchar(20),>,
[ord_date]=<ord_date,datetime,>,
[qty]=<qty,smallint,>,
[payterms]=<payterms,varchar(12),>,
[title_id]=<title_id,tid,>
WHERE
<Search conditions,,>


 
dreamse   (2006-02-21 12:22) [4]

Спасибо



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

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

Наверх




Память: 0.47 MB
Время: 0.028 c
2-1144105191
яяяя
2006-04-04 02:59
2006.04.16
Событие от мыши... да глупый вопрос


15-1142562483
Mozart
2006-03-17 05:28
2006.04.16
Можно ли не отрабатывать две недели посде подачи заяв об уходе?


6-1136500651
GanibalLector
2006-01-06 01:37
2006.04.16
WSA.Listen


15-1143313299
Хинт
2006-03-25 22:01
2006.04.16
Определение положения точки относительно полигона


15-1143093703
Ega23
2006-03-23 09:01
2006.04.16
С Днём рождения! 23 марта