문서의 선택한 두 판 사이의 차이를 보여줍니다.
| 양쪽 이전 판 이전 판 다음 판 | 이전 판 | ||
|
mssqlserver:jdbc [2018/05/15 15:03] kwon37xi |
mssqlserver:jdbc [2022/03/31 17:32] (현재) kwon37xi [JDBC Driver 사용시 String 파라미터로인한 Full Scan 문제] |
||
|---|---|---|---|
| 줄 1: | 줄 1: | ||
| ====== MS SQL Server JDBC ====== | ====== MS SQL Server JDBC ====== | ||
| * [[: | * [[: | ||
| + | * [[https:// | ||
| * [[https:// | * [[https:// | ||
| * [[https:// | * [[https:// | ||
| 줄 17: | 줄 18: | ||
| ===== Timeout ===== | ===== Timeout ===== | ||
| 설정값이 millisecond와 second가 섞여 있어서 매우 주의해야 함. | 설정값이 millisecond와 second가 섞여 있어서 매우 주의해야 함. | ||
| + | * JDBC Driver 6.1.2 이상 버전부터 올바로 timeout 지원 | ||
| + | * [[https:// | ||
| + | * [[https:// | ||
| * '' | * '' | ||
| * '' | * '' | ||
| 줄 24: | 줄 27: | ||
| ===== JDBC Driver 사용시 String 파라미터로인한 Full Scan 문제 ===== | ===== JDBC Driver 사용시 String 파라미터로인한 Full Scan 문제 ===== | ||
| + | * [[https:// | ||
| + | * 우선순위에 따라 테이블의 컬럼이 '' | ||
| * [[http:// | * [[http:// | ||
| * [[http:// | * [[http:// | ||
| * [[https:// | * [[https:// | ||
| + | * [[https:// | ||
| < | < | ||
| # JDBC URL 파라미터로 아래 지정하면 VARCHAR 로 강제로 전송함 | # JDBC URL 파라미터로 아래 지정하면 VARCHAR 로 강제로 전송함 | ||
| 줄 36: | 줄 42: | ||
| # 혹은 setNString() 사용 | # 혹은 setNString() 사용 | ||
| </ | </ | ||
| - | + | * '' | |
| - | 혹은 JDBC 드라이버 변경없이'' | + | * '' |
| + | * 혹은 JDBC 드라이버 변경없이'' | ||
| <code sql> | <code sql> | ||
| ... | ... | ||
| - | WHERE varcharcolumn = convert(varchar, | + | WHERE varcharcolumn = convert(varchar, |
| + | </ | ||
| + | * [[java: | ||
| + | @Nationalized | ||
| + | @Column(name = " | ||
| + | private String name; | ||
| + | </ | ||
| + | * [[java: | ||
| + | SELECT * FROM books WHERE author = #{author} AND title LIKE # | ||
| </ | </ | ||
| - | |||
| ===== Logging ===== | ===== Logging ===== | ||
| * MS의 JDBC Driver는 '' | * MS의 JDBC Driver는 '' | ||
| + | * [[java: | ||
| + | * 쿼리 로그 설정 : 클래스의 패키지 구조와 로거 구조가 일치하지 않음. 또한 JDBC 드라이버 버전마다 로거가 바뀜. 그래서 안나오면 확인필요 | ||
| + | * '' | ||
| + | * '' | ||
| * [[https:// | * [[https:// | ||
| * [[https:// | * [[https:// | ||
| + | ===== Stored Procedure ===== | ||
| + | ==== Stored Procedure connection catalog와 SP의 catalog가 다를 때 문제 ==== | ||
| + | |||
| + | * Stored Procedure 사용시에, | ||
| + | < | ||
| + | The database name component of the object qualifier must be the name of the current database. | ||
| + | </ | ||
| + | * Spring JDBC Template의 [[https:// | ||
| + | * 아마도 JPA 등을 사용시에도 [[https:// | ||