我正在使用asp.net fileupload控件從我的系統上傳excel文件,以便將excel文件導出到sql server。當我從我的路徑上傳文件時,它只會加載文件名而不是完整的路徑。我需要完整的路徑來執行SQL Server存儲過程中的Excel文件。因爲沒有完整路徑存儲過程的Excel不工作。如何解決這個問題?如何在文件上傳控制中獲取文件名的完整路徑
這是我需要完整路徑的excel文件的存儲過程,因此我需要獲取完整路徑。
alter procedure [dbo].[sp_excelforgeneralholidays](@filname nvarchar(max),@getdate datetime,@adminid int)
as
declare @datavar nvarchar(max)
declare @sql varchar(1000)
set @datavar = 'Excel 12.0;Database=' + @filname
set nocount on
begin
set @sql ='insert into Generalholyday_details(Date,Day,Reason) SELECT * FROM OPENROWSET(''Microsoft.ACE.OLEDB.12.0'','''[email protected]+';HDR=YES'',''SELECT Date,Day,Reason FROM [Sheet1$]'')'
exec (@sql)
end
文件上傳控制,使您的文件的副本 - 你可以把你喜歡的地方,然後談談它的SQL Server。但它不會做的是告訴你文件來自哪裏。瀏覽器不提供該信息,因爲這會是一個安全問題。 –
如果您想要完整路徑,則需要先保存文件,然後才能獲取保存的位置。 – Bharadwaj
@Damien_The_Unbeliever _「瀏覽器不提供這些信息,因爲這將是一個安全問題。」 - - 並且沒用,因爲服務器無法對路徑做任何事情,因爲該路徑指向客戶端上的文件。 – CodeCaster