8152: String or binary data would be truncated
SQL ServerNe demek?
Bir sütuna, o sütunun tanımlı uzunluğundan daha uzun veri yazmaya çalıştınız. SQL Server veri kaybını önlemek için işlemi durdurur (2628 aynı durumun yeni, sütun/değer bilgisi veren sürümüdür).
Neden olur?
Örneğin VARCHAR(10) sütuna 15 karakter yazmak, hedef sütunun kaynaktan dar olması, veri tipi/uzunluk uyumsuzluğu, ETL/aktarımda alan boyutu yetersizliği.
Nasıl çözülür?
Sütun uzunluğunu veriye göre büyütün (ALTER TABLE ... ALTER COLUMN) veya veriyi kısaltın. SQL Server 2019+ ile hangi tablo/sütun/değerin taştığını gösteren 2628 hatasını kullanın; eski sürümlerde sütunları tek tek LEN() ile kontrol edip taşan kaydı bulun. Aktarımlarda kaynak ve hedef şemalarının uzunluklarını eşitleyin.
Aynı motorda diğer kayıtlar
- 2601Cannot insert duplicate key row in object with unique index. The duplicate key value is ...
- 547The INSERT/UPDATE/DELETE statement conflicted with the FOREIGN KEY / CHECK constraint
- 18456Login failed for user
- 2628String or binary data would be truncated in table, column ...; truncated value
- 1222Lock request time out period exceeded
- 9002The transaction log for database is full due to ...
- 1105Could not allocate space for object in database because the filegroup is full