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.
Halaman Konversi kotak dialog Pengaturan Proyek berisi pengaturan yang menyesuaikan cara SSMA mengonversi sintaks SAP Adaptive Server Enterprise (ASE) ke SQL Server atau sintaks Azure SQL.
Panel Konversi tersedia dalam kotak dialog Pengaturan Proyek dan Pengaturan Proyek Default :
Jika Anda ingin menentukan pengaturan untuk semua proyek SSMA, pada menu Alat , pilih Pengaturan Proyek Default, klik Umum di bagian bawah panel kiri, lalu klik Konversi.
Untuk menentukan pengaturan untuk proyek saat ini, pada menu Alat , pilih Pengaturan Proyek, klik Umum di bagian bawah panel kiri, lalu klik Konversi.
Bagian lain-lain
Kesalahan
SQL Server/Azure SQL dan ASE menggunakan kode kesalahan yang berbeda.
Gunakan pengaturan ini untuk menentukan jenis pesan (Peringatan atau Kesalahan) yang diperlihatkan SSMA di panel Output atau Daftar Kesalahan saat menemukan referensi ke @@ERROR dalam kode ASE.
- Jika Anda memilih Konversi dan tandai dengan peringatan, SSMA akan mengonversi pernyataan dan menandainya dengan komentar peringatan.
- Jika Anda memilih Menandai sebagai kesalahan, SSMA akan mengabaikan proses konversi dan menandai pernyataan dengan komentar kesalahan.
Saat Anda memilih mode konversi dalam kotak Mode , SSMA menerapkan pengaturan berikut:
| Pengaturan | Nilai |
|---|---|
| Bawaan | Konversikan dan tandai dengan peringatan |
| Optimis | Konversikan dan tandai dengan peringatan |
| Penuh | Tandai kesalahan |
Konversi operator LIKE
Menentukan apakah akan mengonversi LIKE operand agar sesuai dengan perilaku SAP ASE. Intinya adalah bahwa ASE memangkas spasi di akhir dalam pola serupa. Solusinya adalah membuat pengecoran ekspresi kanan ke jenis data dengan panjang tetap dengan presisi maksimum.
- Pilih Konversi sederhana untuk mengonversi ekspresi tanpa koreksi apa pun.
- Untuk menggunakan perilaku ASE, pilih Ubah ke panjang tetap.
Saat Anda memilih mode konversi dalam kotak Mode, SSMA menerapkan pengaturan berikut:
| Pengaturan | Nilai |
|---|---|
| Bawaan | Konversi sederhana |
| Optimis | Konversi sederhana |
| Penuh | Ubah ke panjang tetap |
Konversi atau ubah string kosong menjadi tipe numerik
Menentukan cara menangani string kosong di dalam CONVERT atau CAST ekspresi dengan tipe data numerik sebagai argumen. Opsi berikut ini tersedia untuk pengaturan ini:
- Pilih Konversi sederhana untuk mengonversi ekspresi tanpa koreksi apa pun.
- Jika String kosong sebagai nol numerik dipilih, parameter string
{s}akan digantikan oleh ekspresiCASE ltrim(rtrim({s})) WHEN "" THEN 0 else {s} END.
Saat Anda memilih mode konversi dalam kotak Mode , SSMA menerapkan pengaturan berikut:
| Pengaturan | Nilai |
|---|---|
| Bawaan | Konversi sederhana |
| Optimis | Konversi sederhana |
| Penuh | String kosong dianggap sebagai angka nol |
Perangkaian NULL
Pengaturan ini menentukan cara mengonversi perangkaian string dengan NULL. Opsi berikut dapat diatur untuk pengaturan khusus ini:
- Jika opsi Bungkus dengan fungsi ISNULL dipilih, setiap non-konstanta
string_expressiondalam penggabungan akan dibungkus denganISNULL(string_expression)serta NULLs digantikan dengan string kosong. - Menjaga sintaks saat ini akan mempertahankan sintaks asli.
Saat Anda memilih mode konversi dalam kotak Mode , SSMA menerapkan pengaturan berikut:
| Pengaturan | Nilai |
|---|---|
| Bawaan | Pertahankan sintaks saat ini |
| Optimis | Pertahankan sintaks saat ini |
| Penuh | Bungkus dengan menggunakan fungsi ISNULL |
Konversi teks kosong
Pengaturan ini menentukan cara mengonversi string kosong. Opsi berikut dapat diatur untuk pengaturan khusus ini:
- Ganti semua ekspresi string dengan spasi
- Ganti konstanta string kosong dengan spasi
Untuk menggunakan perilaku SQL Server/Azure SQL, pilih Pertahankan sintaks saat ini.
Saat Anda memilih mode konversi dalam kotak Mode , SSMA menerapkan pengaturan berikut:
| Pengaturan | Nilai |
|---|---|
| Bawaan | Pertahankan sintaks saat ini |
| Optimis | Pertahankan sintaks saat ini |
| Penuh | Ganti semua ekspresi string dengan spasi |
Konversi string biner dengan menggunakan fungsi CONVERT dan CAST
Konversi nilai biner ke angka dapat mengembalikan nilai yang berbeda pada platform yang berbeda. Misalnya, pada prosesor x86, CONVERT(integer, 0x00000100) kembali 65536 di ASE, tetapi 256 di SQL Server. ASE juga mengembalikan nilai yang berbeda tergantung pada urutan byte.
Gunakan pengaturan ini untuk mengontrol bagaimana SSMA mengonversi CONVERT dan CAST ekspresi yang berisi nilai biner:
- Pilih Konversi sederhana untuk mengonversi ekspresi tanpa peringatan atau koreksi apa pun. Gunakan pengaturan ini jika Anda tahu bahwa server ASE memiliki urutan byte yang tidak memerlukan perubahan nilai biner apa pun.
- Pilih Konversi dan koreksi agar SSMA mengonversi dan memperbaiki ekspresi untuk digunakan di SQL Server. Urutan byte dalam konstanta harfiah akan dibalik. Semua nilai biner lainnya (seperti variabel biner dan kolom) akan ditandai dengan kesalahan. Gunakan nilai ini jika Anda tahu bahwa server ASE memiliki urutan byte yang memerlukan perubahan pada nilai biner.
Pilih Konversi dan tandai dengan peringatan agar SSMA mengonversi dan memperbaiki ekspresi, dan menandai semua ekspresi yang dikonversi dengan komentar peringatan.
Saat Anda memilih mode konversi dalam kotak Mode , SSMA menerapkan pengaturan berikut:
| Pengaturan | Nilai |
|---|---|
| Bawaan | Konversikan dan tandai dengan peringatan |
| Optimis | Konversi sederhana |
| Penuh | Konversi dan perbaiki |
SQL Dinamis
Gunakan pengaturan ini untuk menentukan jenis pesan (Peringatan atau Kesalahan) yang diperlihatkan SSMA di panel Output atau Daftar Kesalahan saat menemukan SQL dinamis dalam kode ASE.
- Jika Anda memilih Konversi dan tandai dengan peringatan, SSMA akan mengonversi SQL dinamis dan menandai pernyataan dengan komentar peringatan.
- Jika Anda memilih Menandai sebagai kesalahan, SSMA akan mengabaikan proses konversi dan menandai pernyataan dengan komentar kesalahan.
Saat Anda memilih mode konversi dalam kotak Mode , SSMA menerapkan pengaturan berikut:
| Pengaturan | Nilai |
|---|---|
| Bawaan | Konversikan dan tandai dengan peringatan |
| Optimis | Konversikan dan tandai dengan peringatan |
| Penuh | Tandai kesalahan |
Konversi pemeriksaan kesamaan
Di SQL Server/Azure SQL, jika pengaturan ANSI_NULLS aktif, SQL Server/Azure SQL mengembalikan UNKNOWN saat perbandingan kesetaraan berisi nilai NULL. Jika ANSI_NULLS dimatikan, perbandingan persamaan yang mengandung nilai NULL akan mengembalikan nilai benar ketika kolom dan ekspresi yang dibandingkan atau kedua ekspresi tersebut sama-sama NULL. Secara default (ANSINULL OFF), perbandingan kesetaraan SAP ASE berperilaku seperti SQL Server/Azure SQL dengan ANSI_NULLS OFF.
- Jika Anda memilih Konversi sederhana, SSMA akan mengonversi kode ASE ke sintaks SQL Server/Azure SQL tanpa pemeriksaan tambahan untuk
NULLnilai. Gunakan pengaturan ini jikaANSI_NULLSberadaOFFdi SQL Server/Azure SQL atau jika Anda ingin merevisi perbandingan kesetaraan berdasarkan per kasus. - Jika Anda memilih Pertimbangkan nilai NULL, SSMA akan menambahkan pemeriksaan untuk nilai
NULLdengan menggunakan klausaIS NULLdanIS NOT NULL.
Saat Anda memilih mode konversi dalam kotak Mode , SSMA menerapkan pengaturan berikut:
| Pengaturan | Nilai |
|---|---|
| Bawaan | Konversi sederhana |
| Optimis | Konversi sederhana |
| Penuh | Pertimbangkan nilai NULL |
Format string
SQL Server/Azure SQL tidak lagi mendukung argumen format_string dalam statement PRINT dan RAISERROR. Argumen format_string diizinkan untuk menempatkan parameter yang dapat diganti langsung dalam string, lalu mengganti parameter pada runtime. Sebagai gantinya, SQL Server memerlukan string lengkap dengan menggunakan string literal, atau string yang dibangun dengan menggunakan variabel. Untuk informasi selengkapnya, lihat topik PRINT (Transact-SQL).
Ketika SSMA menemukan format_string argumen, SSMA dapat membangun string literal menggunakan variabel atau membuat variabel baru dan membangun string dengan menggunakan variabel tersebut.
Untuk menggunakan string literal untuk
PRINTfungsi danRAISERROR, pilih Buat string baru.Dalam mode ini, jika pernyataan PRINT atau RAISERROR tidak menggunakan tempat penampung dan variabel lokal, pernyataan tidak berubah. Karakter persen ganda (%%) diubah menjadi satu persen karakter % dalam literal string PRINT.
Jika pernyataan PRINT atau RAISERROR menggunakan tempat penampung dan satu atau beberapa variabel lokal, seperti dalam contoh berikut:
PRINT 'Total: %1!%%', @percentSSMA akan mengonversinya ke sintaks berikut:
PRINT 'Total: '+ CAST(@percent AS varchar(max)) + '%'Jika
format_stringadalah variabel, seperti dalam pernyataan berikut:PRINT @fmt, @arg1, @arg2SSMA tidak dapat melakukan konversi string sederhana, dan harus membuat variabel baru:
DECLARE @print_format_1 varchar(max) SET @print_format_1 = REPLACE (@fmt, '%%', '%') SET @print_format_1 = REPLACE (@print_format_1, '%1!', CAST (@arg1 AS varchar(max))) SET @print_format_1 = REPLACE (@print_format_1, '%2!', CAST (@arg2 AS varchar(max))) PRINT @print_format_1Saat menggunakan mode Buat string baru , SSMA mengasumsikan bahwa opsi
CONCAT_NULL_YIELDS_NULLSQL Server adalahOFF. Oleh karena itu, SSMA tidak memeriksa argumen null.Agar SSMA membuat variabel baru untuk setiap
PRINTRAISERRORdan pernyataan, lalu gunakan variabel tersebut untuk nilai string, pilih Buat variabel baru.Dalam mode ini, jika pernyataan
PRINTatauRAISERRORtidak menggunakan tempat penampung maupun variabel lokal, SSMA mengganti semua karakter persen ganda (%%) dengan karakter persen tunggal untuk mematuhi sintaks SQL Server/Azure SQL.Jika pernyataan
PRINTatauRAISERRORmenggunakan tempat penampung dan satu atau beberapa variabel lokal, seperti dalam contoh berikut:PRINT 'Total: %1!%%', @percentSSMA akan mengonversinya ke sintaks berikut:
DECLARE @print_format_1 varchar(max) SET @print_format_1 = 'Total: %1!%' SET @print_format_1 = REPLACE (@print_format_1, '%1!', ISNULL(CAST (@percent AS VARCHAR(max)), '')) PRINT @print_format_1Jika
format_stringadalah variabel, seperti dalam pernyataan berikut:PRINT @fmt, @arg1, @arg2SSMA membuat variabel baru sebagai berikut, memeriksa nilai null di setiap argumen:
DECLARE @print_format_1 varchar(max) SET @print_format_1 = REPLACE (@fmt, '%%', '%') SET @print_format_1 = REPLACE (@print_format_1, '%1!', ISNULL(CAST (@arg1 AS varchar(max)),'')) SET @print_format_1 = REPLACE (@print_format_1, '%2!', ISNULL(CAST (@arg2 AS varchar(max)),'')) PRINT @print_format_1
Saat Anda memilih mode konversi dalam kotak Mode , SSMA menerapkan pengaturan berikut:
| Pengaturan | Nilai |
|---|---|
| Bawaan | Membuat string baru |
| Optimis | Membuat string baru |
| Penuh | Membuat variabel baru |
Menyisipkan nilai eksplisit ke dalam kolom tanda waktu
SQL Server/Azure SQL tidak mendukung penyisipan nilai eksplisit ke dalam kolom tanda waktu.
- Untuk mengecualikan kolom tanda waktu dari
INSERTpernyataan, pilih Kecualikan kolom. - Untuk mencetak pesan kesalahan setiap kali kolom tanda waktu berada dalam
INSERTpernyataan, pilih Tandai dengan kesalahan. Dalam mode ini,INSERTpernyataan tidak akan dikonversi dan akan ditandai dengan komentar kesalahan.
Saat Anda memilih mode konversi dalam kotak Mode , SSMA menerapkan pengaturan berikut:
| Pengaturan | Nilai |
|---|---|
| Bawaan | Mengecualikan kolom |
| Optimis | Mengecualikan kolom |
| Penuh | Tandai kesalahan |
Menyimpan objek sementara yang ditentukan dalam prosedur
Pengaturan ini menentukan apakah definisi objek sementara yang muncul dalam prosedur harus disimpan dalam metadata sumber selama konversi.
- Pilih Ya untuk disimpan ke metadata.
- Pilih Tidak jika objek tidak perlu disimpan.
| Pengaturan | Nilai |
|---|---|
| Bawaan | Ya |
| Optimis | Ya |
| Penuh | Tidak. |
Konversi tabel proksi
Menentukan apakah tabel proksi ASE dikonversi ke tabel SQL Server/Azure SQL, atau tidak dikonversi dan kode ditandai dengan komentar kesalahan.
- Pilih Konversi untuk mengonversi tabel proksi ke tabel reguler.
- Pilih Tandai dengan kesalahan untuk menandai kode tabel proksi dengan komentar kesalahan.
Saat Anda memilih mode konversi dalam kotak Mode , SSMA menerapkan pengaturan berikut:
| Pengaturan | Nilai |
|---|---|
| Bawaan | Tandai kesalahan |
| Optimis | Tandai kesalahan |
| Penuh | Tandai kesalahan |
Nomor pesan dasar RAISERROR
Pesan pengguna ASE disimpan di setiap database. Pesan pengguna SQL Server disimpan secara terpusat dan tersedia melalui sys.messages tampilan katalog. Selain itu pesan pengguna ASE dimulai di 20000, tetapi pesan kesalahan SQL Server dimulai di 50001.
Pengaturan ini menentukan nomor untuk ditambahkan ke nomor pesan pengguna ASE untuk mengonversinya ke pesan pengguna SQL Server. Jika SQL Server Anda memiliki pesan pengguna dalam sys.messages tampilan katalog, Anda mungkin harus mengubah nomor ini ke nilai yang lebih tinggi. Ini agar nomor pesan yang dikonversi tidak bertentangan dengan nomor pesan yang ada.
Perhatikan hal berikut:
- Pesan ASE dalam rentang
17000-19999berasal darisysmessagestabel sistem dan tidak dikonversi. - Jika nomor pesan yang dirujuk dalam
RAISERRORpernyataan adalah konstanta, SSMA akan menambahkan nomor pesan dasar ke konstanta untuk menentukan nomor pesan pengguna baru. - Jika nomor pesan yang direferensikan adalah variabel atau ekspresi, SSMA akan membuat variabel lokal perantara.
- Dalam mode Optimis, SSMA mengasumsikan bahwa opsi
CONCAT_NULL_YIELDS_NULLSQL Server adalahOFFdan tidak melakukan pemeriksaan argumenNULL. - Dalam modus Penuh, SSMA memeriksa
NULLargumen. -
RAISERRORdengan argumenarg-listtidak dikonversi.
Saat Anda memilih mode konversi dalam kotak Mode , SSMA menerapkan pengaturan berikut:
| Pengaturan | Nilai |
|---|---|
| Bawaan | 30001 |
| Optimis | 30001 |
| Penuh | 30001 |
Objek sistem
Gunakan pengaturan ini untuk menentukan jenis pesan (Peringatan atau Kesalahan) yang diperlihatkan SSMA di panel Output atau Daftar Kesalahan saat menemukan penggunaan objek sistem ASE.
- Jika Anda memilih Konversi dan tandai dengan peringatan, SSMA akan mengonversi referensi ke objek sistem dan akan menandai pernyataan dengan komentar peringatan.
- Jika Anda memilih Tandai dengan kesalahan, SSMA tidak akan mengonversi referensi ke objek sistem dan akan menandai pernyataan dengan komentar kesalahan.
Saat Anda memilih mode konversi dalam kotak Mode , SSMA menerapkan pengaturan berikut:
| Pengaturan | Nilai |
|---|---|
| Bawaan | Konversikan dan tandai dengan peringatan |
| Optimis | Konversikan dan tandai dengan peringatan |
| Penuh | Tandai kesalahan |
Pengidentifikasi belum terselesaikan
Gunakan pengaturan ini untuk menentukan jenis pesan (Peringatan atau Kesalahan) yang diperlihatkan SSMA di panel Output atau Daftar Kesalahan saat tidak dapat mengatasi pengidentifikasi.
- Jika Anda memilih Konversi dan tandai dengan peringatan, SSMA akan mencoba mengonversi referensi ke pengidentifikasi yang tidak terselesaikan dan akan menandai pernyataan dengan komentar peringatan.
- Jika Anda memilih Tandai dengan kesalahan, SSMA tidak akan mengonversi referensi pada pengidentifikasi yang belum terselesaikan dan akan menandai pernyataan dengan komentar yang menunjukkan kesalahan.
Saat Anda memilih mode konversi dalam kotak Mode , SSMA menerapkan pengaturan berikut:
| Pengaturan | Nilai |
|---|---|
| Bawaan | Konversikan dan tandai dengan peringatan |
| Optimis | Konversikan dan tandai dengan peringatan |
| Penuh | Tandai kesalahan |
Bagian fungsi sistem
Fungsi CHARINDEX
Di ASE, CHARINDEX mengembalikan NULL hanya jika semua ekspresi input adalah NULL. SQL Server/Azure SQL akan mengembalikan NULL jika ada ekspresi input adalah NULL.
- Untuk menggunakan perilaku ASE, pilih Ganti fungsi. Semua panggilan ke fungsi
CHARINDEXdiganti dengan panggilan ke fungsi yang ditentukan pengguna, yaituCHARINDEX_VARCHARatauCHARINDEX_NVARCHAR, berdasarkan jenis parameter yang diteruskan (dibuat dalam database pengguna di bawah nama skemas2ss) untuk meniru perilaku SAP ASE. - Untuk menggunakan perilaku SQL Server/Azure SQL, pilih Pertahankan sintaks saat ini.
Saat Anda memilih mode konversi dalam kotak Mode , SSMA menerapkan pengaturan berikut:
| Pengaturan | Nilai |
|---|---|
| Bawaan | Pertahankan sintaks saat ini |
| Optimis | Pertahankan sintaks saat ini |
| Penuh | Ganti fungsi |
Fungsi DATALENGTH
SQL Server/Azure SQL dan ASE berbeda dalam nilai yang dikembalikan oleh DATALENGTH fungsi ketika nilainya adalah spasi tunggal. Dalam hal ini, SQL Server/Azure SQL mengembalikan 0 dan ASE mengembalikan 1.
- Untuk menggunakan perilaku ASE, pilih Ganti fungsi. Semua panggilan ke
DATALENGTHfungsi diganti denganCASEekspresi untuk meniru perilaku SAP ASE. - Untuk menggunakan perilaku SQL Server/Azure SQL default, pilih Pertahankan sintaksis saat ini.
Saat Anda memilih mode konversi dalam kotak Mode , SSMA menerapkan pengaturan berikut:
| Pengaturan | Nilai |
|---|---|
| Bawaan | Pertahankan sintaks saat ini |
| Optimis | Pertahankan sintaks saat ini |
| Penuh | Ganti fungsi |
Fungsi INDEX_COL
ASE mendukung argumen opsional user_id ke INDEX_COL fungsi; namun, SQL Server/Azure SQL tidak mendukung argumen ini. Jika Anda menggunakan user_id argumen , fungsi ini tidak dapat dikonversi ke sintaks SQL Server/Azure SQL.
- Untuk menggunakan perilaku ASE, pilih Konversi fungsi. Jika kode berisi
user_idargumen , SSMA akan menampilkan kesalahan. - Untuk menampilkan pesan kesalahan setiap kali
INDEX_COLditemui, pilih Tandai sebagai kesalahan. SSMA tidak akan mengonversi referensi ke fungsi, dan akan menandai pernyataan dengan komentar kesalahan.
| Pengaturan | Nilai |
|---|---|
| Bawaan | Tandai kesalahan |
| Optimis | Tandai kesalahan |
| Penuh | Tandai kesalahan |
fungsi INDEX_COLORDER
SQL Server/Azure SQL tidak memiliki INDEX_COLORDER fungsi sistem.
- Untuk menggunakan perilaku ASE, pilih Konversi fungsi. Semua panggilan ke fungsi
INDEX_COLORDERdiganti dengan panggilan ke fungsi yang ditentukan oleh pengguna dengan nama yang samaINDEX_COLORDER(dibuat dalam database pengguna di bawah nama skemas2ss) yang meniru perilaku SAP ASE. - Untuk mencetak pesan kesalahan setiap kali
INDEX_COLORDERterjadi, pilih Tandai dengan kesalahan. SSMA tidak akan mengonversi referensi ke fungsi, dan akan menandai pernyataan dengan komentar kesalahan.
Saat Anda memilih mode konversi dalam kotak Mode , SSMA menerapkan pengaturan berikut:
| Pengaturan | Nilai |
|---|---|
| Bawaan | Tandai kesalahan |
| Optimis | Tandai kesalahan |
| Penuh | Tandai kesalahan |
Fungsi LEFT dan RIGHT
LEFT dan RIGHT fungsi dalam ASE berulah secara berbeda untuk parameter panjang negatif.
- Untuk menggunakan perilaku ASE, pilih Ganti Fungsi. Parameter panjang kemudian diganti dengan
CASEekspresi yang akan menghasilkanNULLuntuk nilai negatif. - Untuk menggunakan perilaku SQL Server, pilih Pertahankan sintaksis saat ini.
Saat Anda memilih mode konversi dalam kotak Mode , SSMA menerapkan pengaturan berikut:
| Pengaturan | Nilai |
|---|---|
| Bawaan | Pertahankan sintaks saat ini |
| Optimis | Pertahankan sintaks saat ini |
| Penuh | Ganti fungsi |
Nota
Jika parameter panjang adalah nilai harfiah dan bukan ekspresi kompleks, nilai panjang selalu diganti dengan NULL terlepas dari pengaturan proyek.
fungsi NEXT_IDENTITY
SQL Server/Azure SQL tidak memiliki NEXT_IDENTITY fungsi sistem.
- Untuk menggunakan perilaku ASE, pilih Konversi Fungsi. Semua panggilan ke
NEXT_IDENTITYfungsi diganti dengan ekspresi(IDENT_CURRENT(parameter Value) + IDENT_INCR(parameter Value)yang meniru perilaku SAP ASE. - Untuk mencetak pesan kesalahan setiap kali
NEXT_IDENTITYterjadi, pilih Tandai dengan kesalahan. SSMA tidak akan mengonversi referensi ke fungsi, dan akan menandai pernyataan dengan komentar kesalahan.
Saat Anda memilih mode konversi dalam kotak Mode , SSMA menerapkan pengaturan berikut:
| Pengaturan | Nilai |
|---|---|
| Bawaan | Tandai kesalahan |
| Optimis | Tandai kesalahan |
| Penuh | Tandai kesalahan |
Mode Default/Optimis/Penuh: Tandai jika terdapat kesalahan
Fungsi PATINDEX
Menentukan apakah akan mengonversi PATINDEX fungsi agar sesuai dengan perilaku SAP ASE. Intinya adalah bahwa ASE memangkas spasi yang berlebihan di akhir dalam pola pencarian. Solusinya adalah membuat cast ekspresi nilai ke jenis data panjang tetap dengan presisi maksimum dan menggunakan fungsi pola pencarian rtrim.
- Untuk menggunakan perilaku ASE, pilih Gunakan.
- Untuk menggunakan perilaku SQL Server/Azure SQL default, pilih Jangan gunakan.
Saat Anda memilih mode konversi dalam kotak Mode , SSMA menerapkan pengaturan berikut:
| Pengaturan | Nilai |
|---|---|
| Bawaan | Jangan gunakan |
| Optimis | Jangan gunakan |
| Penuh | Gunakan |
Fungsi REPLICATE
Fungsi REPLICATE mengulangi string sebanyak jumlah kali yang ditentukan. Di ASE, jika Anda menentukan untuk mengulangi string nol kali, hasilnya adalah NULL. Di SQL Server/Azure SQL, hasilnya adalah string kosong.
- Untuk menggunakan perilaku ASE, pilih Ganti fungsi. Semua panggilan ke fungsi
REPLICATEdiganti dengan panggilan ke fungsi yang ditentukan pengguna, yaituREPLICATE_VARCHARatauREPLICATE_NVARCHAR, berdasarkan jenis parameter yang diteruskan (dibuat dalam database pengguna di bawah nama skemas2ss) untuk meniru perilaku SAP ASE. - Untuk menggunakan perilaku SQL Server/Azure SQL default, pilih Ganti Fungsi.
Saat Anda memilih mode konversi dalam kotak Mode , SSMA menerapkan pengaturan berikut:
| Pengaturan | Nilai |
|---|---|
| Bawaan | Ganti fungsi |
| Optimis | Ganti fungsi |
| Penuh | Ganti fungsi |
Fungsi TRIM (LTRIM, RTRIM)
Pengaturan ini menentukan apakah akan mengganti panggilan ke TRIM, LTRIM dan RTRIM fungsi dengan fungsi sintaksis setara SAP ASE atau untuk mempertahankan sintaks saat ini. Opsi berikut ini ada untuk pengaturan khusus ini:
- Ganti fungsi
- Pertahankan sintaks saat ini
Saat Anda memilih mode konversi dalam kotak Mode , SSMA menerapkan pengaturan berikut:
| Pengaturan | Nilai |
|---|---|
| Bawaan | Ganti fungsi |
| Optimis | Ganti fungsi |
| Penuh | Ganti fungsi |
Fungsi SUBSTRING
Di ASE, fungsi SUBSTRING(expression, start, length) mengembalikan NULL jika nilai awal yang lebih besar dari jumlah karakter dalam ekspresi ditentukan, atau jika panjangnya sama dengan nol. Di SQL Server/Azure SQL, ekspresi yang setara mengembalikan string kosong.
- Untuk menggunakan perilaku ASE, pilih Ganti fungsi. Semua panggilan ke fungsi
SUBSTRINGdiganti dengan panggilan ke fungsi yang ditentukan penggunaSUBSTRING_VARCHAR,SUBSTRING_NVARCHAR, atauSUBSTRING_VARBINARYberdasarkan jenis parameter yang diteruskan (dibuat dalam database pengguna di bawah skema namas2ss) untuk meniru perilaku SAP ASE. - Untuk menggunakan perilaku SQL Server/Azure SQL, pilih Pertahankan sintaks saat ini.
Saat Anda memilih mode konversi dalam kotak Mode , SSMA menerapkan pengaturan berikut:
| Pengaturan | Nilai |
|---|---|
| Bawaan | Pertahankan sintaks saat ini |
| Optimis | Pertahankan sintaks saat ini |
| Penuh | Ganti fungsi |
Bagian tabel
Tambahkan kunci primer
Membuat kunci primer baru di tabel SQL Server atau Azure SQL jika tabel SAP ASE tidak memiliki kunci utama atau indeks unik.
| Pengaturan | Nilai |
|---|---|
| Bawaan | Tidak. |
| Optimis | Tidak. |
| Penuh | Ya |
Nota
Saat tersambung ke Azure SQL, itu adalah Ya secara default.