Panduan Referensi SQL

Konvensi

Bagian ini menjelaskan konvensi dokumentasi. Ada dua konvensi dasar:
    1. Konvensi format halaman menyediakan struktur untuk organisasi setiap halaman dalam dokumentasi.
    2. Konvensi sintaksis menyampaikan informasi spesifik tentang kata kunci dan klausa dalam pernyataan SQL yang dijelaskan dalam dokumen ini.

Konvensi Format Halaman

Setiap pernyataan SQL dalam bahasa manipulasi data, bahasa definisi data, dan bagian kontrol transaksi dari dokumentasi SQL PointBase menggunakan format halaman tertentu.
  • Setiap halaman pernyataan dimulai dengan kata kunci utama dari pernyataan, yang ditampilkan di bagian atas halaman; misalnya, PILIH.
  • Kata kunci pernyataan diikuti oleh sintaksis pernyataan. Sintaks pernyataan mengikuti konvensi yang dijelaskan dalam "Konvensi Sintaks," di bawah ini.
  • Segera setelah sintaks pernyataan adalah deskripsi singkat dari pernyataan keseluruhan.
  • Penjelasan terperinci kemudian dijelaskan untuk setiap kata kunci dan klausa dalam pernyataan. Beberapa klausa mungkin menyertakan penjelasan yang lebih rinci tentang sintaks mereka sendiri atau tautan ke dokumen lain yang menjelaskan klausa yang umum untuk lebih dari satu pernyataan SQL.

Konvensi Sintaks

Setiap pernyataan SQL menggunakan jenis kapitalisasi, pemformatan, dan tanda baca tertentu yang menjelaskan atribut berbagai bagian pernyataan.
  • Jika sebagian dari pernyataan SQL ditampilkan di UPPERCASE , kata-kata yang ditulis dengan huruf kapital adalah kata kunci, yang umumnya diperlukan dalam pernyataan atau klausa SQL. Kata kunci tidak peka huruf besar kecil, dan harus dieja persis seperti yang ditampilkan dalam dokumen ini.
  • Bagian dari pernyataan SQL yang ditampilkan dalam huruf kecil miring adalah nilai SQL. Nilai SQL yang digunakan dalam PointBase SQL dapat berupa konstanta, nama kolom, nilai yang terbentuk dari kombinasi nilai kolom dan konstanta, atau hasil dari fungsi apa pun yang mengembalikan nilai tunggal. Nilai untuk variabel dalam ekspresi kondisional peka huruf besar-kecil.
  • Klausa dalam pernyataan SQL yang menampilkan antara [ tanda kurung ] adalah opsional. Jika klausa opsional memiliki beberapa komponen atau kata kunci, mereka ditampilkan di dalam tanda kurung.
  • Kurung kurawal {} dalam pernyataan SQL menunjukkan bahwa satu atau lebih klausa digunakan bersama.
  • Elips adalah serangkaian periode (seperti "..."). Elips dalam pernyataan SQL memiliki arti yang sama dengan "dll."; mereka menunjukkan bahwa rangkaian kata kunci, klausa, atau variabel yang mendahului elips berlangsung tanpa batas.

Bahasa Definisi Data

Bagian berikut ini menguraikan sintaks untuk membuat dan mengelola objek data logis. Data Definition Language (DDL) sangat penting untuk membuat database. Gunakan pernyataan dan operasi DDL berikut untuk mulai membangun basis data PointBase Anda.

BUAT SKEMA


CREATE SCHEMA schema_name
[Nama pengguna OTORISASI]
[Skema-jalur-daftar PATH]
[COUNTRY country_code [LANGUAGE language_code]]

Pernyataan CREATE SCHEMA membuat skema dalam database PointBase.

Sintaksis
BUAT SKEMA
Kata kunci CREATE SCHEMA diperlukan sebagai kata pertama dalam pernyataan CREATE SCHEMA.
schema_name 1
Nama skema.
nama pengguna
Nama pemilik User_name harus ada di database atau kesalahan dimunculkan. Jika nama_pengguna tidak ditentukan maka nama_pengguna saat ini adalah pemilik skema.
schema_path_list
Ini menentukan daftar schema_name s untuk diakses ketika menyelesaikan <nama rutin> yang tidak memenuhi syarat. Dengan parameter ini, Anda dapat menetapkan jalur default yang akan tetap sebagai default hingga komit atau kembalikan terjadi. Setelah komit atau kembalikan, jalur akan kembali ke nilai current_path yang ada sebelum pernyataan CREATE SCHEMA. Ini berguna jika Anda ingin menjalankan prosedur tersimpan dalam transaksi, setelah Anda menjalankan pernyataan CREATE SCHEMA.
country_code 2
Menentukan kode negara. Kode negara default adalah Bahasa Inggris AS. Ketika opsi ini digunakan, data char disimpan sebagai Unicode. Jika opsi ini TIDAK digunakan, kolom char, varchar, dan CLOB menggunakan nilai US ASCII.
language_code
Menentukan kode bahasa. Kode bahasa default adalah bahasa Inggris AS. Ketika opsi ini digunakan, data char disimpan sebagai Unicode. Jika opsi ini TIDAK digunakan, kolom char, varchar, dan CLOB menggunakan nilai US ASCII.
1
PointBase merekomendasikan untuk menggunakan nama yang sama untuk schema_name dan user_name. Setelah Anda masuk, PointBase membuat objek baru dalam skema yang memiliki nama yang sama dengan nama pengguna Anda. Jika tidak ada skema yang memiliki nama yang sama dengan nama_Anda, PointBase membuat objek baru dalam skema PUBLIC.

2
Silakan merujuk ke Kode Negara dan Bahasa dari Panduan Sistem PointBase untuk daftar kode negara dan bahasa yang valid.

Contohnya

MENCIPTAKAN PESANAN SKEMA
AUTHORISATION Orders_Mgr
PENJUALAN JALAN, MANUFAKTUR
NEGARA FR
FR BAHASA FR;

BUAT TABEL

CREATE TABLE table_name
column_definition | table_constraint_definition
[{, column_definition | table_constraint_definition } ...])
[TABLE PageSize ukuran , LOB PageSize ukuran ]
[COUNTRY country_code [LANGUAGE language_code ]]
Pernyataan CREATE TABLE membuat struktur tabel untuk database PointBase. Pernyataan CREATE TABLE memungkinkan Anda untuk mendefinisikan tabel berdasarkan nama, untuk menentukan kolom, nilai default, kunci, dan batasan pada tabel.

Sintaksis

