将数据插入数据库的问题

用户名

我正在尝试执行并且成功执行,没有任何错误,但是该值未插入dbo.Quarter_SourceData中。因此,我想知道是否可以与多个存储的proc合并?

我已经对与多个存储的proc合并进行了一些研究,但是合并的代码似乎我不太了解。

USE [CBC_Quarter_Report]
GO
/****** Object:  StoredProcedure [dbo].[spDownloadQuarterSourceData]    Script Date: 12/24/2014 09:06:10 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER  PROCEDURE [dbo].[spDownloadQuarterSourceData]
AS
BEGIN
    SET NOCOUNT ON;

    DECLARE @sSQL nVarchar(Max) 
    DECLARE @sExe nVarchar(Max)
    DECLARE @QStartDate nvarchar(8)
    DECLARE @QEndDate nvarchar(8)

    SET @QStartDate = CONVERT(VARCHAR,(DATEADD(q, DATEDIFF(q, 0, getdate() - 8), 0)),112)
    SET @QEndDate = CONVERT(VARCHAR,(DATEADD(d, -1, DATEADD(q, DATEDIFF(q, 0, getdate() - 8) + 1, 0))), 112)
--------------------------------------------------------------------------------
-- Insert Client Info
--------------------------------------------------------------------------------

    SET @sSQL = 'SELECT DISTINCT AGNT.AGNTBR, AGNT.AGNTNUM, (CLNT.SURNAME + CLNT.GIVNAME) AS AGENT_NAME,
                IPI.Policy_No, IPI.Name AS Insured_Name,
                CONVERT(VARCHAR(10), CAST(IPI.Issue_Date AS DATE), 103) AS Date_CN_Issues,
                IPI.Inception_Date AS Contract_Commencement_Date, IPI.Expiry_Date,
                CASE WHEN PI.Transaction_Date IS NULL THEN '''' ELSE CONVERT(VARCHAR(10), CAST(PI.Transaction_Date AS DATE), 103) END AS Date_Received,
                DATEDIFF(DAY, IPI.Issue_Date, PI.Transaction_Date) AS Days_Compliant, DT_INSERT= getdate(),
                STATUS = NULL, ACTUAL_DAY = 0
                FROM dbo.Quarter_Insured_Policy AS IPI 
                LEFT JOIN dbo.AGNTPF AGNT ON IPI.Agent_No = AGNT.AGNTNUM
                LEFT JOIN dbo.CLNTPF CLNT ON AGNT.CLNTNUM = CLNT.CLNTNUM
                LEFT JOIN dbo.Quarter_Payment AS PI ON IPI.Policy_No = PI.Policy_No
                WHERE (PI.Transaction_Date >= ' + @QStartDate + ' AND PI.Transaction_Date <= ' + @QEndDate + ')
                AND substring(AGNT.AGNTNUM, 3,1) = ''V''
                ORDER BY  AGNT.AGNTBR, AGNT.AGNTNUM'

    TRUNCATE TABLE dbo.Quarter_SourceData

    set @sExe = 'Insert into dbo.Quarter_SourceData ' + @sSQL

    exec (@sExe)
    --print @sExe

END
阿什利·李(Ashley Lee)

这是您的主要问题。修改SET以在日期周围加上双引号,因为它们是字符串,就像对子字符串比较所做的一样。

SET @sSQL = 'SELECT DISTINCT AGNT.AGNTBR, AGNT.AGNTNUM, (CLNT.SURNAME + CLNT.GIVNAME) AS AGENT_NAME,
            IPI.Policy_No, IPI.Name AS Insured_Name,
            CONVERT(VARCHAR(10), CAST(IPI.Issue_Date AS DATE), 103) AS Date_CN_Issues,
            IPI.Inception_Date AS Contract_Commencement_Date, IPI.Expiry_Date,
            CASE WHEN PI.Transaction_Date IS NULL THEN '''' ELSE CONVERT(VARCHAR(10), CAST(PI.Transaction_Date AS DATE), 103) END AS Date_Received,
            DATEDIFF(DAY, IPI.Issue_Date, PI.Transaction_Date) AS Days_Compliant, DT_INSERT= getdate(),
            STATUS = NULL, ACTUAL_DAY = 0
            FROM dbo.Quarter_Insured_Policy AS IPI 
            LEFT JOIN dbo.AGNTPF AGNT ON IPI.Agent_No = AGNT.AGNTNUM
            LEFT JOIN dbo.CLNTPF CLNT ON AGNT.CLNTNUM = CLNT.CLNTNUM
            LEFT JOIN dbo.Quarter_Payment AS PI ON IPI.Policy_No = PI.Policy_No
            WHERE (PI.Transaction_Date >= ''' + @QStartDate + ''' AND PI.Transaction_Date <= ''' + @QEndDate + ''')
            AND substring(AGNT.AGNTNUM, 3,1) = ''V''
            ORDER BY  AGNT.AGNTBR, AGNT.AGNTNUM'

另外,最好使用EXEC sp_executesql (@sExe)代替EXEC (@sExe)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用sql命令将数据插入数据库的问题

来自分类Dev

使用PHP将SQL插入数据库-INSERT INTO问题

来自分类Dev

将数组数据插入数据库

来自分类Dev

将数据插入sqlite数据库

来自分类Dev

将数据插入数据库(mongodb)

来自分类Dev

无法将数据插入数据库

来自分类Dev

将数据插入数据库

来自分类Dev

将数据插入SQLITE数据库

来自分类Dev

将数据从数组插入数据库

来自分类Dev

将数据插入sqlite数据库

来自分类Dev

无法将数据插入数据库

来自分类Dev

从列表将数据插入数据库

来自分类Dev

将数据插入数据库

来自分类Dev

将数据插入数据库SQLite

来自分类Dev

将数据插入数据库-LARAVEL

来自分类Dev

Oracle数据库查询问题-插入数据问题

来自分类Dev

关于将JavaScript数组数据插入MySQL数据库的问题

来自分类Dev

改造成功后,协程问题将数据插入房间数据库

来自分类Dev

将表单数据插入到mysql数据库中(可能是作用域问题)

来自分类Dev

使用php将数据插入mysql数据库中的问题

来自分类Dev

将字符串数据类型插入数据库时出现问题

来自分类Dev

使用PHP将数据插入MYSQL数据库时出现问题

来自分类Dev

使用php将数据插入MySQL数据库时出现问题

来自分类Dev

Django:将行插入数据库

来自分类Dev

将变量插入SQL数据库

来自分类Dev

将数组值插入数据库

来自分类Dev

将日期时间插入数据库

来自分类Dev

试图将值插入数据库

来自分类Dev

将DataGridView内容插入数据库