Bagikan melalui


Konstruksi Transact-SQL Tidak Didukung oleh OLTP Dalam Memori

Berlaku untuk: SQL ServerAzure SQL Database Azure SQL Managed Instance

Tabel yang dioptimalkan memori, prosedur tersimpan yang dikompilasi secara asli, dan fungsi yang ditentukan pengguna tidak mendukung area permukaan Transact-SQL lengkap yang didukung oleh tabel berbasis disk, prosedur tersimpan Transact-SQL yang ditafsirkan, dan fungsi yang ditentukan pengguna. Saat mencoba menggunakan salah satu fitur yang tidak didukung, server mengembalikan kesalahan.

Teks pesan kesalahan menyebutkan jenis pernyataan Transact-SQL (fitur, operasi, opsi, misalnya) dan serta nama fitur atau kata kunci Transact-SQL. Sebagian besar fitur yang tidak didukung akan mengembalikan kesalahan 10794, dengan teks pesan kesalahan yang menunjukkan fitur yang tidak didukung. Tabel berikut mencantumkan fitur dan kata kunci Transact-SQL yang dapat muncul dalam teks pesan kesalahan, serta tindakan korektif untuk mengatasi kesalahan.

Untuk informasi selengkapnya tentang fitur yang didukung dengan tabel yang dioptimalkan memori dan prosedur tersimpan yang dikompilasi secara asli, lihat:

Database yang Menggunakan OLTP Dalam Memori

Tabel berikut mencantumkan fitur Transact-SQL yang tidak didukung, dan kata kunci yang dapat muncul dalam teks pesan kesalahan yang melibatkan database OLTP Dalam Memori. Tabel juga mencantumkan resolusi untuk kesalahan.

Jenis Nama Resolusi
Opsi AUTO_CLOSE Opsi database AUTO_CLOSE=ON tidak didukung dengan database yang memiliki grup file MEMORY_OPTIMIZED_DATA.
Opsi ATTACH_REBUILD_LOG Opsi BUAT database ATTACH_REBUILD_LOG tidak didukung dengan database yang memiliki grup file MEMORY_OPTIMIZED_DATA.
Fitur REKAM JEPRET DATABASE Membuat rekam jepret database tidak didukung dengan database yang memiliki grup file MEMORY_OPTIMIZED_DATA.
Fitur Replikasi menggunakan sync_method 'rekam jepret database' atau 'karakter rekam jepret database' Replikasi menggunakan sync_method 'rekam jepret database' atau 'karakter rekam jepret database' tidak didukung dengan database yang memiliki grup file MEMORY_OPTIMIZED_DATA.
Fitur DBCC CHECKDB

DBCC CHECKTABLE
DBCC CHECKDB melewati tabel yang dioptimalkan memori dalam database.

DBCC CHECKTABLE akan gagal untuk tabel yang dioptimalkan memori.

Tabel yang Dioptimalkan Memori

Tabel berikut mencantumkan fitur Transact-SQL yang tidak didukung, dan kata kunci yang dapat muncul dalam teks pesan kesalahan yang melibatkan tabel yang dioptimalkan memori. Tabel juga mencantumkan resolusi untuk kesalahan.

Jenis Nama Resolusi
Fitur AKTIF Tabel yang dioptimalkan memori tidak dapat ditempatkan pada grup file atau skema partisi. Hapus klausa ON dari pernyataan CREATE TABLE .

Semua tabel memori yang dioptimalkan dipetakan ke grup file yang dioptimalkan memori.
Jenis Data Nama jenis data Jenis data yang ditunjukkan tidak didukung. Ganti jenis dengan salah satu jenis data yang didukung. Untuk informasi selengkapnya, lihat Jenis Data yang Didukung untuk OLTP Dalam Memori.
Fitur Kolom komputasi Berlaku untuk: SQL Server 2014 (12.x) dan SQL Server 2016 (13.x)
Kolom komputasi tidak didukung untuk tabel yang dioptimalkan memori. Hapus kolom komputasi dari pernyataan CREATE TABLE .

