--- pls try:CREATE procedure tritest 
as
if (object_id('tri') is null)
begin
create table tri (a int ,b int ,c int)
exec('create trigger  yourTri  on  tri for insert
as
update tri
set c=a*b
where c is null ')
end
GO

解决方案 »

  1.   

    因為TRIGGER本身就是一個特殊的PROCEDURE
    所以不能在PORCEDURE裡直接CREATE TRIGGER上面的方法是用動態執行的方法,可以解決這個問題
    我已經做過測試!
      

  2.   

    还有,我想请教一下,除了DATETIME日期类型外,还有别的日期类型没有?我表中的其中一列想只定义成'20030123'或'2003-01-23'这种格式,如果用DATETIME的话,连时间都加上去,对于我存储过程中只对日期进行比较很多麻烦,那可以于表创建时的数据类型定义方面有什么方法没有?
      

  3.   

    20030123这样的可以把哪个字段定义为INT的吧,只是往里面写数据的时候要注意了,把日期的转换成这样就好了
    如果是2003-01-23这样的我一般就定义哪个字段为CHAR(10),往里写数据时将DATETIME型的转换一下
      

  4.   

    用字符型varchar(10)select convert(varchar(10),getdate(),120)