저장프로시저안에서
DECLARE @SQL VARCHAR(MAX)
SET @SQL = '문자열' 으로 했을때
SELECT @SQL 이나 PRINT @SQL을 해보면
8000바이트가 넘어가는부분에 대해서 짤리더라고요 VARCHAR(MAX)를 쓰는 방법이 따로 있나요?
Comment 1
-
초짜해커
2015.01.14 13:17
저장프로시저안에서
DECLARE @SQL VARCHAR(MAX)
SET @SQL = '문자열' 으로 했을때
SELECT @SQL 이나 PRINT @SQL을 해보면
8000바이트가 넘어가는부분에 대해서 짤리더라고요 VARCHAR(MAX)를 쓰는 방법이 따로 있나요?
2015.01.14 13:17
일단 SSMS가 결과를 모두 표시하지 못합니다.
TEXT로 결과보기 일경우 8192가 한계이고
표형태의 경우 65535까지 된다네요. (이건 테스트 못해봄)
그런데 8000바이트까지 밖에 표시 못한다고 하시는거 보니까 SSMS의 한계가 아닌 연산상의 문제인거 같습니다.
VARCHAR의 경우 최대길이가 8000이기 때문에 VARCHAR끼리 연산하면 결과는 8000바이트가 한계입니다.
VARCHAR(MAX)로 CONVERT해서 연산하시면 됩니다.