Azure SQL Database dan SQL Server yang memulai SQL Server 2017 (14.x) mendukung kolom komputasi dalam tabel dan indeks yang dioptimalkan memori.
Fitur Replikasi Replikasi tidak didukung dengan tabel yang dioptimalkan memori.
Fitur FILESTREAM Penyimpanan FILESTREAM tidak didukung kolom tabel yang dioptimalkan memori. Hapus kata kunci FILESTREAM dari definisi kolom.
Fitur JARANG Kolom tabel yang dioptimalkan memori tidak dapat didefinisikan sebagai SPARSE. Hapus kata kunci SPARSE dari definisi kolom.
Fitur ROWGUIDCOL Opsi ROWGUIDCOL tidak didukung untuk kolom tabel yang dioptimalkan memori. Hapus kata kunci ROWGUIDCOL dari definisi kolom.
Fitur KUNCI ASING Berlaku untuk: Azure SQL Database dan SQL Server memulai SQL Server 2016 (13.x)
Untuk tabel yang dioptimalkan memori, batasan KUNCI ASING hanya didukung untuk kunci asing yang mereferensikan kunci utama tabel lain yang dioptimalkan memori. Hapus batasan dari definisi tabel jika kunci asing mereferensikan batasan unik.

Di SQL Server 2014 (12.x), batasan KUNCI ASING tidak didukung dengan tabel yang dioptimalkan memori.
Fitur indeks terkluster Tentukan indeks nonclustered. Dalam kasus indeks kunci primer, pastikan untuk menentukan PRIMARY KEY NONCLUSTERED.
Fitur DDL di dalam transaksi Tabel yang dioptimalkan memori dan prosedur tersimpan yang dikompilasi secara asli tidak dapat dibuat atau dihilangkan dalam konteks transaksi pengguna. Jangan memulai transaksi dan memastikan pengaturan sesi IMPLICIT_TRANSACTIONS NONAKTIF sebelum menjalankan pernyataan CREATE atau DROP.
Fitur Pemicu DDL Tabel yang dioptimalkan memori dan prosedur tersimpan yang dikompilasi secara asli tidak dapat dibuat atau dihilangkan jika ada pemicu server atau database untuk operasi DDL tersebut. Hapus pemicu server dan database pada CREATE/DROP TABLE dan CREATE/DROP PROCEDURE.
Fitur NOTIFIKASI KEJADIAN Tabel yang dioptimalkan memori dan prosedur tersimpan yang dikompilasi secara asli tidak dapat dibuat atau dihilangkan jika ada pemberitahuan peristiwa server atau database untuk operasi DDL tersebut. Hapus pemberitahuan peristiwa server dan database pada CREATE TABLE atau DROP TABLE dan CREATE PROCEDURE atau DROP PROCEDURE.
Fitur FileTable Tabel yang dioptimalkan memori tidak dapat dibuat sebagai tabel file. Menghapus argumen AS FileTable dari pernyataan CREATE TABLE
Operasi Pembaruan kolom kunci primer Kolom kunci primer dalam tabel yang dioptimalkan memori dan jenis tabel tidak dapat diperbarui. Jika kunci primer perlu diperbarui, hapus baris lama dan sisipkan baris baru dengan kunci primer yang diperbarui.
Operasi CREATE INDEX Indeks pada tabel yang dioptimalkan memori harus ditentukan sebaris dengan pernyataan CREATE TABLE , atau dengan pernyataan ALTER TABLE .
Operasi MEMBUAT INDEKS FULLTEXT Indeks teks penuh tidak didukung untuk tabel yang dioptimalkan memori.
Operasi perubahan skema Tabel yang dioptimalkan memori dan prosedur tersimpan yang dikompilasi secara asli tidak mendukung perubahan skema tertentu:
Azure SQL Database dan SQL Server yang memulai SQL Server 2017 (14.x): OPERASI ALTER TABLE, ALTER PROCEDURE, dan sp_rename didukung. Perubahan skema lainnya, misalnya menambahkan properti yang diperluas, tidak didukung.

