![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
проблема с хранимой процедурой [D6, MSSQL]
dreamse © (2006-02-21 08:59:00)Не получаеться написать хранимую процедуру :( Смысл в чём :
Вот процедура которая добавляет запись в базу данных :
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 и пр. но строка должна оставаться одной ... т.е если она есть то меняеться содержимое полей , если строки нет то добавляеться.
Надеюсь понятно обяснил мысль ... Кто разбираеться подскажите как написать такую процедуру
dreamse (2006-02-21 12:22:00) [1]Спасибо
ALIES (2006-02-21 12:00:00) [2]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 11:49:00) [3]> MOA © (21.02.06 09:10) [1]
Спасибо ,
Вы не могли бы подсказать как выполнить запрос UPDATE ?
Просто не помню структкру запроса :(
С остальным разобрался
MOA (2006-02-21 09:10:00) [4]>как написать такую процедуру
Вначале определитесь с ключевымиполями - т.е. полями, которые однозначно идентифицируют сущность (по другому - поля, которые для данной сущности не меняются).
Если в Вашем случае поле compNumber - ключевое, то просто проверяйте существование строки
IF EXISTS(SELET * FROM Tab_zagruzka WHERE compNumber = @compNumber)
и если да - делайте UPDATE, если нет - INSERT.
Однако, ещё раз - вначале разработайте операции, которые Вы намерены реализовать (на бумажке, на русском языке, в виде "добавить компьютер", "выбросить компутер", "списать компутер" и т.д.) и структуру Вашей базы.
Удачи!