Laboratory 162

PIVOT 및 UNPIVOT 사용

PIVOT 및 UNPIVOT 사용 PIVOT 및 UNPIVOT 관계 연산자를 사용하여 테이블 값 식을 다른 테이블로 조작할 수 있습니다. PIVOT은 식의 한 열에 포함된 여러 고유 값을 출력에서 여러 열로 바꿔 테이블 값 식을 회전하고 최종 출력에서 남은 열 값 중 원하는 값에 대해 필요에 따라 집계를 수행합니다. UNPIVOT은 테이블 값 식의 열을 열 값으로 회전하여 PIVOT과 반대되는 연산을 수행합니다. 참고: Microsoft SQL Server 2005 로 업그레이드되는 데이터베이스에 대해 PIVOT 및 UNPIVOT을 사용할 때 데이터베이스의 호환성 수준을 90으로 설정해야 합니다. 데이터베이스 호환성 수준을 설정하려면sp_dbcmptlevel(Transact-SQL)을 참조하십시오. PI..

Laboratory/MSSQL 2008.03.21

sp_dbcmptlevel(Transact-SQL)

sp_dbcmptlevel(Transact-SQL) 특정 데이터베이스 동작이 지정된 이전 버전의 SQL Server 와 호환되도록 설정합니다. Transact-SQL 구문 표기 규칙 구문 sp_dbcmptlevel [ [ @dbname = ] name ] [ , [ @new_cmptlevel = ] version ] 인수 [@dbname=]name 호환성 수준을 변경할 데이터베이스의 이름입니다. 데이터베이스 이름은 식별자 규칙을 따라야 합니다.name은sysname이며 기본값은 NULL입니다. [@new_cmptlevel=]version 데이터베이스가 호환되도록 설정할 SQL Server 의 버전입니다.version은tinyint이며 기본값은 NULL입니다. 값은 다음 중 하나여야 합니다. 60= SQL..

Laboratory/MSSQL 2008.03.21

Tip. SQL 2005 에서 달라진것들

[출처 : 데브피아] 김정선 Microsoft SQL Server MVP 1. SQL Server 2005 GROUP BY 구문 변경 SQL Server 2005에서 변경된 구문들을 몇 가지 살펴보고자 합니다. 그 첫 번째로 바로 얼마전에 알게된, GROUP BY 입니다. BOL이나 문서의 언급이 없어서 참 당황스러운 결과였습니다. Itzik (SQL Server Magazine 저자, Inside SQL Server 2005 필자)에게 문의를 한 결과 변경된 사실을 최종 확인했습니다. 대신에, 정확히 어떻게 바뀌었다는 것에 대해서는 상세 자료가 없습니다. 간단히 정리해 드리면, - GROUP BY 절에 칼럼을 포함한 수식을 적용해서, 수식의 결과를 기준으로 만들 수 있고, - SELECT 절의 결과 집..

Laboratory/MSSQL 2008.03.21

ExecuteNonQuery() 반환값이 안넘어올때.

ExecuteNonQuery() 메서드로 Insert, Update, Delete 쿼리를 실행 하고 반영된 열의 개수가 반환이 안될는 경우가 있다. DB서버의 설정 문제로 쿼리 실행 후 반영된 열의 개수를 반환하지 않도록 설정 할 경우 쿼리처리 속도는 조금더 빨라질 수 있다.하지만 쿼리를 실행 하고, 반영된 열이 몇개인지 꼭 받도록 코딩이 되어있을경우 위의 반영된 열을 반환하지 않도록 설정 할 경우 쿼리가 정상적으로 반영이 되다가 알수 없는 예외처리로 롤백 될수 있다. 위의경우와 같이 쿼리는 분명 실행이 되고, 로직상 이상이 없는 코드가 특정 서버에서 결과 값을 반환 하지 못하고 예외처리되어 롤백될 경우 아래 그림과 같이 설정되어있을 경우가 있다. 아래 그림의 설정에서 처럼□ 열 개수 표시 안함에 체크되..

Laboratory/Develop 2008.03.20