Форум: "Базы";
Текущий архив: 2006.04.16;
Скачать: [xml.tar.bz2];
Внизпроблема с хранимой процедурой Найти похожие ветки
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.047 c