BUAT TABEL
Kata kunci CREATE TABLE diperlukan sebagai kata pertama dalam pernyataan CREATE TABLE.
table_name
The table_name adalah nama dari struktur tabel. Nama tabel tidak boleh sama dengan kata kunci PointBase. Nama tabel dalam basis data PointBase tidak peka huruf besar-kecil dan dapat mencapai 128 karakter.
kolom_definisi
The column_definition berisi semua informasi yang diperlukan untuk mendefinisikan kolom yang merupakan bagian dari sebuah tabel. Lihat halaman berikut untuk bagian sintaks kolom_definisi .
table_constraint_definition
The table_constraint_definition memungkinkan Anda untuk menentukan kendala yang berlaku untuk meja. Biasanya jenis kendala ini digunakan ketika Anda menentukan beberapa kolom untuk semua jenis kendala. Lihat halaman berikut untuk bagian pada table_constraint_definitions .
Ukuran MEJA PAGESIZE
Gunakan kata kunci TABLE PAGESIZE setelah semua definisi kolom dan definisi batasan tabel untuk menentukan ukuran halaman dari tabel. Jika spesifikasi ini dihilangkan, tabel menggunakan ukuran halaman default sebagaimana diatur dalam file properti database ( pointbase.ini ). Tabel pagesize mengidentifikasi jumlah digit, KB, atau MB yang disediakan untuk indeks. Ukuran dapat menjadi salah satu dari yang berikut:
  • angka, seperti 1024
  • KiloBytes, seperti 1K
  • MegaBytes, seperti 1M
Ukuran LOB PAGESIZE
Gunakan kata kunci LOB PAGESIZE setelah semua definisi kolom dan definisi batasan tabel untuk menentukan ukuran halaman kolom BLOB dan CLOB. Jika spesifikasi ini dihilangkan, LOB menggunakan ukuran halaman default. Jika tabel dan LOB pageizes ditentukan, tabel atau LOB pagesize dapat ditentukan sebelum yang lain. LOB PAGESIZE mengidentifikasi jumlah digit, KB, atau MB yang disediakan untuk indeks CLOB atau BLOB. Ukuran bisa:
  • angka, seperti 1024
  • KiloBytes, seperti 1K
  • MegaBytes, seperti 1M
Ini diperlukan hanya jika satu atau lebih kolom dalam tabel berisi karakter LOB. Anda harus menentukan ini hanya sekali, bahkan jika tabel memiliki beberapa kolom LOB. Semua LOB akan menggunakan halaman dengan ukuran ini untuk menyimpan LOB, kecuali LOB cocok dengan halaman data.
Jika spesifikasi ini dihilangkan, halaman LOB menggunakan ukuran halaman default.
COUNTRY country_code
Menentukan kode negara. Kode negara default adalah Bahasa Inggris AS 1 . Ketika opsi ini digunakan, data char disimpan sebagai Unicode. Jika opsi ini TIDAK digunakan, kolom char, varchar, dan CLOB menggunakan nilai US ASCII.
Kode bahasa LANGUAGE
Menentukan kode bahasa. Kode bahasa default adalah bahasa Inggris AS. Ketika opsi ini digunakan, data char disimpan sebagai Unicode. Jika opsi ini TIDAK digunakan, kolom char, varchar, dan CLOB menggunakan nilai US ASCII.
1
Silakan merujuk ke Kode Negara dan Bahasa dari Panduan Sistem PointBase untuk daftar kode negara dan bahasa yang valid
Tabel memiliki properti lokal tertentu jika item berikut dipenuhi:
  • kode negara atau kode bahasa secara eksplisit ditentukan dalam pernyataan CREATE TABLE.
  • kode negara atau kode bahasa secara eksplisit ditentukan dalam pernyataan CREATE SCHEMA.
  • pengaturan bahasa dan negara ditentukan dalam file pointbase.ini .

Sintaks Column_Definition

olumn_name data_type [ default_clause ] [ column_constraint ]
nama kolom
The nama_kolom adalah nama dari struktur kolom dalam tabel yang dibuat dengan pernyataan CREATE TABLE. Nama kolom harus terdiri dari karakter alfanumerik atau setara dalam bahasa lain, misalnya, kata dalam karakter Jepang dan tidak boleh sama dengan kata kunci PointBase. Nama kolom harus unik di dalam tabel yang berisi itu. Nama kolom dalam database PointBase tidak peka huruf besar-kecil dan panjangnya bisa mencapai 128 karakter.
tipe data
Tipe data menjelaskan tipe data yang dapat disimpan dalam kolom.
default_clause
The default_clause memungkinkan seseorang untuk menentukan nilai default untuk kolom tertentu. Nilai-nilai default yang mungkin dan contohnya adalah:
  • string karakter literal: `abc '
  • literal angka: 123
  • datetime literal: time `22:45:21 '
  • string biner literal: X'104dc2 '
  • boolean literal: TRUE
  • Nilai NULL
  • fungsi nilai datetime: CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP
  • register khusus
  • SQL rutin
Nilai default dapat digunakan dengan pernyataan SQL Insert and Update. Tentukan DEFAULT atau DEFAULT VALUES atau tentukan tidak ada sama sekali dan nilai default dimasukkan.
kendala_kolom
The column_constraint adalah satu atau lebih kata kunci yang membatasi data yang dapat ditulis ke kolom tertentu. Database PointBase saat ini mendukung batasan kolom berikut. Semua batasan kolom adalah opsional.
  • BUKAN NULL
  • KUNCI UTAMA
  • UNIK
  • KUNCI ASING
  • MEMERIKSA

BUKAN NULL
Kata kunci NOT NULL opsional menunjukkan bahwa kolom tertentu harus memiliki nilai non-NULL yang terkait dengannya. Jika seseorang melakukan tindakan apa pun ke tabel yang menghasilkan kolom BUKAN NULL yang memiliki nilai NULL, basis data PointBase mengembalikan kesalahan runtime. Sintaks untuk batasan kolom NOT NULL adalah:
BUKAN NULL
KUNCI UTAMA
Kata kunci PRIMARY KEY opsional membuat indeks untuk sebuah kolom. Sintaks untuk batasan kolom PRIMARY KEY adalah:
KUNCI UTAMA

Batasan kolom PRIMARY KEY hanya dapat menentukan satu kolom. Untuk menentukan batasan PRIMARY KEY dengan beberapa kolom, gunakan table_constraint .
UNIK
Batasan UNIQUE opsional mendefinisikan kunci unik pada kolom. Semua nilai untuk kolom ini harus unik.
Sintaks untuk batasan kolom UNIK adalah:
UNIK

