特定の列 (hourfinish) で複数の null を許可しないトリガーを作成する必要があります。これが私が書いたトリガーです(私はSybaseを使用しています):
ALTER TRIGGER "InsertIntoCardDetail" instead of insert on
DBA.CardDetail
referencing new as new_name
for each row
begin
declare @nullCount integer;
if(new_name.hourfinish is null) then
select COUNT(*) into @nullCount
from CardDetail
where hourfinish is null;
if(@nullCount > 0) then
raiserror 99999 'Cannot have Multiple Nulls'
else
insert into CardDetail( card,hourstart,hourfinish,"work",project,N)
values( new_name.card,new_name.hourstart,new_name.hourfinish,new_name."work",new_name.project,new_name.N)
end if
else
insert into CardDetail( card,hourstart,hourfinish,"work",project,N)
values( new_name.card,new_name.hourstart,new_name.hourfinish,new_name."work",new_name.project,new_name.N)
end if
end
トリガーは正常に動作します。私が求めているのは、挿入を実行するコマンドがあるかどうかです-それらの長い挿入ステートメントを置き換えることができるコマンドです。