sql - 关键字 'UPDATE' 附近的语法不正确

标签 sql sql-server

执行以下过程并在更新时出现语法错误:

USE [OTIDatabaseNewOutreach_V3.2.0_BESQL]
GO
/****** Object:  StoredProcedure [dbo].[usp_OTIDataImportConstruction_U]    Script Date: 5/12/2016 8:44:18 AM ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO

CREATE PROCEDURE [dbo].[usp_OTIDataImportConstruction_U]

    UPDATE dbo.[OTI Trainer Data Import]  
    SET [Construction Industry Card #] = IsNull([c_cardnumberissued],[TrainerIDNumber]),
        [Construction Date Issued] = [tblCourse].[c_enddate]
    from tblCourse
    inner JOIN dbo.tblCourseToStudent ON dbo.tblCourse.c_id = dbo.tblCourseToStudent.c_id 
    INNER JOIN
            dbo.[OTI Trainer Data Import] ON dbo.tblCourseToStudent.t_id = dbo.[OTI Trainer Data Import].t_id
    WHERE (c_program ='construction') AND (c_expdate>GetDate());

go      

...................................................... ...................... .

最佳答案

看起来像 SQL Server。您需要在create procedure 之后添加一个as。参见手册:https://msdn.microsoft.com/en-za/library/ms187926.aspx

关于sql - 关键字 'UPDATE' 附近的语法不正确,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37188208/

相关文章:

sql-server - DELETE ... WHERE ... NOT IN (...) 的现代替代方案?

sql-server - 如何在 MS SQL 中引用计算列?

PHP、MySQL - 结果数组洗牌会比 "select... order by rand()"更快吗?

mysql - 需要 SQL 查询帮助

mysql - 在两个 td 标签中显示日期时间

sql - SQL 中 IN 和 ANY 运算符的区别

SQL Server 2005 使用查找表更新查询

sql-server - SSIS连接管理器问题

sql-server - 如何在MsSQL中创建created_at和updated_at字段?

mysql - 无法返回符合条件的记录