PolarDB-X 1.0 sepenuhnya kompatibel dengan protokol MySQL dan sintaks Bahasa Query Terstruktur (SQL) dari MySQL. Namun, terdapat beberapa batasan pada pernyataan SQL untuk PolarDB-X 1.0, yang disebabkan oleh arsitektur database terdistribusi yang berbeda dari database single-instance. Topik ini menjelaskan batasan pernyataan SQL di PolarDB-X 1.0.
Batasan umum pada pernyataan SQL
- PolarDB-X 1.0 tidak mendukung tipe data kustom atau fungsi kustom.
- PolarDB-X 1.0 tidak mendukung prosedur tersimpan, pemicu, atau kursor.
- PolarDB-X 1.0 tidak mendukung tabel sementara.
- PolarDB-X 1.0 tidak mendukung pernyataan majemuk seperti BEGIN...END, LOOP...END LOOP, REPEAT...UNTIL...END REPEAT, dan WHILE...DO...END WHILE.
- PolarDB-X 1.0 tidak mendukung pernyataan kontrol alur seperti IF dan WHILE.
- PolarDB-X 1.0 tidak mendukung kunci asing.
Batasan pada sintaks SQL
- DDL
- Anda tidak dapat mengeksekusi pernyataan
CREATE TABLE tbl_name LIKE old_tbl_nameuntuk tabel sharding. - Anda tidak dapat mengeksekusi pernyataan
CREATE TABLE tbl_name SELECT statementsuntuk tabel sharding. - Anda tidak dapat mengeksekusi pernyataan RENAME untuk mengganti nama beberapa tabel sekaligus.
- Anda tidak dapat mengeksekusi pernyataan ALTER TABLE untuk mengubah bidang kunci shard.
- PolarDB-X 1.0 tidak mendukung operasi bahasa definisi data (DDL) lintas skema, seperti
CREATE TABLE db_name.tbl_name (...).
Untuk informasi lebih lanjut tentang pernyataan DDL, lihat DDL.
- Anda tidak dapat mengeksekusi pernyataan
- DML
- PolarDB-X 1.0 tidak mendukung pernyataan berikut: SELECT INTO OUTFILE, INTO DUMPFILE, dan INTO var_name.
- PolarDB-X 1.0 tidak mendukung operasi STRAIGHT_JOIN atau NATURAL JOIN.
- PolarDB-X 1.0 tidak mendukung subquery dalam klausa UPDATE SET.
- PolarDB-X 1.0 tidak mendukung pernyataan INSERT DELAYED.
- PolarDB-X 1.0 tidak mendukung referensi variabel dan operasi dalam pernyataan SQL. Sebagai contoh, Anda tidak dapat mengeksekusi pernyataan berikut:
SET @c=1, @d=@c+1; SELECT @c, @d. - Anda tidak dapat melakukan operasi INSERT, REPLACE, UPDATE, atau DELETE pada tabel siaran dalam transaksi fleksibel.
Untuk informasi lebih lanjut tentang pernyataan bahasa manipulasi data (DML), lihat DML.
- Subquery
- PolarDB-X 1.0 tidak mendukung subquery dalam klausa HAVING atau JOIN ON.
- PolarDB-X 1.0 tidak mendukung fungsi ROW dalam subquery skalar yang menggunakan tanda sama dengan (=) sebagai operator.
Untuk informasi lebih lanjut tentang subquery, lihat Subquery.
- Manajemen Database
- PolarDB-X 1.0 tidak mendukung kombinasi LIMIT dan COUNT dalam pernyataan SHOW WARNINGS.
- PolarDB-X 1.0 tidak mendukung kombinasi LIMIT dan COUNT dalam pernyataan SHOW ERRORS.
- Operator yang Tidak Didukung oleh PolarDB-X 1.0
PolarDB-X 1.0 tidak mendukung operator penugasan
':='.Untuk informasi lebih lanjut tentang operator, lihat Operator.
- Fungsi yang Tidak Didukung oleh PolarDB-X 1.0
- Fungsi pencarian teks lengkap. Untuk informasi lebih lanjut, lihat Fungsi Pencarian Teks Lengkap.
- Fungsi XML. Untuk informasi lebih lanjut, lihat Fungsi XML.
- Fungsi pengenal transaksi global (GTID). Untuk informasi lebih lanjut, lihat Fungsi yang Digunakan dengan Pengenal Transaksi Global (GTID)
- Fungsi enkripsi perusahaan. Untuk informasi lebih lanjut, lihat Enkripsi Perusahaan MySQL.
Untuk informasi lebih lanjut tentang fungsi, lihat Fungsi.
- Kata Kunci yang Tidak Didukung oleh PolarDB-X 1.0
- MILLISECOND
- MICROSECOND