[ MS-SQL 쿼리문 ] BULK INSERT BulkList FROM 'D:\1111.txt' WITH ( FIELDTERMINATOR = ',' -- 열구분자 설정 , ROWTERMINATOR = '|&|' ) -- 행구분자 설정 - 위 MS-SQL 콘솔에서는 정상적으로 INSERT 가 실행됩니다. [ ASP ] SQL = "BULK INSERT BulkList" SQL = SQL &" FROM '"& "D:/1111.txt" &"'" SQL = SQL &" WITH ( FIELDTERMINATOR = ',' " '-- 열구분자 설정 SQL = SQL &" , ROWTERMINATOR = '|&|' )" '-- 행구분자 설정 db.Execute(SQL) - 위 ASP 코드를 실행 시키면 Internal Server Error 500 이 발생 * .txt 파일을 기존 BulkList 테이블에 INSERT 하는 것입니다. * ASP 쿼리 실행문 SQL만 뽑아서 MSSQL 콘솔에 실행해도 정상입니다. 도대체 뭐가 문제인지, 도통 모르겠네요. 고수님들 답변 부탁드립니다.
Comment 2
-
hjh****
2023.06.28 09:15
답볍 감사합니다.
Classic ASP 사용하고 있습니다.
BULK INSERT 는 권한이 있어야 하나보네요.
확인해 보겠습니다.
hjh님의 windows에 로그인해 실행하는 계정의 권한과 ASP가 windows에 매핑된 작업자 계정 권한 차이로 인해 발생합니다.
"D:\"에 쓰기 권한같은 높은 보안을 요구하는 권한 때문으로 보입니다.
ASP인지 ASP.NET인지 모르겠지만, worker process의 권한을 부여해야 할 듯 합니다.
https://learn.microsoft.com/ko-kr/troubleshoot/developer/webapps/aspnet/www-authentication-authorization/troubleshoot-permissions-security-issues
"asp.net 작업자 프로세스 권한 부여"로 검색해 보시면 여러 정보 보실 겁니다.