programing

SQL Server 2016, 잘못된 개체 이름 'STRING_SPLIT'

minimums 2023. 8. 16. 22:06
반응형

SQL Server 2016, 잘못된 개체 이름 'STRING_SPLIT'

SQL Server 2016에서 STRING_SPLIT 함수와 함께 이 오류가 발생함

SELECT * FROM STRING_SPLIT('a,b,c',',')

오류:

개체 이름 'STRING_SPLIT'이(가) 잘못되었습니다.

데이터베이스 호환성 수준이 130인지 확인합니다.

다음 조회를 사용하여 변경할 수 있습니다.

ALTER DATABASE [DatabaseName] SET COMPATIBILITY_LEVEL = 130

설명에 언급된 대로 다음 명령을 사용하여 데이터베이스의 현재 호환성 수준을 확인할 수 있습니다.

SELECT compatibility_level FROM sys.databases WHERE name = 'Your-Database-Name';

사용하고 있었습니다.Split_string영어로 문법적으로 맞는 것처럼 느껴졌지만, 내 오래된 눈은 그래야 한다는 것을 보지 못했습니다.STRING_SPLIT그래서, 만약 당신이 나처럼 약간의 정신적인 어려움을 겪고 있다면, 당신이 명령어를 올바르게 입력했는지 확인하세요! :)

작업 중인 데이터베이스의 COMPATIBLIC_LEVEL을 변경할 수 없는 경우 동일한 서버에 있는 다른 데이터베이스를 확인하여 COMPATIBLIC_LEVEL이 더 높은 데이터베이스를 찾을 수 있습니다.대상 서버의 "마스터" 데이터베이스가 COMPATIBLIC_LEVEL = 140인 것을 발견하고 해당 데이터베이스에 연결한 다음 쿼리를 실행했는데, 이 쿼리는 실제로 COMPATIBLIC_LEVEL이 130 미만인 서버의 다른 데이터베이스에 있는 (완전한) 테이블에 대해 실행되었습니다.효과가 있었어요!서버의 다양한 데이터베이스를 쿼리하기만 하면 됩니다.

SELECT compatibility_level  FROM sys.databases WHERE name = '<database_name>'; 

>= 130인 것을 찾는 것.

데이터베이스의 호환성 수준을 변경해야 합니다.쿼리 및 호환성 수준을 150으로 변경하십시오.

ALTER 데이터베이스 [데이터베이스_이름] 호환성_레벨 설정 = 150

언급URL : https://stackoverflow.com/questions/47205829/sql-server-2016-invalid-object-name-string-split

반응형