Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Impossibile trovare la colonna "dbo" o la funzione definita dall'utente o l'aggregazione "dbo.FN_Split" oppure il nome è ambiguo

Innanzitutto, assicurati di aver eseguito lo script di creazione nel database corretto.

In secondo luogo, come ha iniziato a menzionare @astander, stai usando i risultati della funzione in modo errato.

La tua funzione restituisce una tabella, non un valore. Dovrai eseguire la funzione come parte delle tue istruzioni sql, non durante la creazione di query ad hoc. Ad esempio, questo codice:

 set @[email protected]+'UNION select items from'+ dbo.FN_Split(@p_SourceText,
                  @p_Delimeter)+' where orderId ='[email protected]+')'

diventerebbe:

set @sql = @sql+'UNION select items from dbo.FN_Split(' + @p_SourceText +', ' +
                  @p_Delimeter + ') where orderId =' + @i + ')'

Apporta modifiche simili ovunque tu stia facendo riferimento alla funzione.