Musisz ująć wartości DATETIME w pojedynczych cudzysłowach. A ponieważ twoje zapytanie jest samym łańcuchem, te pojedyncze cudzysłowy muszą zostać podwojone / zmienione w następujący sposób (i prawdopodobnie powinieneś również umieścić wartość pierwszego parametru w escaped-single-cudzysłów, ponieważ jest to wyraźnie łańcuch).
Należy również w pełni zakwalifikować nazwę procedury składowanej za pomocą [DatabaseName].[SchemaName].
.
A ponieważ vcs_gauge
proc używa Dynamic SQL, musisz określić WITH RESULT SETS
klauzula. Aby uzyskać więcej informacji na temat tej klauzuli, zobacz stronę MSDN dotyczącą WYKONAJ .
SELECT *
INTO #tmpTable
FROM OPENQUERY([WIN2K8\SQL2K12],
N'EXEC [DatabaseName].[SchemaName].vcs_gauge
@gauge_name = ''vs1_bag'',
@first_rec_time = ''2014-09-01 09:00:00'',
@last_rec_time = ''2014-09-01 10:00:00''
WITH RESULT SETS ( { column_specification} );
');