반응형
/********************************************************************************************
-- Title : [2k5] 원격 드라이브와 Bulk Insert 및 원격 실행
-- Reference : dbrang.tistory.com
-- Key word : remote drive bulk insert unc 원격 드라이브 원격 실행 umc
********************************************************************************************/

-- bulk insert 명령을 실행하는 프로시저를 작성
-- bulk insert로 입력된 파일은 다른 서버에 있고 원격 드라이브나, UNC로 연결
-- 다른 서버에서 bulk insert를 담은 프로시저 실행

-- 환경이 위와 같을 때,
-- 원격에서 프로시저를 실행하면 권한 에러가 난다.
-- 해결은 아직 못했다..ㅠㅠ


※ 원격드라이브를 해제하고 UNC로만 하니.. 처음에 로그인 연결창이 뜨고 그 이후로,
    원격에서 프로시저를 호출하니 bulk insert가 되었다....
    UNC위해 계정 설정/보안 설정하고, 이것 저것 하고, 다른 서버에서 또 테스트하뉘...
    그냥 UNC로 잘 되더이다...>.<


/*
-- use db
*/
use testdb;
go

 
/*
-- Create table
*/
drop table if exists ttt;
 
CREATE TABLE ttt
(
    id INT,
    name VARCHAR(255),
    address VARCHAR(255)
);


/*
-- Insert .CSV
*/

-- on localhost
BULK
INSERT ttt
FROM 'd:\ttt.csv'
WITH
(
FIELDTERMINATOR = ',',
OWTERMINATOR = '\n'
);


-- on UML
-- 구성관리자에서 "SQL Server 서비스"의 로그온 계정을 수정(확인됨)하거나
-- 공유 폴더 권한을 everyone이나 조정하면 될 듯(예상)..
BULK
INSERT ttt
FROM '\\172.20.20.90\share_data\ttt_umc.csv' 
WITH
(
FIELDTERMINATOR = ',',
ROWTERMINATOR = '\n'
);


/*
-- Select table
*/
select * from ttt;;

ttt.csv


반응형

+ Recent posts