IF not EXISTS (select * from sysobjects where xtype= 'V 'and name= 'V_CH_GoodsWasteBook')
Create View V_CH_GoodsWasteBook
AS
SELECT rm.*, 
rd.GoodsID,
rd.Unit, rd.Quantity, rd.Price, rd.Money,
rd.PurchaseUnit, rd.PurchaseQuantity, rd.PurchasePrice, rd.PurchaseMoney,
rd.GoodsModelID, rd.WasteQuantity, rd.WasteMoney
FROM CH_ReceiptDetail rd INNER JOIN CH_ReceiptMaster rm ON rd.ReceiptID = rm.ReceiptID服务器: 消息 156,级别 15,状态 1,行 2
在关键字 'View' 附近有语法错误。如果我不检查就不会出现问题。检查了视图是否存在就出现问题

解决方案 »

  1.   

    IF not EXISTS (select * from sysobjects where xtype= 'V 'and name= 'V_CH_GoodsWasteBook')
    go
    Create View V_CH_GoodsWasteBook
    AS
    SELECT rm.*, 
        rd.GoodsID,
        rd.Unit, rd.Quantity, rd.Price, rd.Money,
        rd.PurchaseUnit, rd.PurchaseQuantity, rd.PurchasePrice, rd.PurchaseMoney,
        rd.GoodsModelID, rd.WasteQuantity, rd.WasteMoney
    FROM CH_ReceiptDetail rd INNER JOIN CH_ReceiptMaster rm ON rd.ReceiptID = rm.ReceiptID
      

  2.   

    Create View语句前面不能有其他语句
      

  3.   

    IF not EXISTS (select * from sysobjects where xtype= 'V 'and name= 'V_CH_GoodsWasteBook')
    gogo  批处理结束。
      

  4.   


    if not exists (select * from sysobjects where xtype= 'V 'and name= 'V_CH_GoodsWasteBook')
    go
    Create View V_CH_GoodsWasteBook
    AS
    SELECT rm.*, 
    rd.GoodsID,
    rd.Unit, rd.Quantity, rd.Price, rd.Money,
    rd.PurchaseUnit, rd.PurchaseQuantity, rd.PurchasePrice, rd.PurchaseMoney,
    rd.GoodsModelID, rd.WasteQuantity, rd.WasteMoney
    FROM CH_ReceiptDetail rd INNER JOIN CH_ReceiptMaster rm ON rd.ReceiptID = rm.ReceiptID
    服务器: 消息 170,级别 15,状态 1,行 1
    第 1 行: ')' 附近有语法错误。
    服务器: 消息 2714,级别 16,状态 5,过程 V_CH_GoodsWasteBook,行 3
    数据库中已存在名为 'V_CH_GoodsWasteBook' 的对象。---------
    如果数据库中存在了这个视图。还是会执行下面创建视图的过程
    我就是先如果存在了。就不创建视图
      

  5.   


    if exists(select 1 from sysobjects where xtype= 'V'and id=object_id(N'V_CH_GoodsWasteBook'))
    drop view V_CH_GoodsWasteBook
    goCreate View V_CH_GoodsWasteBook
    AS
    SELECT * 
    from ....
    where ....
      

  6.   

    IF not EXISTS (select * from sysobjects where xtype= 'V 'and name= 'V_CH_GoodsWasteBook')
    begin
    declare @r varchar(1000)
    select @r = ' SELECT rm.*, 
        rd.GoodsID,
        rd.Unit, rd.Quantity, rd.Price, rd.Money,
        rd.PurchaseUnit, rd.PurchaseQuantity, rd.PurchasePrice, rd.PurchaseMoney,
        rd.GoodsModelID, rd.WasteQuantity, rd.WasteMoney
    FROM CH_ReceiptDetail rd INNER JOIN CH_ReceiptMaster rm ON rd.ReceiptID = rm.ReceiptID'
    exec(@r)
    end