Nejprve se ujistěte, že jste spustili skript pro vytvoření ve správné databázi.
Za druhé, jak @astander začal zmiňovat, používáte výsledky funkce nesprávně.
Vaše funkce vrací tabulku, nikoli hodnotu. Funkci budete muset spustit jako součást vašich příkazů SQL, nikoli během sestavování ad hoc dotazů. Například tento kód:
set @[email protected]+'UNION select items from'+ dbo.FN_Split(@p_SourceText,
@p_Delimeter)+' where orderId ='[email protected]+')'
by se stalo:
set @sql = @sql+'UNION select items from dbo.FN_Split(' + @p_SourceText +', ' +
@p_Delimeter + ') where orderId =' + @i + ')'
Proveďte podobné změny všude, kde aktuálně odkazujete na funkci.