Batasan kolom UNIQUE hanya dapat menentukan satu kolom. Untuk menentukan batasan UNIQUE dengan beberapa kolom, gunakan table_constraint .
KUNCI ASING
Kata kunci FOREIGN KEY opsional menunjukkan bahwa ada hubungan antara nilai kolom dari tabel ini (dikenal sebagai tabel anak) dan kunci utama dari tabel induk yang dirujuk dalam klausa REFERENSI. Sintaks untuk batasan FOREIGN KEY adalah:
KUNCI ASING
REFERENSI table_name ( nama_kolom )
[HAPUS HAPUS {NO ACTION | RESTRICT | CASCADE | SET DEFAULT | SET NULL}]
[PADA PEMBARUAN {NO AKSI | RESTRICT | CASCADE | SET DEFAULT | SET NULL}]

Klausa ON DELETE mendefinisikan aturan untuk menghapus kolom tertentu pada tabel yang ditentukan. Untuk melakukan ini, tentukan:
TANPA TINDAKAN, CASCADE, RESTRICT, SET DEFAULT, atau SET NULL.
Anda harus menentukan setidaknya satu pengidentifikasi. NO ACTION menghapus klausa ON DELETE. RESTRICT terlihat untuk melihat objek apa yang bergantung pada objek yang dijatuhkan dan jika ada objek dependen, maka menjatuhkan objek tidak terjadi. CASCADE memiliki efek menjatuhkan semua objek SQL yang bergantung pada objek itu. SET DEFAULT memberikan nilai default ke semua komponen kolom target. SET NULL memberikan nilai nol ke semua komponen kolom target.
Klausa ON UPDATE menentukan aturan untuk memperbarui kolom tertentu pada tabel yang ditentukan. Untuk melakukan ini, tentukan:
TANPA TINDAKAN, PEMBATASAN, CASCADE, SET DEFAULT, atau SET NULL.
Jika klausa ON DELETE atau ON UPATE dihilangkan, standarnya adalah TANPA TINDAKAN.
REFERENSI KUNCI ASING adalah kata kunci yang diperlukan, nama_kabel adalah nama tabel yang sudah ada dalam database PointBase, dan nama_k kolom adalah nama-nama kolom yang menentukan kunci utama dari tabel yang direferensikan.
Kolom ini dan kolom dalam tabel yang direferensikan harus memiliki tipe data yang persis sama. Tabel yang direferensikan harus memiliki indeks unik atau utama pada kolom yang ditentukan.
Hubungan kunci asing berarti bahwa nilai apa pun yang ditulis ke kolom dengan pernyataan INSERT atau UPDATE harus sudah ada sebagai nilai di kunci utama tabel dan kolom yang direferensikan.
MEMERIKSA
PERIKSA kata kunci opsional menunjukkan bahwa nilai kolom yang akan dimasukkan atau diperbarui harus memenuhi kriteria kendala pemeriksaan. Sintaks untuk kendala PERIKSA adalah:
PERIKSA (search_condition)

di mana kondisi search_condition mengikuti aturan kondisi pencarian.
Kolom_ Kendala

Table_Constraint_Definition

The table_constraint_definition memungkinkan Anda untuk menentukan kendala yang berlaku untuk meja. Biasanya jenis kendala ini digunakan ketika Anda menentukan beberapa kolom untuk semua jenis kendala. Hanya ada satu kolom_kekangan per kolom. The table_constraint_definition menggunakan sintaks dari:
[CONSTRAINT constraint_name ]
{unique_constraint | referential_constraint | check_constraint}
constraint_name
Nama yang disediakan untuk mengidentifikasi kendala. Setiap constraint_name harus unik untuk tabel. The constraint_name adalah opsional, tetapi jika dua kendala memiliki definisi yang sama, maka mereka masing-masing akan membutuhkan nama untuk keunikan.
batasan_unik
The unique_constraint mendefinisikan kunci primer secara eksplisit bernama atau kendala yang unik dari satu atau lebih kolom.
Sintaks untuk unique_constraint adalah:
{UNIK | KUNCI UTAMA} (nama_kunci [{, nama_kunci} ...])
referential_constraint
The referential_constraint mendefinisikan secara eksplisit bernama kunci asing kendala dari satu atau lebih kolom.
Sintaks untuk referential_constraint adalah:
KUNCI ASING (column_name [{, column_name} ...])
REFERENSI table_name [{column_name, column_name, ...}]
[HAPUS HAPUS {NO ACTION | CASCADE | RESTRICT | SET DEFAULT | SET NULL}]
[PADA PEMBARUAN {NO AKSI | CASCADE | RESTRICT | SET DEFAULT | SET NULL}]
[INDEX PAGESIZE <size>]
Kunci asing diberikan dan kunci kandidat yang cocok nya harus berisi jumlah kolom yang sama, N , seperti: I th kolom berkorespondensi kunci asing ke I kolom th kunci pencocokan ( I = 1 sampai N ), dan sesuai kolom harus memiliki tipe data yang persis sama.
Tabel yang direferensikan harus memiliki indeks unik atau utama pada kolom yang ditentukan. Tidak diizinkan pada tampilan . PointBase memunculkan kesalahan jika Anda mencoba ini pada tampilan.
Jika nama kolom untuk tabel yang direferensikan dihilangkan, itu default ke kolom di kunci utama dari tabel yang direferensikan.
HAPUS HAPUS
Klausa ON DELETE mendefinisikan aturan perilaku ketika upaya dilakukan untuk menghapus baris di tabel induk yang memiliki baris terkait di tabel referensi yang bergantung pada baris di tabel induk. Ketergantungan didasarkan pada kolom KUNCI ASING di tabel induk dan kolom yang sesuai di tabel referensi. Tujuan pasal ini adalah untuk menghindari referensi yang menggantung.
Jika aturan perilaku CASCADE, maka semua baris bergantung atau cocok di tabel referensi dihapus ketika baris dalam tabel induk dihapus.
Jika aturan perilaku adalah TANPA TINDAKAN, maka jika upaya dilakukan untuk menghapus baris di tabel induk yang memiliki baris dependen di tabel referensi, baris di tabel induk tidak akan dihapus.
Jika aturan perilaku RESTRICT, maka jika upaya dilakukan untuk menghapus baris di tabel induk yang memiliki baris dependen di tabel referensi, baris di tabel induk tidak akan dihapus. Database memeriksa sebelum mencoba menghapus baris di tabel induk.
Jika aturan perilaku adalah SET DEFAULT, maka kolom dari baris dalam tabel referensi diatur ke nilai default untuk masing-masing kolom ketika baris dalam tabel induk dihapus. Setiap kolom dari tabel referensi yang sesuai dengan KUNCI ASING di tabel induk harus memiliki nilai default atau pengecualian akan dimunculkan.
Jika aturan perilaku adalah SET NULL, maka kolom dari baris dalam tabel referensi diatur ke nilai SQL NULL untuk masing-masing kolom ketika baris dalam tabel induk dihapus. Setiap kolom dari tabel referensi yang sesuai dengan Kunci Asing di tabel induk harus memungkinkan nilai SQL NULL atau pengecualian akan dimunculkan.
PADA PEMBARUAN
Klausa ON UPDATE mendefinisikan aturan perilaku ketika upaya dilakukan untuk memperbarui kolom ASING KUNCI dalam tabel induk yang memiliki baris yang sesuai dalam tabel referensi yang tergantung pada nilai-nilai kolom ASING KUNCI pada induknya meja.
Jika aturan perilaku CASCADE, maka semua kolom baris bergantung atau cocok di tabel referensi diperbarui dengan nilai-nilai baru di kolom KUNCI ASING dari baris tabel induk.
Jika aturan perilaku adalah TANPA TINDAKAN, maka jika upaya dilakukan untuk memperbarui kolom ASING KUNCI dalam tabel induk dan ada kolom baris di tabel referensi yang bergantung pada nilai pra-diperbarui, maka pembaruan Kolom KUNCI ASING di tabel induk tidak terjadi.
Jika aturan perilaku adalah RESTRICT, maka jika upaya dilakukan untuk memperbarui kolom ASING KUNCI dalam tabel induk dan ada kolom baris di tabel referensi yang bergantung pada nilai pra-diperbarui, maka pembaruan FOREIGN Kolom KUNCI di tabel induk tidak terjadi. Database memeriksa sebelum mencoba memperbarui baris di tabel induk.
Jika aturan perilaku adalah SET DEFAULT, maka semua kolom baris bergantung atau cocok di tabel referensi diperbarui dengan nilai-nilai default dari tabel referensi. Setiap kolom
tabel referensi yang sesuai dengan KUNCI ASING pada tabel induk harus memiliki nilai default atau pengecualian akan dimunculkan.
Jika aturan perilaku adalah SET NULL, maka kolom dari baris dalam tabel referensi diatur ke nilai SQL NULL untuk masing-masing kolom ketika baris dalam tabel induk diperbarui. Setiap kolom dari tabel referensi yang sesuai dengan Kunci Asing di tabel induk harus memungkinkan nilai SQL NULL atau pengecualian akan dimunculkan.
check_constraint
The check_constraint mendefinisikan pemeriksaan kendala eksplisit bernama dari satu atau lebih kolom.
Sintaks untuk check_constraint adalah:
PERIKSA (search_condition column_name)
CATATAN: Membuat tabel dengan pernyataan CREATE TABLE membuat struktur tabel, tetapi tidak menambahkan data apa pun ke tabel. Sebuah INSERT pernyataan untuk tabel, atau LOAD melalui pernyataan IMPOR di PointBase Console, atau RUN di PointBase Komandan, harus mengikuti penciptaan meja.

