gpt4 book ai didi

sql - 在 SQL 中,如何将 VARCHAR 转换为 STRING?

转载 作者:行者123 更新时间:2023-12-04 13:53:14 30 4
gpt4 key购买 nike

我正在尝试使用参数在 SQL Server 2008 R2 上执行 BULK INSERT 操作。但是,我遇到了问题,该函数需要一个 STRING,我将它传递给一个 VARCHAR。我的 SQL 在下面。

DECLARE @filepath VARCHAR(30)
DECLARE @current_symbol VARCHAR(30)

DECLARE symbol_cursor CURSOR FOR
SELECT symbol FROM stocks.dbo.description WHERE 1=1

OPEN symbol_cursor;

FETCH NEXT FROM symbol_cursor INTO @current_symbol

WHILE @current_symbol is not null
BEGIN
SET @filepath = 'C:\Users\stkerr\Desktop\stockPricing\' + @current_symbol + '.prices'
BULK
INSERT stocks.dbo.pricing
FROM @filepath
WITH
(
FIRSTROW = 2,
FIELDTERMINATOR=',',
ROWTERMINATOR='\n',
ORDER ( [date], [open], high, low, [close],volume),
ERRORFILE='C:\Users\stkerr\errors.txt'.
)

FETCH NEXT FROM symbol_cursor INTO @current_symbol
END
GO

当我执行 SET @filepath 语句时,问题就出现了。

有任何想法吗?

最佳答案

为了将文件中的变量( @filepath )指定为 BULK INSERT ,您将需要构建动态 TSQL 并执行它。

例如

DECLARE @str_command nvarchar(150)
SET @str_command = 'BULK INSERT [Customer_Sample] FROM ''' + @SourceFilePath +
''' WITH (formatfile = ''' + @FormatFilePath +
''', firstrow =' + cast(@RowNumber as nvarchar) + ')'
EXEC SP_EXECUTESQL @str_command

关于sql - 在 SQL 中,如何将 VARCHAR 转换为 STRING?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6462345/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com