Sql server 2008 如何授予运行批量插入的权限?
我有一台SQL Server 2008在远程机器上运行。让我们说这台机器叫XYZ。以下工作:Sql server 2008 如何授予运行批量插入的权限?,sql-server-2008,windows-server-2008,Sql Server 2008,Windows Server 2008,我有一台SQL Server 2008在远程机器上运行。让我们说这台机器叫XYZ。以下工作: 远程桌面到XYZ 打开SSMS,然后连接到在XYZ上运行的SQL Server 运行以下命令: USE SampleDB GO CREATE TABLE [dbo].[SampleData]( [ColA] [varchar](50) NULL, [ColB] [varchar](500) NULL ) ON [PRIMARY] GO BULK INSERT [dbo].[Samp
USE SampleDB
GO
CREATE TABLE [dbo].[SampleData](
[ColA] [varchar](50) NULL,
[ColB] [varchar](500) NULL
) ON [PRIMARY]
GO
BULK INSERT [dbo].[SampleData]
FROM "H:\Scratch\OUTPUT_Sample"
WITH
(
FIELDTERMINATOR = '$',
ROWTERMINATOR = '\n',
FIRSTROW = 2
)
GO
USE SampleDB
GO
CREATE TABLE [dbo].[SampleData](
[ColA] [varchar](50) NULL,
[ColB] [varchar](500) NULL
) ON [PRIMARY]
GO
BULK INSERT [dbo].[SampleData]
FROM "H:\Scratch\OUTPUT_Sample"
WITH
(
FIELDTERMINATOR = '$',
ROWTERMINATOR = '\n',
FIRSTROW = 2
)
GO
Msg 4861, Level 16, State 1, Line 2
Cannot bulk load because the file "H:\Scratch\OUTPUT_Scratch" could not be opened. Operating system error code 3(The system cannot find the path specified.).
有人能告诉我如何解决这个问题吗?我想我需要给某个帐户授予一些权限,但我不确定如何找到它,也不确定授予该帐户什么权限。我在使用sqlcmd.exe
时也会遇到同样的错误
有什么建议吗?看来我找到了答案。总之,该文件似乎应该与SQL Server位于同一台计算机上才能正常工作。要让它查找本地文件,应该通过UNC共享或类似的方式完成。看起来我找到了答案。总之,该文件似乎应该与SQL Server位于同一台计算机上才能正常工作。要查找本地文件,应该通过UNC共享或类似的方式进行。我认为该文件存在于ABC文件系统中?我对SQL Server生态系统有点陌生,因此我猜这是我的误解。所以,当我将RDP转换到XYZ中,然后对ABC执行查询时,它会在远程文件系统上查找该文件吗?有没有办法让它在本地文件系统上查找文件?是的,SQL Server在它(SQL Server)运行的机器上查找文件-无论客户端从何处连接。我认为该文件存在于ABC文件系统上?我对SQL Server生态系统有点陌生,所以我猜这是我的误解。所以,当我将RDP转换到XYZ中,然后对ABC执行查询时,它会在远程文件系统上查找该文件吗?有没有办法让它在本地文件系统上查找文件?是的,SQL Server在运行它(SQL Server)的机器上查找文件,而不管客户端从何处连接。