Вашата база данни вероятно е настроена с ниво на съвместимост 80 (SQL Server 2000) и функциите DB_ID и OBJECT_ID не могат да се използват като параметър за функция за динамично управление.
Трябва или да промените нивото на съвместимост на нещо по-ново, или да използвате променливи преди заявка:
USE StockSystem;
GO
DECLARE
@database_id INT = DB_ID(),
@object_id INT = OBJECT_ID(N'dbo.StockItems');
SELECT a.index_id, name, avg_fragmentation_in_percent
FROM sys.dm_db_index_physical_stats (@database_id ,@object_id , NULL, NULL, NULL) AS a
JOIN sys.indexes AS b ON a.object_id = b.object_id AND a.index_id = b.index_id;