The STRING_SPLIT function is introduced in
SQL Server 2016 and the function seems not working on many of the machines
running on old SQL Server versions. The other day, I was working on the older
version of SQL Server (SQL Server 2012) and I happen to encounter the error
“Invalid object name STRING_SPLIT”.
Additionally, if you notice, the function
does not work on versions of SQL Server 2014 or older.
I was trying to run the below simple SELECT
on the STRING_SPLIT and encountered the error.
select * from STRING_SPLIT ('hospital,office,home',',')
FIX:
The reason for this erroring out is due to
the compatibility of your computer to the SQL Server version. The SQL Server
doesn’t feature itself to automatically set the compatibility. All we must do
is to change and fix the compatibility to SQL Server versions respectively and
it works fine.
To change the compatibility of a SQL Server
version, please find the general syntax below:
ALTER DATABASE [your
db name]
SET COMPATIBILITY_LEVEL = 140 -- 140 Compatibility level is for SQL Server
2017
Note: Please change the compatibility level as per the image and your requirement.
Once I changed the compatibility level of
my SQL Server version, the SELECT query that I ran previously started working
without any issues.
Thx
ReplyDeleteNp, I enjoyed helping you
Deletehow it's work ??
ReplyDeletebecause the specified version of the SQL engine is queried based on the compatibilty levels
Delete