Operasi SQL Server 2016 (13.x): ALTER TABLE dan ALTER PROCEDURE didukung. Perubahan skema lainnya, termasuk sp_rename, tidak didukung.

SQL Server 2014 (12.x): perubahan skema tidak didukung. Untuk mengubah definisi tabel yang dioptimalkan memori atau prosedur tersimpan yang dikompilasi secara asli, pertama-tama letakkan objek lalu buat ulang dengan definisi yang diinginkan.
Operasi POTONG TABEL Operasi TRUNCATE tidak didukung untuk tabel yang dioptimalkan memori. Untuk menghapus semua baris dari tabel, hapus semua baris menggunakan tabel DELETE FROM atau jatuhkan dan buat ulang tabel.
Operasi ALTER AUTHORIZATION Mengubah pemilik tabel yang dioptimalkan memori yang ada atau prosedur tersimpan yang dikompilasi secara asli tidak didukung. Hilangkan dan buat ulang tabel atau prosedur untuk mengubah kepemilikan.
Operasi ALTER SCHEMA Mentransfer tabel yang ada atau prosedur tersimpan yang dikompilasi secara asli ke skema lain tidak didukung. Jatuhkan dan buat ulang objek untuk ditransfer antar skema.
Operasi DBCC CHECKTABLE DBCC CHECKTABLE tidak didukung dengan tabel yang dioptimalkan memori. Untuk memverifikasi integritas file titik pemeriksaan pada disk, lakukan pencadangan grup file MEMORY_OPTIMIZED_DATA.
Fitur ANSI_PADDING NONAKTIF Opsi sesi ANSI_PADDING harus AKTIF saat membuat tabel yang dioptimalkan memori atau prosedur tersimpan yang dikompilasi secara asli. Jalankan SET ANSI_PADDING AKTIF sebelum menjalankan pernyataan CREATE.
Opsi DATA_COMPRESSION Pemadatan data tidak didukung untuk tabel yang dioptimalkan memori. Hapus opsi dari definisi tabel.
Fitur DTC Tabel yang dioptimalkan memori dan prosedur tersimpan yang dikompilasi secara asli tidak dapat diakses dari transaksi terdistribusi. Gunakan transaksi SQL sebagai gantinya.
Operasi Tabel yang dioptimalkan memori sebagai target MERGE Tabel yang dioptimalkan memori tidak dapat menjadi target operasi MERGE . Gunakan pernyataan INSERT, UPDATE, dan DELETE sebagai gantinya.

Indeks pada Tabel yang Dioptimalkan Memori

Tabel berikut mencantumkan fitur dan kata kunci Transact-SQL yang dapat muncul dalam teks pesan kesalahan yang melibatkan indeks pada tabel yang dioptimalkan memori, serta tindakan korektif untuk mengatasi kesalahan.

Jenis Nama Resolusi
Fitur Indeks yang difilter Indeks yang difilter tidak didukung dengan tabel yang dioptimalkan memori. Hilangkan klausa WHERE dari spesifikasi indeks.
Fitur Kolom yang disertakan Menentukan kolom yang disertakan tidak diperlukan untuk tabel yang dioptimalkan memori. Semua kolom tabel yang dioptimalkan memori secara implisit disertakan dalam setiap indeks yang dioptimalkan memori.
Operasi DROP INDEX Menghilangkan indeks pada tabel yang dioptimalkan memori tidak didukung. Anda dapat menghapus indeks menggunakan ALTER TABLE.

Untuk informasi selengkapnya, lihat Mengubah Tabel yang Dioptimalkan Memori.
Opsi indeks Opsi indeks Hanya satu opsi indeks yang didukung - BUCKET_COUNT untuk indeks HASH.

Indeks Hash Nonclustered

