sql-server - 在 SQL 中找不到文件
问题描述
我要做的是:每天我都会得到一个 CSV 文件,最终需要通过批量插入将其导入 SQL。长期以来,这一切都很好,但最近,CSV 文件中的一列包含需要在批量插入之前替换的文本。
经过一番搜索,我找到了 BAT 文件的以下代码:
@echo off &setlocal
set "search=%1"
set "replace=%2"
set "textfile=Input.txt"
set "newfile=Output.txt"
(for /f "delims=" %%i in (%textfile%) do (
set "line=%%i"
setlocal enabledelayedexpansion
set "line=!line:%search%=%replace%!"
echo(!line!
endlocal
))>"%newfile%"
del %textfile%
rename %newfile% %textfile%
现在,当我将此 bat 文件放在目录中并双击运行它时,效果很好。但现在的问题是我想将它集成到一个 SQL 存储过程中,我把它放在这样的过程中:
EXEC master..xp_CMDShell 'E:\FolderName\REPLACE.BAT'
当我尝试运行时,我在 SQL 中收到消息“找不到文件”。无论是存储过程还是作为查询运行它(在我自己的凭据下,这是管理员权限)。只是为了确保我还赋予了 SQL 用户对特定文件夹的完全权限,但这也无济于事。
如何在 SQL Server 中完成这项工作?
解决方案
推荐阅读
- python - 如何从 Python 中的列表中获取相同的随机样本
- android - Flutter/Android - 从 API 接收的数据临时存储在哪里?有没有办法永久保存这些数据?
- javascript - 如何在d3中的drag.start和drag.end之间传递值
- python - 尝试在 docker 中打开 *.hdf5 文件,但总是收到错误消息 = 'Is a directory'
- c# - 标头错误中的 HTTP 主机属性(主机属性)
- javascript - 如何使用 GraphQL 和 React Native 从 GitHub 获取你的名字?
- javascript - Magnific-popup 在我的 WordPress 主题页面模板中不起作用
- c++ - 从静态库中剥离所有符号是否会阻止链接?
- javascript - 如何通过 JavaScript 函数取消设置和重置背景图像?
- python - 如何在 Python 的两个列表中检查不区分大小写的字符串