Contoh 1

CREATE TABLE ORDER_TBL
(ORDER_NUM INT,
CUSTOMER_NUM INT,
REP_NUM INT,
PRODUCT_NUM INT,
SALES_TAX_ST_CD CHAR (2),
QUANTITY SMALLINT,
SHIPPING_COST DECIMAL (12,2),
SALES_DATE DATE,
DELIVERY_DATETIME TIMESTAMP,
FREIGHT_COMPANY VARCHAR (30))
NEGARA FR
FR BAHASA FR;

Contoh 2

Ini membuat tabel dengan ukuran halaman 5k:
CREATE TABLE TM5 (C1 INT PRIMARY KEY) MEJA PAGESIS 5K;
Ini membuat tabel dengan ukuran halaman default, tetapi batasan kunci utama menentukan ukuran halaman 2K untuk indeks:
CREATE TABLE TM (C1 INT BUKAN NULL, C2 CHAR (10),
KONSTRA KUNCI PRIMER PKCONSTRAINT (C1)
INDEX PAGESIZE 2K);
Dalam contoh ini, setiap indeks memiliki ukuran halaman yang berbeda:
CREATE TABLE TMF (C1 INT, C2 CHAR (10), C3 INT BUKAN NULL,
CONSTRAINT PK_TMF PRIMARY KEY (C3) INDEX PAGESIZE 5K
CONSTRAINT FK_TMF ASING KUNCI (C1) REFERENSI TM (C1) INDEX PAGESIZE 3K);
Dalam contoh ini, semua LOB dalam tabel memiliki pageize dan LOB secara otomatis membuat file pageize 5K untuk indeks LOB:
CREATE TABLE TMBLOB (C1 INT BUKAN NULL, C2 BLOB (10K), C3 BLOB (5K))
LOB PAGESIZE 5K;
BUAT INDEKS TMIX PADA TMBLOB (C1) INDEKS PAGESIS 6K;

BUAT LIHAT

BUAT LIHAT <nama tampilan> [( view_column_list )]
SEBAGAI query_expression
[DENGAN [ levels_clause ] PERIKSA OPSI]
Pernyataan CREATE VIEW membuat tampilan atau tabel yang diturunkan dalam database PointBase.

Catatan

  • Untuk membuat tampilan, Anda harus memiliki skema, di mana Anda membuat tampilan.
  • Anda harus memiliki izin SELECT pada semua kolom yang direferensikan dari semua tabel yang direferensikan dalam ekspresi kueri.
  • Anda dapat memiliki "tampilan bersarang," yang merupakan tampilan yang merujuk pada tampilan lain.
  • Untuk memberikan hak istimewa pada tampilan, Anda harus memiliki hak lisensi SELECT pada tabel atau kolom yang direferensikan dalam tampilan itu.

Sintaksis


BUAT LIHAT

Kata kunci CREATE VIEW diperlukan sebagai kata pertama dalam pernyataan CREATE VIEW

view_name

Nama tampilan. Namanya tidak sensitif huruf dan panjangnya dapat mencapai 128 karakter.

view_column_list

Tentukan daftar kolom tampilan jika ekspresi kueri menyertakan dua kolom dengan nama yang sama. Daftar kolom tampilan dan ekspresi kueri harus menentukan jumlah nama kolom yang sama. Jika tidak ada daftar kolom tampilan yang ditentukan, maka nama kolom tampilan berasal dari ekspresi kueri (pilih daftar kolom).

query_expression

Ini adalah pernyataan SELECT. Jika ekspresi kueri tidak termasuk kolom, itu harus memiliki nama korelasi klausa AS yang ditentukan. Jika termasuk kolom, nama kolom tampilan adalah nama kolom tanpa nama korelasi tabel. Ekspresi kueri tidak diizinkan mengandung parameter apa pun dan dibatasi hingga 3958 karakter.

DENGAN OPSI PERIKSA