Tabel berikut mencantumkan fitur dan kata kunci Transact-SQL yang dapat muncul dalam teks pesan kesalahan yang melibatkan indeks hash non-kluster, serta tindakan korektif untuk mengatasi kesalahan.

Jenis Nama Resolusi
Opsi ASC/DESC Indeks hash non-kluster tidak diurutkan. Hapus kata kunci ASC dan DESC dari spesifikasi kunci indeks.

Prosedur Tersimpan yang Dikompilasi Secara Asli dan Fungsi yang Ditentukan Pengguna

Tabel berikut mencantumkan fitur dan kata kunci Transact-SQL yang dapat muncul dalam teks pesan kesalahan yang melibatkan prosedur tersimpan yang dikompilasi secara asli dan fungsi yang ditentukan pengguna, serta tindakan korektif untuk mengatasi kesalahan.

Jenis Fitur Resolusi
Fitur Variabel tabel sebaris Jenis tabel tidak dapat dideklarasikan sebaris dengan deklarasi variabel. Jenis tabel harus dinyatakan secara eksplisit menggunakan pernyataan CREATE TYPE .
Fitur Kursor Kursor tidak didukung pada atau dalam prosedur tersimpan yang dikompilasi secara asli.

Saat menjalankan prosedur dari klien, gunakan RPC daripada API kursor. Dengan ODBC, hindari pernyataan Transact-SQL EXECUTE, sebagai gantinya tentukan nama prosedur secara langsung.

Saat menjalankan prosedur dari batch Transact-SQL atau prosedur tersimpan lainnya, hindari menggunakan kursor dengan prosedur tersimpan yang dikompilasi secara asli.

Saat membuat prosedur tersimpan yang dikompilasi secara asli, daripada menggunakan kursor, gunakan logika berbasis set atau perulangan WHILE .
Fitur Default parameter non-konstan Saat menggunakan nilai default dengan parameter pada prosedur tersimpan yang dikompilasi secara asli, nilai harus konstanta. Hapus kartubebas apa pun dari deklarasi parameter.
Fitur EKSTERNAL Prosedur tersimpan CLR tidak dapat dikompilasi secara asli. Hapus klausa AS EXTERNAL atau opsi NATIVE_COMPILATION dari pernyataan CREATE PROCEDURE.
Fitur Prosedur tersimpan bernomor Prosedur tersimpan yang dikompilasi secara asli tidak dapat diberi nomor. Hapus ;angka dari pernyataan CREATE PROCEDURE.
Fitur INSERT multi-baris ... Pernyataan VALUES Tidak dapat menyisipkan beberapa baris menggunakan pernyataan INSERT yang sama dalam prosedur tersimpan yang dikompilasi secara asli. Buat pernyataan INSERT untuk setiap baris.
Fitur Ekspresi Tabel Umum (CTE) Ekspresi tabel umum (CTE) tidak didukung dalam prosedur tersimpan yang dikompilasi secara asli. Menulis ulang kueri.
Fitur COMPUTE Klausa COMPUTE tidak didukung. Hapus dari kueri.
Fitur SELECT INTO Klausa INTO tidak didukung dengan pernyataan SELECT . Tulis ulang kueri sebagai INSERT INTO Table SELECT.
Fitur daftar sisipkan kolom tidak lengkap Secara umum, dalam nilai pernyataan INSERT harus ditentukan untuk semua kolom dalam tabel.

Namun, kami mendukung batasan DEFAULT dan kolom IDENTITY(1,1) pada tabel memori yang dioptimalkan. Kolom ini bisa, dan dalam kasus kolom IDENTITY harus, dihilangkan dari daftar kolom INSERT.
Fitur Fungsi Beberapa fungsi bawaan tidak didukung dalam prosedur tersimpan yang dikompilasi secara asli. Hapus fungsi yang ditolak dari prosedur tersimpan. Untuk informasi selengkapnya tentang fungsi bawaan yang didukung, lihat
Fitur yang Didukung untuk Modul T-SQL yang Dikompilasi Secara Asli, atau
Prosedur Tersimpan yang Dikompilasi Secara Asli.
Fitur CASE Berlaku untuk: SQL Server 2014 (12.x) dan SQL Server memulai SQL Server 2016 (13.x)
Ekspresi CASE tidak didukung dalam kueri di dalam prosedur tersimpan yang dikompilasi secara asli. Buat kueri untuk setiap kasus. Untuk informasi selengkapnya, lihat Menerapkan Ekspresi CASE dalam Prosedur Tersimpan yang Dikompilasi Secara Asli.

