Delen via


MSSQLSERVER_107

Van toepassing op:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceSQL-database in Microsoft Fabric

Bijzonderheden

Attribute Waarde
Productnaam SQL Server
Gebeurtenis-id 107
Bron van gebeurtenis MSSQLSERVER
Onderdeel SQLEngine
Symbolische naam P_NOCORRMATCH
Berichttekst Het kolomvoorvoegsel '%.*ls' komt niet overeen met een tabelnaam of aliasnaam die in de query wordt gebruikt.

Explanation

De select-lijst van de zoekopdracht bevat een asterisk (*) die onjuist is gespecificeerd met een kolomvoorvoegsel. Deze fout kan onder de volgende voorwaarden worden teruggegeven:

  • Het kolomvoorvoegsel komt niet overeen met een tabel- of aliasnaam die in de query wordt gebruikt. Bijvoorbeeld, de volgende instructie gebruikt een aliasnaam (T1) als kolomvoorvoegsel, maar de alias is niet gedefinieerd in de FROM-clausule.

    SELECT T1.* FROM dbo.ErrorLog;  
    
  • Een tabelnaam wordt gespecificeerd als kolomvoorvoegsel wanneer een aliasnaam voor de tabel wordt opgegeven in de FROM-clausule. Bijvoorbeeld, de volgende instructie gebruikt de tabelnaam ErrorLog als kolomvoorvoegsel; echter, de tabel heeft een alias (T1) gedefinieerd in de FROM-clausule.

    SELECT ErrorLog.* FROM dbo.ErrorLog AS T1;  
    

    Als er een alias is gegeven voor een tabelnaam in de FROM-clausule, kun je de alias alleen gebruiken om kolommen uit de tabel te prefixeren.

Gebruikersactie

Match de kolomvoorvoegsels met de tabelnamen of aliasnamen die zijn gespecificeerd in de FROM-clausule van de query. Bijvoorbeeld, de bovenstaande uitspraken kunnen als volgt worden gecorrigeerd:

SELECT T1.* FROM dbo.ErrorLog AS T1;  

or

SELECT ErrorLog.* FROM dbo.ErrorLog;  

Zie ook

MSSQLSERVER_4104