Opsi ini menggunakan klausa WHERE dalam tampilan query_expression seperti batasan tabel: semua baris yang dihasilkan dari INSERT atau UPDATE pada tampilan harus memenuhi klausa WHERE. Jika tidak ada levels_clause ditentukan, CASCADED adalah implisit.



Namun, PointBase currenlty tidak mendukung Tampilan yang Dapat Diupdate. Artinya, PointBase mendukung sintaks untuk DENGAN PERIKSA OPSI, tetapi saat ini bukan semantik.

levels_clause

CASCADED menunjukkan bahwa semua baris yang dihasilkan dari INSERT atau UPDATE pada tampilan harus memenuhi klausa WHERE sendiri dan klausa WHERE dari setiap pandangan yang dirujuk.



LOCAL menunjukkan bahwa semua baris yang dihasilkan dari INSERT atau UPDATE pada tampilan hanya harus memenuhi klausa WHERE sendiri.



Jika tidak ada levels_clause ditentukan, CASCADED adalah implisit.

Contohnya

CREATE VIEW customer_order
SAYA pilih order_num, order_tbl.customer_num, customer_tbl.name
DARI order_tbl, customer_tbl
WHERE product_num = 10;

BUAT LIHAT pelanggan_order1
SAYA pilih order_num, order_tbl.customer_num
DARI order_tbl, customer_tbl
WHERE order_tbl.customer_num = customer_tbl.customer_num;

BUAT LIHAT pelanggan_order2
SAYA pilih order_num, order_tbl.customer_num
DARI order_tbl, customer_tbl
WHERE order_tbl.customer_num = customer_tbl.customer_num dan product_num = 10;

BUAT VIER namereps
SEBAGAI pilih first_name, last_name
DARI sales_rep_tbl
WHERE last_yr_sales in (4000,6000,10000);

CREATE VIEW orde_by_rep (siapa, berapa_banyak, total, rendah, tinggi, rata-rata)
SEBAGAI pilih rep_num, hitung (*), jumlah (jumlah), min (jumlah), maks (jumlah), rata-rata (kuantitas)
DARI grup order_tbl oleh rep_num;

BUAT LIHAT pelanggan_order3
SAYA pilih order_num, first_name
DARI customer_order, namereps;
BUAT TAMPILAN excess_quota
SEBAGAI pilih office_num, jumlah (kuota) sebagai sum_quota, jumlah (ytd_sales) sebagai sum_ytd
DARI sales_rep_tbl
KELOMPOK OLEH office_num
HAVING sum (ytd_sales)> sum (kuota);

ALTER TABEL

ALTER TABLE table_name alter_table_action [{, alter_table_action}, ...]
Pernyataan ALTER TABLE memodifikasi struktur tabel dalam database PointBase. Dengan pernyataan ini, batasan atau kolom dapat ditambahkan atau dihapus.

Sintaksis
ALTER TABEL
Kata kunci ALTER TABLE diperlukan sebagai kata pertama dalam pernyataan ALTER TABLE.
table_name
The table_name variabel harus nama dari tabel yang ada dalam database PointBase. Pernyataan ALTER TABLE menghasilkan kesalahan jika nilai table_name tidak ada.
alter_table_action
Tindakan ini memungkinkan menambah atau menjatuhkan batasan atau kolom. Lihat bagian berikut untuk sintaks alter_table_action .

Sintaks Alter_Table_Action

TAMBAHKAN [CONSTRAINT constraint_name ] table_constraint_definition
DROP CONSTRAINT constraint_name [CASCADE | MEMBATASI]
TAMBAHKAN [KOLOM] kolom_definisi
DROP [COLUMN] column_name [CASCADE | RESTRICT ]
TAMBAHKAN [CONSTRAINT constraint_name ] table_constraint_definition
Menambahkan definisi batasan tabel ke tabel. Tidak diizinkan pada tampilan. PointBase memunculkan kesalahan jika Anda mencoba ini pada tampilan. Jika kendala adalah kendala referensial yang mereferensikan tampilan, kesalahan akan dimunculkan.
DROP CONSTRAINT constraint_name
Menjatuhkan batasan bernama yang ada dari tabel. Sistem secara otomatis memberikan nama untuk kendala jika tidak ada yang ditentukan ketika ditambahkan. Nama kendala dapat ditemukan dalam tabel SysTableConstraint.
TAMBAHKAN [KOLOM] kolom_definisi
Menambahkan kolom ke akhir definisi kolom untuk tabel. Nilai default adalah NULL, kecuali dinyatakan TIDAK NULL dengan nilai default yang ditetapkan. Ini hanya akan memengaruhi kolom yang Anda buat setelah nilai default ditetapkan.
Tidak diizinkan pada tampilan. PointBase memunculkan kesalahan jika Anda mencoba ini pada tampilan.
DROP [COLUMN] nama_kolom
Drops satu atau beberapa kolom bernama yang ada dari tabel. Tidak diizinkan pada tampilan. PointBase memunculkan kesalahan jika Anda mencoba ini pada tampilan. Jika table_name + column_name ada di katalog sistem, SysViewTables, maka salah satu kesalahan akan dinaikkan (jika RESTRICT) atau semua tampilan dependen akan dihapus (jika CASCADE).
[CASCADE / RESTRICT]
Kualifikasi RESTRICT opsional untuk pernyataan DROP memungkinkan drop hanya jika tidak ada objek yang bergantung pada kolom atau kendala.
Kualifikasi CASCADE opsional untuk pernyataan DROP menjatuhkan semua objek terkait ke kolom atau batasan.

Contohnya

ALTER TABLE T2 ADD UNIK (C1);
ALTER TABLE T2 ADD ORDER_NUM INT;
ALTER TABLE T2 TAMBAHKAN CONSTRAINT constraint_0 KUNCI LUAR NEGERI (C1) REFERENSI T1 (C1);
ALTER TABLE T2 ADD CONSTRAINT constraint_1 KUNCI UTAMA (C1, C2);
ALTER TABLE T2 DROP ORDER_NUM CASCADE;

BUAT PENGGUNA

CREATE USER user_name PASSWOR D kata sandi
Pernyataan CREATE USER membuat pengguna dalam basis data PointBase yang diberikan.

Sintaksis
BUAT PENGGUNA
Kata kunci CREATE USER diperlukan sebagai kata pertama dalam pernyataan CREATE USER.
nama pengguna
Apakah nama pengguna yang akan ditambahkan.
kata sandi
Apakah kata sandi dikaitkan dengan pengguna.

Contohnya