Azure SQL Database dan SQL Server yang memulai SQL Server 2017 (14.x) mendukung ekspresi CASE.
Fitur SISIPKAN EKSEKUSI Hapus referensi.
Fitur EXECUTE Hanya didukung untuk menjalankan prosedur tersimpan yang dikompilasi secara asli dan fungsi yang ditentukan pengguna.
Fitur agregat yang ditentukan pengguna Fungsi agregat yang ditentukan pengguna tidak dapat digunakan dalam prosedur tersimpan yang dikompilasi secara asli. Hapus referensi ke fungsi dari prosedur.
Fitur telusuri metadata mode Prosedur tersimpan yang dikompilasi secara asli tidak mendukung metadata mode telusur. Pastikan opsi sesi NO_BROWSETABLE diatur ke NONAKTIF.
Fitur HAPUS dengan klausa FROM Klausa FROM tidak didukung untuk pernyataan DELETE dengan sumber tabel dalam prosedur tersimpan yang dikompilasi secara asli.

DELETE dengan klausa FROM didukung saat digunakan untuk menunjukkan tabel yang akan dihapus.
Fitur PERBARUI dengan klausa FROM Klausa FROM tidak didukung untuk pernyataan UPDATE dalam prosedur tersimpan yang dikompilasi secara asli.
Fitur prosedur sementara Prosedur tersimpan sementara tidak dapat dikompilasi secara asli. Buat prosedur tersimpan yang dikompilasi secara permanen secara asli atau prosedur tersimpan Transact-SQL yang ditafsirkan sementara.
Tingkat isolasi BACA TIDAK DIKOMIT Tingkat isolasi READ UNCOMMITTED tidak didukung untuk prosedur tersimpan yang dikompilasi secara asli. Gunakan tingkat isolasi yang didukung, seperti SNAPSHOT.
Tingkat isolasi READ COMMITTED TINGKAT isolasi READ COMMITTED tidak didukung untuk prosedur tersimpan yang dikompilasi secara asli. Gunakan tingkat isolasi yang didukung, seperti SNAPSHOT.
Fitur tabel sementara Tabel dalam tempdb tidak dapat digunakan dalam prosedur tersimpan yang dikompilasi secara asli. Sebagai gantinya, gunakan variabel tabel atau tabel yang dioptimalkan memori dengan DURABILITY=SCHEMA_ONLY.
Fitur DTC Tabel yang dioptimalkan memori dan prosedur tersimpan yang dikompilasi secara asli tidak dapat diakses dari transaksi terdistribusi. Gunakan transaksi SQL sebagai gantinya.
Fitur JALANKAN DENGAN KOMPILASI ULANG Opsi WITH RECOMPILE tidak didukung untuk prosedur tersimpan yang dikompilasi secara asli.
Fitur Eksekusi dari koneksi administrator khusus. Prosedur tersimpan yang dikompilasi secara asli tidak dapat dijalankan dari koneksi admin khusus (DAC). Gunakan koneksi reguler sebagai gantinya.
Operasi titik simpan Prosedur tersimpan yang dikompilasi secara asli tidak dapat dipanggil dari transaksi yang memiliki titik penyimpanan aktif. Hapus titik penyimpanan dari transaksi.
Operasi ALTER AUTHORIZATION Mengubah pemilik tabel yang dioptimalkan memori yang ada atau prosedur tersimpan yang dikompilasi secara asli tidak didukung. Hilangkan dan buat ulang tabel atau prosedur untuk mengubah kepemilikan.
Operator OPENROWSET Operator ini tidak didukung. Hapus OPENROWSET dari prosedur tersimpan yang dikompilasi secara asli.
Operator OPENQUERY Operator ini tidak didukung. Hapus OPENQUERY dari prosedur tersimpan yang dikompilasi secara asli.
Operator Lihat OPENDATASOURCE Operator ini tidak didukung. Hapus OPENDATASOURCE dari prosedur tersimpan yang dikompilasi secara asli.
Operator OPENXML Operator ini tidak didukung. Hapus OPENXML dari prosedur tersimpan yang dikompilasi secara asli.
Operator CONTAINSTABLE Operator ini tidak didukung. Hapus CONTAINSTABLE dari prosedur tersimpan yang dikompilasi secara asli.
Operator FREETEXTTABLE Operator ini tidak didukung. Hapus FREETEXTTABLE dari prosedur tersimpan yang dikompilasi secara asli.
Fitur fungsi bernilai tabel Fungsi bernilai tabel tidak dapat dirujuk dari prosedur tersimpan yang dikompilasi secara asli. Salah satu solusi yang mungkin untuk pembatasan ini adalah menambahkan logika dalam fungsi bernilai tabel ke isi prosedur.
Operator CHANGETABLE Operator ini tidak didukung. Hapus CHANGETABLE dari prosedur tersimpan yang dikompilasi secara asli.
Operator GOTO Operator ini tidak didukung. Gunakan konstruksi prosedural lainnya seperti WHILE.
Operator OFFSET Operator ini tidak didukung. Hapus OFFSET dari prosedur tersimpan yang dikompilasi secara asli.
Operator PERPOTONGAN Operator ini tidak didukung. Hapus INTERSECT dari prosedur tersimpan yang dikompilasi secara asli. Dalam beberapa kasus, INNER JOIN dapat digunakan untuk mendapatkan hasil yang sama.
Operator KECUALI Operator ini tidak didukung. Hapus EXCEPT dari prosedur tersimpan yang dikompilasi secara asli.
Operator APPLY Berlaku untuk: SQL Server 2014 (12.x) dan SQL Server memulai SQL Server 2016 (13.x)
Operator ini tidak didukung. Hapus APPLY dari prosedur tersimpan yang dikompilasi secara asli.

