使用BCP命令在SQL数据库中上传文件

问题描述 投票:1回答:1

我想从文件所在的本地计算机将文件保存在远程数据库中。我想使用BCP命令来实现。如何实现?

我的查询类似于以下内容:

INSERT INTO ExcelFileUploadedData(
    Project, 
    SubProject, 
    LogicalName,FileName, 
    FileData) 

SELECT 
    'Sample',
    'Sample',
    'BP',
    '1.xls',
    * 
FROM OPENROWSET(BULK N'D:\File\File1.xls.zip', SINGLE_BLOB) rs
sql-server bcp sqlbulkcopy
1个回答
0
投票
SET @TableQuery='CREATE TABLE [temp1]( [Id] [int] IDENTITY(1,1) NOT NULL, Project [NVARCHAR(50)], SubProject [NVARCHAR(50)], LogicalName [NVARCHAR(50)], FileName [NVARCHAR(50)], FileData [NVARCHAR(50)], CONSTRAINT [PK_temp1] PRIMARY KEY CLUSTERED ( [Id] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] ' EXEC(@TableQuery) DECLARE @params NVARCHAR(max) SET @params = N'@uploadData SINGLE_BLOB readonly' SET @BulkInsertQuery =N'INSERT INTO [temp1] (RespId,Url) select * from @uploadData'; print @BulkInsertQuery EXEC sp_executesql @BulkInsertQuery, @params, @uploadData // Enter Records from temp table into real table INSERT INTO ExcelFileUploadedData( Project, SubProject, LogicalName,FileName, FileData) SELECT 'Sample', 'Sample', 'BP', '1.xls', * FROM [temp1]
© www.soinside.com 2019 - 2024. All rights reserved.