я сделал, казалось бы, незначительные изменения добавления 2-ю переменную хранимой процедуры в SQL Server 2008 R2, который использует динамический SQL, и я получаю новую ошибку:Динамический SQL переменные вопросы нуждаются в фиксации
Msg 206, Level 16, State 2, Line 1
Operand type clash: date is incompatible with int
когда я запускаю следующий блок кода ниже (тот, после этого моя sproc)
DECLARE @tableName varchar(120)
SET @tableName = 'tblDailySMA'
DECLARE @mxDate DATE
SET @mxDate = dbo.LatestDateWithPricingVolCountOver4k()
EXEC sprocAddDatesSymbolsAndPeriodsToAggregatedStudy @tableName, @mxDate
USE [Market]
GO
/****** Object: StoredProcedure [dbo].[sprocAddDatesSymbolsAndPeriodsToAggregatedStudy] Script Date: 03/11/2012 12:55:13 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[sprocAddDatesSymbolsAndPeriodsToAggregatedStudy]
@table varchar(120), @maxDate DATE
AS
EXEC(
';WITH t1 AS
(
SELECT Symbol, TradingDate
FROM tblSymbolsMain
CROSS JOIN tblTradingDays
WHERE TradingDate <=' + @maxDate +
'),
t2 AS
(
SELECT Symbol, TradingDate, Period
FROM t1
CROSS JOIN tblPeriods
)
INSERT INTO ' + @table + ' (Symbol, TradeDate, Period)
(SELECT Symbol, TradingDate, Period
FROM t2
EXCEPT
(SELECT t3.Symbol, t3.TradeDate, t3.Period
FROM ' + @table + '))')
RETURN
Я уверен, что это очень просто быстро исправить, что я с видом? Заранее спасибо.
+1 для преобразования (что я уже сделал), но также получаю в котировках – kaj
@Aaron Спасибо ... Я работал с вопросами с цитатой и видел ваш пост ... Я вставляю и то и другое в дословном, и, как предложение KAJ, intellisense выделяет convert/char как есть. – StatsViaCsh
@Aaron Спасибо, я побежал, что ему нужно «t3» в предложении except, и это нормально. (работает сейчас) – StatsViaCsh