Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Perbaiki "Konversi gagal saat mengonversi nilai varchar" Saat Mencoba Menggabungkan di SQL Server

Jika Anda mendapatkan pesan kesalahan Msg 245 yang berbunyi “Konversi gagal saat mengonversi nilai varchar…” saat mencoba melakukan operasi penggabungan di SQL Server, kemungkinan Anda mencoba menggabungkan string dan nomor.

Melakukan hal ini akan menghasilkan kesalahan, karena SQL Server mencoba menambahkan string dan nomor alih-alih menggabungkannya.

Untuk memperbaikinya, ubah angka menjadi string, atau gunakan fungsi seperti CONCAT() atau CONCAT_WS() untuk melakukan penggabungan.

Kesalahan

Berikut contoh kode yang menyebabkan kesalahan:

SELECT 'Player ' + 456;

Hasil:

Msg 245, Level 16, State 1, Line 1
Conversion failed when converting the varchar value 'Player ' to data type int.

SQL Server berpikir bahwa kami mencoba menambahkan dua operan, sehingga mengalami masalah saat mencoba menambahkan string dan nomor.

Solusi 1

Salah satu cara untuk memecahkan masalah ini adalah secara eksplisit mengonversi angka menjadi string:

SELECT 'Player ' + CAST(456 AS varchar(3));

Hasil:

Player 456

Hal ini menyebabkan SQL Server memahami bahwa kami mencoba menggabungkan operan alih-alih menambahkannya.

Solusi 2

Cara lain untuk melakukannya adalah dengan menggunakan fungsi seperti CONCAT() untuk melakukan penggabungan:

SELECT CONCAT('Player ', 456);

Hasil:

Player 456

CONCAT() adalah fungsi string, sehingga SQL Server sekarang mengerti bahwa kita ingin menggabungkan dua string daripada menambahkan dua angka.

Atau, kita bisa menggunakan CONCAT_WS() fungsi, yang memungkinkan kita untuk menentukan pemisah yang akan digunakan di antara argumen yang digabungkan.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Konfigurasi Cakupan Database SQL Server dan Koreksi Paket Otomatis

  2. Bagaimana menemukan port untuk MS SQL Server 2008?

  3. SQL Server TAMPILKAN TABEL Setara

  4. Salesforce SOQL dari SQL Server

  5. Cara membuat pekerjaan di edisi SQL Server Express