BUAT ENGINEERING_MGR PASSWORD PENGGUNA `abcd ';

BUAT INDEKS

BUAT [UNIK] INDEX index_name
ON 
table_name column_name [sort_order] {, column_name [ sort_order ] ...})
Ukuran INDEX PAGESIZE ]
Pernyataan CREATE INDEX membuat struktur indeks.

Sintaksis

BUAT INDEKS
Kata kunci CREATE INDEX diperlukan sebagai kata pertama dalam pernyataan CREATE INDEX.
[UNIK]
Jika kata kunci UNIQUE ditentukan, maka indeks akan didefinisikan sebagai indeks unik di mana nilai duplikat kunci tidak diperbolehkan.
index_name
The nama_index adalah nama dari indeks. Tulis nama indeks karakter alfanumerik atau yang setara dalam bahasa lain, misalnya, kata dalam karakter Jepang, yang tidak sama dengan kata kunci PointBase, kecuali jika namanya adalah pengidentifikasi terbatas. Nama indeks harus unik untuk tabelnya. Nama indeks dalam database PointBase tidak peka huruf besar-kecil dan panjangnya bisa mencapai 128 karakter.
DI
Gunakan kata kunci ON antara index_name dan table_name .
table_name
The table_name mengacu pada tabel dalam database PointBase. The table_name harus merujuk ke tabel yang telah dibuat pada saat pernyataan CREATE INDEX dijalankan.
Tidak diizinkan pada tampilan. PointBase memunculkan kesalahan jika Anda mencoba menggunakan tampilan.
nama kolom
The column_name mengidentifikasi kolom dalam tabel disebutkan dalam table_name dari pernyataan CREATE TABLE. Bisa ada sejumlah kolom. Kolom yang tipe datanya adalah BLOB atau CLOB dan panjang tipe data yang cocok pada satu halaman dapat digunakan sebagai indeks.
[sortir]
Klausa opsional ini menentukan urutan penyortiran kolom atau kolom dalam indeks. Nilai yang dapat diterima untuk kata kunci pemesanan adalah ASC atau ASCENDING untuk kolom yang mengurutkan dari nilai terendah ke nilai tertinggi di kolom, dan DESC atau DESCENDING untuk kolom yang mengurutkan dari nilai tertinggi ke nilai terendah di kolom. Setiap nama kolom hanya dapat memiliki satu kata kunci pemesanan. Jika Anda tidak memasukkan kata kunci pemesanan, urutannya adalah ASCENDING.
PAGESIZE INDEKS
Gunakan kata kunci INDEX PAGESIZE antara sort_order dan ukuran .
ukuran
Ukuran indeks mengidentifikasi jumlah digit, KB, atau MB yang disediakan untuk indeks. Ukuran bisa:
  • angka, seperti 1024
  • KiloBytes, seperti 1K
Ukuran halaman indeks harus kurang dari atau sama dengan 32KB dan minimal 1 KB. Ukuran halaman default adalah 4KB kecuali ukuran tertentu telah ditetapkan dalam file pointbase.ini .

Contoh 1

Ini menciptakan indeks:
CREATE INDEX ORDER_IND
ON ORDER_TBL (ORDER_NUM DESC, CUSTOMER_NUM ASC);

Contoh2

Ini menciptakan indeks dengan ukuran halaman 2K:
BUAT INDEKS UNIK UNIK1
  PADA SALES_TBL
 (CUSTOMER_NUM, SALES_DATE, PRODUCT_NUM)
INDEX PAGESIZE 2K;

BUAT FUNGSI

CREATE FUNCTION function_name ([parameter_definition [{, parameter_definition} ...]])
RETURNS return_clause
JAVA BAHASA
Nama_ spesifik
sql_data_access
EKSTERNAL NAMA external_function
GAYA PARAMETER SQL
Menggunakan fungsi tersimpan, Anda dapat secara otomatis mengonversi data untuk disimpan dalam database PointBase, tanpa pernah melihat konversi yang mendasarinya.

Sintaksis

Function_name
Function_name mendefinisikan fungsi yang disimpan dalam suatu skema. Berikut ini adalah aturan penggunaan.
  • Termasuk nama skema adalah opsional. Sintaks berikut untuk function_name :
[schema_name.] function_name
  • Itu harus terdiri dari karakter alfanumerik atau setara dalam bahasa lain, misalnya, karakter Jepang.
  • Panjangnya maksimum 128 karakter.
  • Tidak peka huruf besar-kecil.
  • Itu tidak dapat memiliki nama yang sama dengan kata kunci PointBase.
  • Itu harus unik dalam skema yang ditentukan.
Parameter_definition
The parameter_definition menentukan parameter_mode, parameter_name, dan parameter_data_type . Parameter_name adalah opsional.) Parameter_mode harus berupa nilai, IN. The parameter_data_type harus menjadi salah satu tipe data PointBase. Pisahkan beberapa parameter_definisi dengan koma. Sintaks berikut adalah untuk parameter_definitions.
DALAM [ parameter_name ] PointBase_data_type
RETURNS return_clause
Klausa ini menentukan tipe data balik dalam fungsi yang disimpan. The data_type harus menjadi salah satu tipe data PointBase.
The return_clause memungkinkan nilai berikut: <PointBase tipe data> atau TABLE ( pointbase_data_type [{, pointbase_data_type } ...])
CATATAN: RETURNS return_clause digunakan hanya dengan fungsi yang tersimpan. Prosedur tersimpan tidak menggunakannya.
JAVA BAHASA
Klausa menentukan bahasa yang digunakan fungsi tersimpan untuk memanggil fungsi eksternal. Ini dapat mengambil nilai berikut: JAVA.
Nama_ spesifik
Klausa SPECIFICIVE specific_name menentukan nama yang dapat Anda gunakan alih-alih function_name saat menjalankan fungsi yang disimpan. The specific_name harus unik dalam skema nya. Jika nama_spesifik ditentukan, maka penentuan rutin tidak digunakan. Penentuan rutin adalah proses yang menentukan fungsi yang akan dipanggil berdasarkan function_name , daftar argumen SQL, dan jalur skema saat ini. Lihat bab Kondisi Pencarian dan Predikat untuk informasi lebih lanjut tentang penentuan rutin.
Sql_data_access

Klausa ini menunjukkan penggunaan pernyataan SQL dalam fungsi eksternal dari fungsi yang disimpan. Tabel 1 menjelaskan nilai-nilai yang diizinkan oleh sql_data_access.
Fungsi eksternal NAMA EKSTERNAL
NAMA EKSTERNAL menentukan fungsi eksternal.
GAYA PARAMETER SQL
Klausa ini mewakili parameter yang diteruskan sesuai dengan aturan SQL daripada bahasa host.

Tabel 1: Nilai Sql_data_access

Nilai

Deskripsi

TANPA SQL

Ini menandakan bahwa fungsi eksternal tidak dapat berisi pernyataan SQL apa pun.

MENGANDUNG SQL

Ini menentukan bahwa fungsi eksternal dapat berisi pernyataan SQL tetapi tidak ada yang membaca atau memodifikasi data.

BACA DATA SQL

Ini menentukan bahwa fungsi eksternal dapat berisi pernyataan SQL apa pun yang tidak mengubah data SQL.

MODIFIKASI DATA SQL

Ini menentukan bahwa fungsi eksternal dapat berisi pernyataan SQL apa pun yang bukan pernyataan DDL atau Kontrol Transaksi

Contoh

MENCIPTAKAN FUNGSI dateConvert (IN P1 VARCHAR (20))
RETURNS Date
LANGUAGE Java
TANPA SQL
NAMA EKSTERNAL \ "SampleExternalMethods :: dateConvert \"
GAYA PARAMETER SQL;
CATATAN: Lihat bab "PointBase JDBC Advanced Tutorial" di panduan ini untuk informasi lebih lanjut tentang fungsi di PointBase.

BUAT PROSEDUR

BUAT PROSEDUR procedure_name ([parameter_definition [{, parameter_definition} ...]])
JAVA BAHASA
Nama_ spesifik
sql_data_access
Prosedur Eksternal NAMA eksternal_proses
GAYA PARAMETER SQL
Menggunakan prosedur tersimpan Anda dapat mengembalikan data dari database ke antarmuka pengguna. Ketika sistem database mengembalikan data, itu secara otomatis dikonversi dari nilai asli menjadi nilai tipe data yang ditentukan pengguna.

Sintaksis

Prosedure_name
Procedure_name mendefinisikan prosedur tersimpan dalam suatu skema. Berikut ini adalah aturan penggunaan.
  • Termasuk nama skema adalah opsional. Sintaks berikut adalah untuk procedure_name :
[schema_name.] procedure_name
  • Itu harus terdiri dari karakter alfanumerik atau setara dalam bahasa lain, misalnya, karakter Jepang.
  • Panjangnya maksimum 128 karakter.
  • Tidak peka huruf besar-kecil.
  • Itu tidak dapat memiliki nama yang sama dengan kata kunci PointBase.
  • Itu harus unik dalam skema yang ditentukan.
Parameter_definition
The parameter_definition menentukan parameter_mode, parameter_name, dan parameter_data_type . Parameter_name adalah opsional.) Parameter_mode harus berupa nilai, IN. The parameter_data_type harus menjadi salah satu tipe data PointBase. Pisahkan beberapa parameter_definisi dengan koma. Sintaks berikut adalah untuk parameter_definitions.
DALAM [ parameter_name ] PointBase_data_type
JAVA BAHASA
Klausa menentukan bahasa yang digunakan prosedur tersimpan untuk memanggil prosedur eksternal. Ini dapat mengambil nilai berikut: JAVA.
Nama_ spesifik
Klausa SPECIFICIVE specific_name menentukan nama yang dapat Anda gunakan alih-alih procedure_name saat menjalankan prosedur tersimpan. The specific_name harus unik dalam skema nya. Jika nama_spesifik ditentukan, maka penentuan rutin tidak digunakan. Penentuan rutin adalah proses yang menentukan prosedur yang akan dipanggil berdasarkan pada procedure_name , daftar argumen SQL, dan jalur skema saat ini. Lihat bab Kondisi Pencarian dan Predikat untuk informasi lebih lanjut tentang penentuan rutin.
Sql_data_access
Klausa ini menunjukkan penggunaan pernyataan SQL dalam prosedur eksternal dari prosedur tersimpan. Tabel 2 menjelaskan nilai-nilai yang diizinkan oleh sql_data_access .
Prosedur eksternal NAMA EKSTERNAL
NAMA EKSTERNAL menentukan prosedur eksternal.
GAYA PARAMETER SQL
Klausa ini mewakili parameter yang diteruskan sesuai dengan aturan SQL daripada bahasa host.
Tabel 2: Nilai Sql_data_access

Nilai

Deskripsi

TANPA SQL

Ini menandakan bahwa prosedur eksternal tidak dapat berisi pernyataan SQL apa pun.

MENGANDUNG SQL

Ini menentukan bahwa prosedur eksternal dapat berisi pernyataan SQL tetapi tidak ada yang membaca atau memodifikasi data.

BACA DATA SQL

Ini menentukan bahwa prosedur eksternal dapat berisi pernyataan SQL apa pun yang tidak mengubah data SQL.

MODIFIKASI DATA SQL

Ini menentukan bahwa prosedur eksternal dapat berisi pernyataan SQL apa pun yang bukan pernyataan DDL atau Kontrol Transaksi

Contoh

BUAT PROSEDUR getCost (IN P1 VARCHAR (20), IN P2 VARCHAR (2), INOUT P3 FLOAT)
JAVA BAHASA
GetCost KHUSUS
DETERMINISTIK
TANPA SQL
NAMA EKSTERNAL \ "SampleExternalMethods :: getCost \"
GAYA PARAMETER SQL;
CATATAN: Lihat bab "Tutorial Tingkat Lanjut PointBase JDBC" dalam panduan ini untuk informasi lebih lanjut tentang prosedur tersimpan di PointBase.

BUAT PEMICU

CREATE TRIGGER trigger_name
trigger_action_time triggering_event
ON table_name
[REFERENSI referencing_clause [{ referencing_clause } ...]]
UNTUK SETIAP granularitas
[KAPAN ( search_condition )]
trigger_body
Sebuah pemicu dapat menentukan kendala tambahan dan aturan bisnis dalam database untuk mengelola berbagai eksekusi dari aplikasi. Pemicu beroperasi secara otomatis dengan menjalankan atau mengaktifkan pernyataan SQL DELETE, INSERT, atau UPDATE pada tabel yang terkait dengan pemicunya. Definisi pemicu disimpan dalam katalog sistem SYSTRIGGERS dan SYSTRIGGERCOLUMNS.

Sintaksis

BUAT TRIGGER Trigger_Name
Kata kunci CREATE TRIGGER diperlukan saat membuat pemicu. Trigger_name mendefinisikan pemicu unik dalam suatu skema. Untuk menjatuhkan pemicu dari tabel, Anda harus menggunakan nama_name.
Aturan Penggunaan untuk Trigger_Names
  • Termasuk nama skema adalah opsional. Sintaks berikut adalah untuk trigger_name :
[schema_name.] trigger_name
  • Itu harus terdiri dari karakter alfanumerik atau setara dalam bahasa lain, misalnya, karakter Jepang.
  • Panjangnya maksimum 128 karakter.
  • Tidak peka huruf besar-kecil.
  • Itu tidak dapat memiliki nama yang sama dengan kata kunci PointBase.
  • Itu harus unik dalam skema yang ditentukan.
Trigger_Action_Time
Trigger_action_time menandakan kapan pemicu dapat dipecat atau dieksekusi relatif terhadap triggering_event . Dibutuhkan salah satu dari nilai berikut: SEBELUM atau SETELAH.
Jika Anda menentukan SEBELUM sebagai trigger_action_time , pernyataan SQL di trigger_body tidak dapat secara langsung atau tidak langsung mengubah data SQL dengan menggunakan fungsi atau prosedur yang tersimpan.
PointBase tidak mendukung cascading SEBELUM pemicu.
Triggering_Event
Triggering_event menentukan jenis pernyataan SQL apa yang menjalankan atau menjalankan pemicu. Itu bisa mengambil salah satu dari pernyataan SQL berikut: HAPUS, INSERT, atau PEMBARUAN.
Table_Name
Table_name menentukan nama tabel yang menjadi pemicu. Sebuah tabel diizinkan memiliki beberapa pemicu. Jika lebih dari satu pemicu dikaitkan dengan tabel, pemicu dieksekusi dalam urutan menaik dari cap waktu pembuatannya.
Tidak diizinkan pada tampilan. PointBase memunculkan kesalahan jika Anda mencoba ini pada tampilan.
REFERENSI Referencing_clause
Klausa ini mendefinisikan korelasi atau nama alias untuk nilai lama dan baru dari suatu baris. Anda bisa menggunakan korelasi atau nama alias di klausa WHEN ( search_condition ) atau dalam pernyataan SQL dari trigger_body . Berikut ini adalah sintaks referencing_clause untuk nilai lama suatu baris.
LAMA AS korelasi_name
Berikut ini adalah sintaks referencing_clause untuk nilai baris baru.
BARU AS relation_name
CATATAN: Lihat Tabel 3.
UNTUK SETIAP Granularitas
Klausa ini mendefinisikan rincian dari suatu pemicu. Granularity menentukan berapa kali pemicu akan dipecat untuk setiap pemicu_event . Granularity dapat mengambil nilai ROW atau STATEMENT.
  • STATEMENT menentukan trigger_body untuk dijalankan hanya sekali terlepas dari jumlah baris yang dimodifikasi (dihapus, dimasukkan, atau diperbarui) oleh pernyataan triggering_event .
  • ROW menentukan trigger_body untuk dieksekusi satu kali untuk setiap baris yang sedang dimodifikasi oleh pernyataan triggering_event .
Jika Anda tidak menentukan granularity, granularity default adalah PERNYATAAN.
WHEN (search_condition)
WHEN ( search_condition ) menentukan kondisi untuk menjalankan trigger_body atau tidak. Semua kondisi pencarian SQL yang didukung diizinkan dalam pasal ini. Nilai baris baru dapat dirujuk di bagian ini.
Trigger_body
Trigger_body menentukan pernyataan SQL yang dijalankan oleh trigger. Anda hanya bisa menggunakan satu pernyataan SQL di trigger_body . Jika granularity dari trigger adalah ROW atau STATEMENT, trigger_body hanya dapat mengambil nilai dari pernyataan SQL berikut.
  • NILAI
  • PANGGILAN (hanya konstanta yang dapat digunakan. Lihat catatan.)
  • SET penugasan (hanya untuk SEBELUM Pemicu. Lihat catatan.)
  • SINYAL
Namun, jika Anda menggunakan BEGIN ATOMIC ... END kata kunci, trigger_body dapat menggunakan pernyataan SQL yang berlaku. Hanya satu pernyataan yang dapat digunakan dalam BEGIN ATOMIC ... END kata kunci dan harus diakhiri dengan titik koma.
CATATAN: Nilai baris lama dan baru tidak didukung di trigger_body , kecuali saat menggunakan pernyataan penetapan SET. Lihat bagian "Manajemen Kontrol Data" pada lampiran ini untuk informasi lebih lanjut tentang pernyataan ini.
Tabel berikut menjelaskan kombinasi yang didukung dari nilai baris, trigger_action_time s, triggering_events , dan granularity , saat menggunakan REFERENCING referencing_clause .
Tabel 3

Nilai Baris

Trigger_action_time dan Triggering_event

Granularitas

TUA

SEBELUM HAPUS

SEBELUM PEMBARUAN

SETELAH HAPUS

SETELAH PEMBARUAN

BARIS

BARU

SEBELUM MASUK

SEBELUM PEMBARUAN

SETELAH MASUK

SETELAH PEMBARUAN

BARIS

Contohnya

Untuk menggunakan semua contoh pemicu berikut, Anda harus menyelesaikan yang berikut:
  • Sertakan file SampleExternalMethods.class di CLASSPATH Anda saat Anda terhubung ke PointBase.
  • Ikuti petunjuknya untuk membuat database baru yang disebut "sampel."
  • Ketik "jalankan sample.sql." Anda harus mengetik path lengkap ke file sample.sql yang terletak di direktori \ pointbase \ database, misalnya, "jalankan c: /pointbase/databases/sample.sql;" di baris perintah.
Contoh 1
BUAT pemicu TRIGGER2
SEBELUM PEMBARUAN PADA product_tbl
REFERENSI BARU SEBAGAI NEWROW
UNTUK SETIAP BARIS
WHEN (NEWROW.qty_on_hand <0)
SET NEWROW.qty_on_hand = 0;

BUAT pemicu TRIGGER3
SEBELUM PEMBARUAN PADA product_tbl
REFERENSI BARU SEBAGAI NEWROW
UNTUK SETIAP BARIS
WHEN (NEWROW.purchase_cost <0)
SIGNAL 'Harga produk tidak boleh negatif'

BUAT pemicu TRIGGER4
SETELAH PEMBARUAN PADA product_tbl
REFERENSI BARU SEBAGAI NEWROW
UNTUK SETIAP BARIS
WHEN (NEWROW.qty_on_hand> 100)
VALUES (showQuantity ('Anda telah meningkatkan kuantitas di atas', 100));

Contoh 2
Langkah 1.
CREATE PROCEDURE showTime (IN p1 VARCHAR (30), IN P2 TIMESTAMP)
JAVA BAHASA
TANPA SQL
NAMA EKSTERNAL "SampleExternalMethods :: showTime";
Langkah 2.
BUAT pemicu TRIGGER1
SETELAH INSERT ON discount_code_tbl
UNTUK SETIAP BARIS
CALL showTime ('Kode diskon baru dimasukkan', CURRENT_TIMESTAMP);
Admin Semoga Informasi Yang Diberikan Melalui Web Ini Dapat Bermanfaat Bagi Saudara/i

No comments for "Panduan Referensi SQL"