102: Incorrect syntax near 'token'
SQL ServerNe demek?
Transact-SQL ayrıştırıcısı, belirtilen token'ın yakınında geçersiz bir sözdizimi buldu ve komutu derleyemedi. Sorgu hiç çalıştırılamadan reddedilir.
Neden olur?
Yazım hatası, eksik virgül/parantez, ayrılmış bir anahtar kelimenin (ör. USER, ORDER) köşeli parantezsiz kullanılması, dize tırnaklarının kapatılmaması ya da farklı bir SQL lehçesinden kopyalanmış uyumsuz sözdizimi. Dinamik SQL'de birleştirme hataları da sık tetikler.
Nasıl çözülür?
Belirtilen token'ın çevresini dikkatle inceleyin; genelde hata bir önceki satırdadır. Ayrılmış kelimeleri köşeli parantezle sarın ([Order]), parantez/virgül dengesini kontrol edin. Dinamik SQL kuruyorsanız PRINT @sql ile oluşan metni görüp çalıştırın. Sürüm farklarında desteklenmeyen sözdizimini (uyumluluk düzeyi) doğrulayın.
Aynı motorda diğer kayıtlar
- 10928Resource limit for the database has been reached (Azure SQL)
- 40544The database has reached its size quota (Azure SQL)
- 40613Database is not currently available (Azure SQL)
- 8114Error converting data type X to Y
- 1204The instance of the SQL Server Database Engine cannot obtain a LOCK resource
- 3906Failed to update database because the database is read-only
- 15023User already exists in the current database