Azure SQL Database dan SQL Server yang memulai SQL Server 2017 (14.x) mendukung operator APPLY dalam modul yang dikompilasi secara asli.
Operator PIVOT Operator ini tidak didukung. Hapus PIVOT dari prosedur tersimpan yang dikompilasi secara asli.
Operator UNPIVOT Operator ini tidak didukung. Hapus UNPIVOT dari prosedur tersimpan yang dikompilasi secara asli.
Operator BERISI Operator ini tidak didukung. Hapus CONTAINS dari prosedur tersimpan yang dikompilasi secara asli.
Operator TEKS BEBAS Operator ini tidak didukung. Hapus FREETEXT dari prosedur tersimpan yang dikompilasi secara asli.
Operator TSEQUAL Operator ini tidak didukung. Hapus TSEQUAL dari prosedur tersimpan yang dikompilasi secara asli.
Operator LIKE Operator ini tidak didukung. Hapus LIKE dari prosedur tersimpan yang dikompilasi secara asli.
Operator VALUE SELANJUTNYA UNTUK Urutan tidak dapat direferensikan di dalam prosedur tersimpan yang dikompilasi secara asli. Dapatkan nilai menggunakan Transact-SQL yang ditafsirkan, lalu teruskan ke prosedur tersimpan yang dikompilasi secara asli. Untuk informasi selengkapnya, lihat Menerapkan IDENTITY dalam Tabel yang Dioptimalkan Memori.
Atur opsi pilihan Opsi SET tidak dapat diubah di dalam prosedur tersimpan yang dikompilasi secara asli. Opsi tertentu dapat diatur dengan pernyataan BEGIN ATOMIC. Untuk informasi selengkapnya, lihat bagian tentang blok atom di Prosedur Tersimpan yang Dikompilasi Secara Asli.
Operand TABLESAMPLE Operator ini tidak didukung. Hapus TABLESAMPLE dari prosedur tersimpan yang dikompilasi secara asli.
Opsi KOMPILASI ULANG Prosedur tersimpan yang dikompilasi secara asli dikompilasi pada waktu pembuatan. Hapus RECOMPILE dari definisi prosedur.

