T- SQL perbedaan pada Babelfish - Amazon Aurora

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

T- SQL perbedaan pada Babelfish

Berikut ini, Anda dapat menemukan tabel SQL fungsionalitas T seperti yang didukung dalam rilis Babelfish saat ini dengan beberapa catatan tentang perbedaan perilaku dari SQL Server.

Untuk informasi selengkapnya tentang dukungan di berbagai versi, lihat Fungsionalitas yang didukung di Babelfish berdasarkan versi. Untuk informasi tentang fitur yang saat ini tidak didukung, lihat Fungsionalitas yang tidak didukung di Babelfish.

Babelfish tersedia dengan Aurora Postgre -Compatible Edition. SQL Untuk informasi lebih lanjut tentang rilis Babelfish, lihat Catatan Rilis untuk Aurora Postgre. SQL

Fungsionalitas atau sintaks Deskripsi perilaku atau perbedaan
\ (karakter kelanjutan baris) Karakter kelanjutan baris (garis miring terbalik sebelum baris baru) untuk karakter dan string heksadesimal saat ini tidak didukung. Untuk string karakter, backslash-newline ditafsirkan sebagai karakter dalam string. Untuk string heksadesimal, garis miring terbalik menghasilkan kesalahan sintaks.

@@version

Format nilai yang dikembalikan oleh @@version sedikit berbeda dari nilai yang dikembalikan oleh SQL Server. Kode Anda mungkin tidak berfungsi dengan benar jika tergantung pada pemformatan @@version.

Fungsi agregat

Fungsi agregat sebagian didukung (AVG,COUNT, COUNT _BIG,GROUPING,MAX,MIN, STRING _AGG, dan SUM didukung). Untuk daftar fungsi agregat yang tidak didukung, lihat. Fungsi yang tidak didukung

ALTER TABLE

Mendukung penambahan atau penjatuhan satu kolom atau batasan saja.

ALTER TABLE..ALTER COLUMN

NULLdan saat ini tidak NOT NULL dapat ditentukan. Untuk mengubah nullability kolom, gunakan pernyataan postgre.. SQL ALTER TABLE {SET|DROP} NOTNULL.

Nama kolom kosong tanpa alias kolom

Utilitas sqlcmd dan psql menangani kolom dengan nama kosong secara berbeda:

  • SQLServer sqlcmd mengembalikan nama kolom kosong.

  • Postgre SQL psql mengembalikan nama kolom yang dihasilkan.

CHECKSUM fungsi

Babelfish dan SQL Server menggunakan algoritma hashing yang berbeda untuk fungsi tersebut. CHECKSUM Akibatnya, nilai hash yang dihasilkan oleh CHECKSUM fungsi di Babelfish mungkin berbeda dari yang dihasilkan oleh CHECKSUM fungsi di Server. SQL

Kolom default

Saat membuat kolom default, nama batasan diabaikan. Untuk menjatuhkan kolom default, gunakan sintaks berikut: ALTER TABLE...ALTER COLUMN..DROP DEFAULT...

Constraint_name

Di SQL Server, nama kendala harus unik dalam skema yang menjadi milik tabel. Namun, di Babelfish, ini hanya berlaku untuk PRIMARY KEY dan UNIQUE kendala. Jenis kendala lainnya tidak tunduk pada batasan ini.

Batasan

Postgre SQL tidak mendukung menyalakan dan mematikan kendala individu. Pernyataan itu diabaikan dan peringatan diajukan.

Kendala dengan _ _ IGNORE DUP KEY

Batasan dibuat tanpa properti ini.

CREATE, ALTER, DROP SERVER ROLE

ALTERSERVERROLEhanya didukung untuksysadmin. Semua sintaks lainnya tidak didukung.

T- SQL user di Babelfish memiliki pengalaman yang mirip dengan SQL Server untuk konsep login (server principal), database, dan database user (database principal).

CREATE, ALTER LOGIN klausa didukung dengan sintaks terbatas

Yang CREATELOGIN... PASSWORDklausa,... DEFAULT_ DATABASE klausa, dan... DEFAULT_ LANGUAGE klausa didukung. Yang ALTERLOGIN... PASSWORDklausa didukung, tetapi ALTERLOGIN... OLD_ PASSWORD klausa tidak didukung. Hanya login yang merupakan anggota sysadmin yang dapat memodifikasi kata sandi.

CREATEDATABASEpemeriksaan peka huruf besar/kecil

Koleksi peka huruf besar/kecil tidak didukung dengan pernyataan tersebut. CREATE DATABASE

CREATEDATABASEkata kunci dan klausa

Pilihan kecuali COLLATE dan CONTAINMENT = NONE tidak didukung. COLLATEKlausul diterima dan selalu diatur ke nilai. babelfishpg_tsql.server_collation_name

CREATESCHEMA... klausul pendukung

Anda dapat menggunakan CREATE SCHEMA perintah untuk membuat skema kosong. Gunakan perintah tambahan untuk membuat objek skema.

Nilai ID basis data berbeda pada Babelfish

Database master dan tempdb tidak akan menjadi database IDs 1 dan 2.

FORMATfungsi tipe tanggal didukung dengan batasan berikut

Meridian karakter tunggal tidak didukung.

Format “yyy” di SQL server mengembalikan 4 digit untuk tahun di atas 1000, tetapi hanya 3 digit untuk yang lain.

