Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Sistem Platform Analitik (PDW)
Titik akhir analitik SQL di Microsoft Fabric
Gudang di Microsoft Fabric
Database SQL di Microsoft Fabric
Mengembalikan nilai yang ditransmisikan ke jenis data yang ditentukan jika pemeran berhasil; jika tidak, mengembalikan NULL.
Sintaks
TRY_CONVERT ( data_type [ ( length ) ] , expression [ , style ] )
Argumen
data_type
Jenis data yang akan ditransmisikan ekspresinya.
length
Bilangan bulat opsional yang menentukan panjang jenis data target, untuk jenis data yang memungkinkan panjang yang ditentukan pengguna. Nilai maksimum untuk panjang adalah 8.000 byte.
expression
Nilai yang akan dilemparkan.
gaya
Ekspresi bilangan bulat opsional yang menentukan bagaimana TRY_CONVERT fungsi akan menerjemahkan ekspresi.
gaya menerima nilai yang sama dengan CONVERT fungsi. Untuk informasi selengkapnya, lihat CAST dan CONVERT.
Nilai data_type menentukan rentang nilai yang dapat diterima. Jika gaya adalah NULL, maka TRY_CONVERT mengembalikan NULL.
Jenis yang dikembalikan
Mengembalikan nilai yang ditransmisikan ke jenis data yang ditentukan jika pemeran berhasil; jika tidak, mengembalikan NULL.
Keterangan
TRY_CONVERTmengambil nilai yang diteruskan ke nilai tersebut dan mencoba mengonversinya ke data_type yang ditentukan. Jika pemeran berhasil, TRY_CONVERT mengembalikan nilai sebagai data_type yang ditentukan; jika terjadi kesalahan, NULL dikembalikan. Namun jika Anda meminta konversi yang secara eksplisit tidak diizinkan, maka TRY_CONVERT gagal dengan kesalahan.
TRY_CONVERT adalah kata kunci yang dipesan, dimulai dengan tingkat 110kompatibilitas .
Fungsi ini mampu di-remote ke server yang memiliki SQL Server 2012 (11.x) dan versi yang lebih baru. Ini tidak di-remote ke server yang memiliki versi yang lebih lama dari SQL Server 2012 (11.x).
Contoh
J. TRY_CONVERT mengembalikan NULL
Contoh berikut menunjukkan yang TRY_CONVERT kembali NULL saat pemeran gagal.
SELECT
CASE WHEN TRY_CONVERT(FLOAT, 'test') IS NULL
THEN 'Cast failed'
ELSE 'Cast succeeded'
END AS Result;
GO
Berikut set hasilnya.
Result
------------
Cast failed
Contoh berikut menunjukkan bahwa ekspresi harus dalam format yang diharapkan.
SET DATEFORMAT dmy;
SELECT TRY_CONVERT(DATETIME2, '12/31/2022') AS Result;
GO
Berikut set hasilnya.
Result
----------------------
NULL
B. TRY_CONVERT gagal dengan kesalahan
Contoh berikut menunjukkan bahwa TRY_CONVERT mengembalikan kesalahan ketika cast secara eksplisit tidak diizinkan.
SELECT TRY_CONVERT(XML, 4) AS Result;
GO
Hasil dari pernyataan ini adalah kesalahan, karena bilangan bulat tidak dapat ditransmisikan ke dalam jenis data xml .
Explicit conversion from data type int to xml is not allowed.
C. TRY_CONVERT berhasil
Contoh ini menunjukkan bahwa ekspresi harus dalam format yang diharapkan.
SET DATEFORMAT mdy;
SELECT TRY_CONVERT(DATETIME2, '12/31/2022') AS Result;
GO
Berikut set hasilnya.
Result
----------------------------------
2022-12-31 00:00:00.0000000