Anda dapat menjalankan sp_recompile pada prosedur tersimpan yang dikompilasi secara asli, yang menyebabkannya kompilasi ulang pada eksekusi berikutnya.
Opsi ENKRIPSI Opsi ini tidak didukung. Hapus ENKRIPSI dari definisi prosedur.
Opsi UNTUK REPLIKASI Prosedur tersimpan yang dikompilasi secara asli tidak dapat dibuat untuk replikasi. Dihapus UNTUK REPLIKASI dari definisi prosedur.
Opsi UNTUK XML Opsi ini tidak didukung. Hapus FOR XML dari prosedur tersimpan yang dikompilasi secara asli.
Opsi UNTUK MENELUSURI Opsi ini tidak didukung. Hapus UNTUK TELUSURI dari prosedur tersimpan yang dikompilasi secara asli.
Petunjuk gabungan HASH, GABUNGKAN Prosedur tersimpan yang dikompilasi secara asli hanya mendukung gabungan perulangan berlapis. Gabungan hash dan penggabungan tidak didukung. Hapus petunjuk gabungan.
Petunjuk kueri Petunjuk kueri Petunjuk kueri ini tidak ada di dalam prosedur tersimpan yang dikompilasi secara asli. Untuk petunjuk kueri yang didukung, lihat Petunjuk Kueri (Transact-SQL).
Opsi PERCENT Opsi ini tidak didukung dengan klausa TOP . Hapus PERCENT dari kueri dalam prosedur tersimpan yang dikompilasi secara asli.
Opsi DENGAN IKATAN Berlaku untuk: SQL Server 2014 (12.x) dan SQL Server 2016 (13.x)
Opsi ini tidak didukung dengan klausa TOP . Hapus WITH TIES dari kueri dalam prosedur tersimpan yang dikompilasi secara asli.