Format "g" dan "R" tidak didukung

Terjemahan lokal "Vi-VN" sedikit berbeda.

Pengidentifikasi melebihi 63 karakter

Postgre SQL mendukung maksimal 63 karakter untuk pengidentifikasi. Babelfish mengonversi pengenal lebih dari 63 karakter ke nama yang menyertakan hash dari nama aslinya. Misalnya, tabel yang dibuat sebagai “AB (ABC1234567890123456789012345678901234567890123456789012345678901234567890" dapat dikonversi ke" 0123456789012345678901234567890123456789012345678901234567890". ABC123456789

IDENTITYkolom dukungan

Kolom IDENTITY didukung untuk tipe data tinyint, smallint, int, bigint. numeric, dan decimal.

SQLServer mendukung presisi ke 38 tempat untuk tipe data numeric dan decimal IDENTITY kolom.

Postgre SQL mendukung presisi ke 19 tempat untuk tipe data numeric dan kolomdecimal. IDENTITY

Indeks dengan IGNORE _ _ DUP KEY

Sintaks yang membuat indeks yang menyertakan IGNORE DUP _ _ KEY membuat indeks seolah-olah properti ini dihilangkan.

Indeks dengan lebih dari 32 kolom

Indeks tidak dapat menyertakan lebih dari 32 kolom. Kolom indeks yang disertakan dihitung ke arah maksimum di Postgre SQL tetapi tidak di SQL Server.

Indeks (berklaster)

Indeks berkerumun dibuat seolah-olah NONCLUSTERED telah ditentukan.

Klausa indeks

Klausa berikut diabaikan:FILLFACTOR, ALLOW _ _, _ PAGE _LOCKS, ALLOW ROW _LOCKS, PAD _INDEX, _ STATISTICS _ OPTIMIZE _NORECOMPUTE, FOR SEQUENTIAL SORT _IN_KEY, _TEMPDB,, DROP _EXISTING,ONLINE, dan COMPRESSION _ DELAY MAXDOP DATA COMPRESSION

JSONdukungan

Urutan pasangan nama-nilai tidak dijamin. Tetapi tipe array tetap tidak terpengaruh.

LOGINbenda-benda

Semua opsi untuk LOGIN objek tidak didukung kecuali untukPASSWORD, DEFAULT _DATABASE, DEFAULT _LANGUAGE,ENABLE,DISABLE.

NEWSEQUENTIALID fungsi

Diimplementasikan sebagaiNEWID; perilaku berurutan tidak dijamin. Saat meneleponNEWSEQUENTIALID, Postgre SQL menghasilkan nilai baruGUID.

OUTPUTklausa didukung dengan batasan berikut

OUTPUTdan OUTPUT INTO tidak didukung dalam DML kueri yang sama. Referensi ke tabel non-target UPDATE atau DELETE operasi dalam OUTPUT klausa tidak didukung. OUTPUT... DELETED*, INSERTED * tidak didukung dalam kueri yang sama.

Batas parameter prosedur atau fungsi

Babelfish mendukung maksimum 100 parameter untuk prosedur atau fungsi.

ROWGUIDCOL

Klausa ini diabaikan untuk sekarang. Kueri referensi $GUIDGOL menyebabkan kesalahan sintaks.

SEQUENCEdukungan objek

SEQUENCEobjek didukung untuk tipe data tinyint, smallint, int, bigint, numerik, dan desimal.

Aurora Postgre SQL mendukung presisi hingga 19 tempat untuk tipe data numerik dan desimal dalam a. SEQUENCE

Peran tingkat server

Peran tingkat server sysadmin didukung. Peran tingkat server lainnya (selain sysadmin) tidak didukung.

Peran tingkat basis data selain db_owner

Peran db_owner tingkat basis data dan tingkat basis data yang ditentukan pengguna didukung. Peran tingkat basis data lainnya (selain db_owner) tidak didukung.

SQLkata kunci SPARSE

Kata kunci SPARSE diterima dan diabaikan.

SQLklausa kata kunci ON filegroup

Klausa ini diabaikan untuk sekarang.

SQLkata kunci CLUSTERED dan NONCLUSTERED untuk indeks dan kendala

Babelfish menerima dan mengabaikan kata kunci CLUSTERED dan NONCLUSTERED.

sysdatabases.cmptlevel

sysdatabases.cmptlevel selalu diatur ke 120.

tempdb tidak diinisialisasi ulang saat restart

Objek permanen (seperti tabel dan prosedur) yang dibuat di tempdb tidak dihapus saat basis data dimulai ulang.

TEXTIMAGE_ON filegroup

Babelfish mengabaikan TEXTIMAGE_ON filegroup klausa.

Ketepatan waktu

Babelfish mendukung presisi 6 digit untuk detik pecahan. Tidak ada efek samping yang diantisipasi dengan perilaku ini.

Tingkat isolasi transaksi

READUNCOMMITTEDdiperlakukan sama sepertiREADCOMMITTED.

Kolom komputasi virtual (nonpersisten)

Kolom komputasi virtual dibuat sebagai persisten.

Tanpa SCHEMABINDING klausa

Klausa ini tidak didukung dalam fungsi, prosedur, pemicu, atau tampilan. Objek dibuat, tetapi seolah-olah WITH SCHEMABINDING telah ditentukan.