Tipe data dalam prosedur tersimpan mysql

Prosedur adalah subrutin [seperti subprogram] dalam bahasa scripting biasa, disimpan dalam database. Dalam kasus MySQL, prosedur ditulis dalam MySQL dan disimpan dalam database/server MySQL. Prosedur MySQL memiliki nama, daftar parameter, dan pernyataan SQL. Ada empat jenis prosedur MySQL. 1. Prosedur tanpa parameter. Sebuah prosedur tanpa parameter tidak mengambil input apapun atau mengeluarkan output secara tidak langsung. Itu hanya disebut dengan nama prosedurnya diikuti dengan [] [tanpa parameter apa pun]. Ini digunakan untuk pertanyaan sederhana. Contoh. Pertimbangkan dua tabel penulis dan buku

create table author [author_id integer primary key, 
                            authorName varchar[30], 
                            email varchar [25], gender varchar [6]];

create table book [BookId integer not null unique, 
                        ISBN integer primary key, 
                       book_name varchar [30] not null, 
                        author integer, ed_num integer, 
                      price integer, pages integer, 
         foreign key [author] references author [author_id] on delete cascade];

Memasukkan nilai ke dalamnya

insert into author values 
              [1, "Kraig Muller", "Wordnewton@gmail.com", "Male"];
insert into author values
              [2, "Karrie Nicolette", "karrie23@gmail.com", "Female"];
insert into book values
              [1, 001, "Glimpses of the past", 1, 1, 650, 396];
insert into book values
              [2, 002, "Beyond The Horizons of Venus", 1, 1, 650, 396];
insert into book values
              [3, 003, "Ultrasonic Aquaculture", 2, 1, 799, 500];
insert into book values
              [4, 004, "Cryogenic Engines", 2, 1, 499, 330]; 
_

Prosedur [tanpa parameter] untuk menampilkan semua buku

delimiter //
create procedure display_book[] 
                      -> begin 
                      -> select *from book; 
                      -> end //
call display_book[]; //

Keluaran

+--------+------+------------------------------+--------+--------+-------+-------+
| BookId | ISBN | book_name                    | author | ed_num | price | pages |
+--------+------+------------------------------+--------+--------+-------+-------+
|      1 |    1 | Glimpses of the past         |      1 |      1 |   650 |   396 |
|      2 |    2 | Beyond The Horizons of Venus |      1 |      1 |   650 |   396 |
|      3 |    3 | Ultrasonic Aquaculture       |      2 |      1 |   799 |   500 |
|      4 |    4 | Cryogenic Engines            |      2 |      1 |   499 |   330 |
+--------+------+------------------------------+--------+--------+-------+-------+
4 rows in set [0.0012 sec]

2. Prosedur dengan parameter IN. Parameter IN digunakan untuk mengambil parameter sebagai input seperti atribut. Saat kita mendefinisikan parameter IN dalam sebuah prosedur, program pemanggil harus meneruskan argumen ke prosedur tersimpan. Selain itu, nilai parameter IN dilindungi. Ini berarti bahwa meskipun nilai parameter IN diubah di dalam prosedur, nilai aslinya dipertahankan setelah prosedur berakhir [seperti nilai lewat]. Dengan kata lain, prosedur hanya bekerja pada salinan parameter IN. Contoh. Tata cara update harga buku dengan input ISBN buku dan harga barunya. [mempertimbangkan tabel di atas]

delimiter //
create procedure update_price [IN temp_ISBN varchar[10], IN new_price integer]
               -> begin
               -> update book set price=new_price where ISBN=temp_ISBN;
               -> end; //
call update_price[001, 600]; //
_

Kami mengubah harga buku dengan ISBN ‘001’[Sekilas masa lalu] menjadi 600 [dari harga standarnya 650]. Keluaran.  

