분류 전체보기38 [MSSQL] 저장 프로시저 생성 및 수정과 실행 - 프로시저 생성 CREATE PROC [프로시저명] [파라미터 이름] [파라미터 타입] AS [프로시저 구문] ex) CREATE PROC dbo.proc1 @NUM INT, @STRING VARCHAR(100) AS SELECT @NUM, @STRING - 프로시저 수정 ALTER PROC [프로시저명] [파라미터 이름] [파라미터 타입] AS [프로시저 구문] - 프로시저 실행 EXEC [프로시저명] [파라미터값], [파라미터값] ex) EXEC [dbo].[proc1] 10, '마스크' 수정, 삭제 구문에서 PROC은 PROCEDURE로 써도 가능하다. 2020. 4. 27. [MSSQL] CSV 파일 생성 및 문제 해결 방법 MSSQL에서 CSV 파일 생성 방법은 크게 3가지가 있다. 1. SSMS, 즉 툴을 이용하여 생성 2. Bulk문 사용 3. bcp cmdshell 사용 1번은 수 많은 작업이 주기적으로 필요 할 시 일일이 사람이 클릭해서 만들어야되므로 매우 번거롭다. 하지만 간단한 테스트로는 사용하기 가장 편하다. 2번은 로컬환경에서만 가능하다. 대부분 토이 프로젝트나 연습용이 아니라면 DB서버는 별개로 있을 것이다. 따라서 사용하기 힘들다. 3번은 다른 서버도 접근이 가능하지만 권한이 필요하다. 권한만 있다면 CSV파일 생성 뿐만 아니라 수많은 작업이 가능하기에 매우매우 조심해야된다. bcp의 여러 기능 중 CSV 파일 생성 방법이다. EXEC master..xp_cmdshell 'bcp "[select문]" qu.. 2020. 4. 27. [PSQL] COPY 작업 시 유용하게 사용했던 명령어 및 설정 앞서 포스팅한대로 COPY작업 자체는 잘 된다. 하지만 생각지도 못한 부분에서 많은 문제가 발생했다. 1. 한글깨짐 역시나 한글 깨짐 방지는 필수인것 같다. copy 실행 전 SQL Shell의 인코딩을 UTF-8로 변경하면 된다. set client_encoding to 'UTF8'; 2. 구분자 문제 나 같은 경우는 MSSQL에서 데이터를 CSV로 생성 후 PSQL에서 COPY했다. 이때 구분자를 ,을 이용하였는데 데이터 안에 해당 구분자가 들어 있다면 데이터의 , 마저도 구분자로 인식하여 데이터를 컬럼단위로 잘라버렸다. 즉 원래 컬럼이 10개라면 11개가되는 현상이 발생, 정상적으로 실행이 안된다. 이전 포스팅에서 설정한 delimiter 옵션을 이용하여 구분자를 \t, ; 등 상황에 맞게 변경해서.. 2020. 4. 27. [PostgreSQL] COPY 사용 불가 (SQL Error 42501) 대용량 데이터 복사 시 CSV파일 형태로 저장 후 COPY 명령어를 통해 읽어온다. 하지만 PostgreSQL에서 COPY를 사용하면 must be superuser to copy to or from a file 이라는 에러와 함께 실행되지 않는 경우가 있다. 에러를 보면 파일 접근 관련 권한 문제로 보이는데 로컬 환경에만 작업한다면 괜찮지만 따로 분리된 다른 서버의 DB 사용 시 파일 접근 권한 문제를 마음대로 변경할 수 없다. 따라서 다른 방법을 찾아야만 했는데 다행히 에러문구 밑에 힌트가 적혀있었다. Hint : Anyone can COPY to stdout or from stdin. psql's \copy command also works for anyone. 즉, psql의 \copy를 사용하면.. 2020. 4. 27. 이전 1 2 3 4 5 6 7 ··· 10 다음