Azure SQL Database dan SQL Server yang memulai SQL Server 2017 (14.x) mendukung TOP WITH TIES.
Fungsi agregat Fungsi agregat Tidak semua fungsi agregat didukung. Untuk informasi selengkapnya tentang fungsi agregat yang didukung dalam modul T-SQL yang dikompilasi secara asli, lihat Fitur yang Didukung untuk Modul T-SQL yang Dikompilasi Secara Asli.
Fungsi peringkat Fungsi peringkat Fungsi peringkat tidak didukung dalam prosedur tersimpan yang dikompilasi secara asli. Hapus dari definisi prosedur.
Fungsi Fungsi Fungsi ini tidak didukung. Untuk informasi selengkapnya tentang fungsi yang didukung dalam modul T-SQL yang dikompilasi secara asli, lihat Fitur yang Didukung untuk Modul T-SQL yang Dikompilasi Secara Asli.
Pernyataan Pernyataan Pernyataan ini tidak didukung. Untuk informasi selengkapnya tentang fungsi yang didukung dalam modul T-SQL yang dikompilasi secara asli, lihat Fitur yang Didukung untuk Modul T-SQL yang Dikompilasi Secara Asli.
Fitur MIN dan MAX digunakan dengan string biner dan karakter Fungsi agregat MIN dan MAX tidak dapat digunakan untuk nilai karakter dan string biner di dalam prosedur tersimpan yang dikompilasi secara asli.
Fitur KELOMPOKKAN MENURUT SEMUA ALL tidak dapat digunakan dengan klausul GROUP BY dalam prosedur tersimpan yang dikompilasi secara asli. Hapus SEMUA dari klausa GROUP BY.
Fitur KELOMPOKKAN MENURUT () Pengelompokan menurut daftar kosong tidak didukung. Hapus klausa GROUP BY, atau sertakan kolom dalam daftar pengelompokan.
Fitur ROLLUP ROLLUP tidak dapat digunakan dengan klausa GROUP BY dalam prosedur tersimpan yang dikompilasi secara asli. Hapus ROLLUP dari definisi prosedur.
Fitur CUBE CUBE tidak dapat digunakan dengan klausul GROUP BY dalam prosedur tersimpan yang dikompilasi secara asli. Hapus CUBE dari definisi prosedur.
Fitur GROUPING SETS GROUPING SETS tidak dapat digunakan dengan klausul GROUP BY dalam prosedur tersimpan yang dikompilasi secara asli. Hapus GROUPING SETS dari definisi prosedur.
Fitur MULAI TRANSAKSI, TRANSAKSI PENERAPAN, dan TRANSAKSI PEMBATALAN Gunakan blok ATOMIC untuk mengontrol transaksi dan penanganan kesalahan. Untuk informasi selengkapnya, lihat Blok Atomik.
Fitur Deklarasi variabel tabel sebaris. Variabel tabel harus mereferensikan jenis tabel yang dioptimalkan memori yang ditentukan secara eksplisit. Anda harus membuat jenis tabel yang dioptimalkan memori dan menggunakan jenis tersebut untuk deklarasi variabel, daripada menentukan jenis sebaris.
Fitur Tabel berbasis disk Tabel berbasis disk tidak dapat diakses dari prosedur tersimpan yang dikompilasi secara asli. Hapus referensi ke tabel berbasis disk dari prosedur tersimpan yang dikompilasi secara asli. Atau, migrasikan tabel berbasis disk ke memori yang dioptimalkan.
Fitur Tampilan Tampilan tidak dapat diakses dari prosedur tersimpan yang dikompilasi secara asli. Alih-alih tampilan, referensikan tabel dasar yang mendasar.
Fitur Fungsi Tabel bernilai Berlaku untuk: Azure SQL Database dan SQL Server memulai SQL Server 2016 (13.x)
Fungsi bernilai tabel multi-pernyataan tidak dapat diakses dari modul T-SQL yang dikompilasi secara asli. Fungsi bernilai tabel sebaris didukung, tetapi harus dibuat DENGAN NATIVE_COMPILATION.

Berlaku untuk: SQL Server 2014 (12.x)
Fungsi bernilai tabel tidak dapat dirujuk dari modul T-SQL yang dikompilasi secara asli.
Opsi CETAK Hapus referensi
Fitur DDL Tidak ada DDL yang didukung di dalam modul T-SQL yang dikompilasi secara asli.
Opsi XML STATISTIK Tidak didukung. Saat Anda menjalankan kueri, dengan XML STATISTIK diaktifkan, konten XML dikembalikan tanpa bagian untuk prosedur tersimpan yang dikompilasi secara asli.

Transaksi yang Mengakses Tabel yang Dioptimalkan Memori

Tabel berikut mencantumkan fitur dan kata kunci Transact-SQL yang dapat muncul dalam teks pesan kesalahan yang melibatkan transaksi yang mengakses tabel yang dioptimalkan memori, serta tindakan korektif untuk mengatasi kesalahan.

Jenis Nama Resolusi
Fitur titik simpan Membuat titik penyimpanan eksplisit dalam transaksi yang mengakses tabel yang dioptimalkan memori tidak didukung.
Fitur transaksi terikat Sesi terikat tidak dapat berpartisipasi dalam transaksi yang mengakses tabel yang dioptimalkan memori. Jangan mengikat sesi sebelum menjalankan prosedur.
Fitur DTC Transaksi yang mengakses tabel yang dioptimalkan memori tidak dapat didistribusikan transaksi.

Lihat Juga

Migrasi ke OLTP Dalam Memori