delimiter ;
select *from book;
+--------+------+------------------------------+--------+--------+-------+-------+
| BookId | ISBN | book_name                    | author | ed_num | price | pages |
+--------+------+------------------------------+--------+--------+-------+-------+
|      1 |    1 | Glimpses of the past         |      1 |      1 |   600 |   396 |
|      2 |    2 | Beyond The Horizons of Venus |      1 |      1 |   650 |   396 |
|      3 |    3 | Ultrasonic Aquaculture       |      2 |      1 |   799 |   500 |
|      4 |    4 | Cryogenic Engines            |      2 |      1 |   499 |   330 |
+--------+------+------------------------------+--------+--------+-------+-------+
4 rows in set [0.0013 sec]

3. Prosedur dengan parameter OUT. Parameter OUT digunakan untuk meneruskan parameter sebagai keluaran atau tampilan seperti operator pilih, tetapi secara implisit [melalui nilai yang ditetapkan]. Nilai parameter OUT dapat diubah di dalam prosedur dan nilai barunya dikembalikan ke program pemanggil. Sebuah prosedur tidak dapat mengakses nilai awal dari parameter OUT saat dimulai. Contoh. Prosedur untuk menampilkan harga tertinggi di antara semua buku dengan parameter output

delimiter //
create procedure disp_max[OUT highestprice integer]
                 -> begin
                 -> select max[price] into highestprice from book;
                 -> end; //
call disp_max[@M]; //
select @M; 
_

Keluaran. Harga tertinggi dari database buku kami adalah buku dengan ISBN 003 [Ultrasonic Aquaculture] dengan harga 799, yang ditampilkan

+-----+
| @M  |
+-----+
| 799 |
+-----+
1 row in set [0.0005 sec] 

4. Prosedur dengan parameter IN-OUT. Parameter INOUT adalah kombinasi dari parameter IN dan OUT. Ini berarti bahwa program pemanggil dapat meneruskan argumen, dan prosedur tersimpan dapat memodifikasi parameter INOUT dan meneruskan nilai baru kembali ke program pemanggil. Contoh. Prosedur untuk mengambil input jenis kelamin ['Laki-laki'/'Perempuan' di sini] dengan parameter masuk-keluar yang mencerminkan jumlah penulis yang termasuk dalam kategori/jenis kelamin tersebut

delimiter //
create procedure disp_gender[INOUT mfgender integer, IN emp_gender varchar[6]]  
                     -> begin 
                     -> select COUNT[gender] 
                         INTO mfgender FROM author where gender = emp_gender;   
                     -> end; //
delimiter ;
call disp_gender[@M, "Male"];
select @M;
call disp_gender[@F, "Female"];
select @F; 
_

Keluaran. Kami memiliki dua penulis, satu pria dan satu wanita sesuai sisipan dalam tabel penulis. Oleh karena itu, keluaran masing-masing adalah 1 untuk satu penulis laki-laki dan 1 untuk satu penulis perempuan

Apa saja empat tipe data di MySQL?

MySQL mendukung tipe data SQL dalam beberapa kategori. tipe numerik, tipe tanggal dan waktu, tipe string [karakter dan byte], tipe spasial, dan tipe data JSON .

Bagaimana cara memeriksa tipe data di MySQL?

Anda bisa mendapatkan tipe data kolom tabel MySQL dengan bantuan “information_schema. kolom”. PILIH DATA_TYPE dari INFORMATION_SCHEMA. KOLOM dengan table_schema = 'yourDatabaseName' dan table_name = 'yourTableName' .

Bagaimana cara mengatur nilai dalam prosedur tersimpan MySQL?

Dalam sintaks ini. .
Pertama, tentukan nama variabel setelah kata kunci DECLARE. Nama variabel harus mengikuti aturan penamaan nama kolom tabel MySQL
Kedua, tentukan tipe data dan panjang variabel. .
Ketiga, tetapkan variabel sebagai nilai default menggunakan opsi DEFAULT

Apa 11 tipe data yang umum?

Integer [int] Ini adalah tipe data numerik yang paling umum digunakan untuk menyimpan angka tanpa komponen pecahan [-707, 0, 707]
Titik Terapung [mengambang].
Karakter [karakter].
String [str atau teks].
Boolean [bool].
Jenis yang disebutkan [enum].
Himpunan. .

Bài mới nhất

Chủ Đề