Mysql chấp nhận bao nhiêu tham số?

Thủ tục là chương trình con (như chương trình con) bằng ngôn ngữ kịch bản thông thường, được lưu trữ trong cơ sở dữ liệu. Trong trường hợp của MySQL, các thủ tục được viết bằng MySQL và được lưu trữ trong cơ sở dữ liệu/máy chủ MySQL. Một thủ tục MySQL có tên, danh sách tham số và (các) câu lệnh SQL. Có bốn loại thủ tục MySQL khác nhau. 1. Thủ tục không có tham số. Một thủ tục không có tham số sẽ không nhận bất kỳ đầu vào nào hoặc truyền đầu ra một cách gián tiếp. Nó được gọi đơn giản với tên thủ tục theo sau là () (không có bất kỳ tham số nào). Nó được sử dụng cho các truy vấn đơn giản. Thí dụ. Xét hai bảng author và book

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);

Chèn các giá trị vào chúng

insert into author values 
              (1, "Kraig Muller", "[email protected]", "Male");
insert into author values
              (2, "Karrie Nicolette", "[email protected]", "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); 

Quy trình (không có tham số) để hiển thị tất cả sách

delimiter //
create procedure display_book() 
                      -> begin 
                      -> select *from book; 
                      -> end //
call display_book(); //

đầu ra

+--------+------+------------------------------+--------+--------+-------+-------+
| 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. Thủ tục với tham số IN. Tham số IN được sử dụng để lấy tham số làm đầu vào, chẳng hạn như thuộc tính. Khi chúng ta định nghĩa một tham số IN trong một thủ tục, chương trình gọi phải truyền một đối số cho thủ tục lưu sẵn. Ngoài ra, giá trị của tham số IN được bảo vệ. Điều đó có nghĩa là ngay cả khi giá trị của tham số IN bị thay đổi bên trong thủ tục, thì giá trị ban đầu của nó vẫn được giữ lại sau khi thủ tục kết thúc (như truyền giá trị). Nói cách khác, thủ tục chỉ hoạt động trên bản sao của tham số IN. Thí dụ. Quy trình cập nhật giá sách lấy ISBN của sách và giá mới làm đầu vào. (xem xét các bảng trên)

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); //

Chúng tôi đã thay đổi giá của cuốn sách có ISBN '001'(Những thoáng nhìn về quá khứ) thành 600 (từ giá mặc định là 650). đầu ra.  

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. Thủ tục với tham số OUT. Tham số OUT được sử dụng để truyền tham số dưới dạng đầu ra hoặc hiển thị giống như toán tử chọn, nhưng hoàn toàn (thông qua giá trị đã đặt). Giá trị của tham số OUT có thể được thay đổi bên trong thủ tục và giá trị mới của nó được chuyển trở lại chương trình gọi. Một thủ tục không thể truy cập giá trị ban đầu của tham số OUT khi nó bắt đầu. Thí dụ. Quy trình hiển thị giá cao nhất trong số tất cả các sách có tham số đầu ra

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

đầu ra. Giá cao nhất từ ​​cơ sở dữ liệu sách của chúng tôi là cuốn sách có ISBN 003 (Nuôi trồng thủy sản bằng siêu âm) với giá 799, được hiển thị

+-----+
| @M  |
+-----+
| 799 |
+-----+
1 row in set (0.0005 sec) 

4. Thủ tục với tham số IN-OUT. Một tham số INOUT là sự kết hợp của các tham số IN và OUT. Điều đó có nghĩa là chương trình gọi có thể chuyển đối số và thủ tục được lưu trữ có thể sửa đổi tham số INOUT và chuyển giá trị mới trở lại chương trình gọi. Thí dụ. Quy trình lấy đầu vào loại giới tính (ở đây là 'Nam'/'Nữ') với tham số vào-ra phản ánh số lượng tác giả thuộc loại/loại giới tính đó

________số 8_______

đầu ra. Chúng tôi có hai tác giả, một là nam và một là nữ theo phần bổ sung trong bảng tác giả. Do đó, đầu ra lần lượt là 1 cho một tác giả nam và 1 cho một tác giả nữ

Số tham số tối đa trong truy vấn SQL là bao nhiêu?

Các thủ tục SQL được giới hạn ở 1024 tham số . Số lượng tham số cho các thủ tục bên ngoài phụ thuộc vào PARAMETER STYLE. THÔNG SỐ PHONG CÁCH CHUNG có tối đa 1024.

MySQL có thể xử lý bao nhiêu yêu cầu?

MySQL có thể chạy hơn 50.000 truy vấn đơn giản mỗi giây trên phần cứng máy chủ thông thường và hơn 2.000 truy vấn mỗi giây từ một đối tác duy nhất trên mạng Gigabit, so running multiple queries isn't necessarily such a bad thing.

Các tham số trong MySQL là gì?

Tham số thủ tục lưu trữ MySQL có ba chế độ. VÀO, RA VÀ RA . Khi chúng ta khai báo một tham số kiểu IN, ứng dụng phải truyền một đối số cho thủ tục lưu sẵn. Đó là một chế độ mặc định. Tham số loại OUT, thủ tục được lưu trữ trả về kết quả cuối cùng được tạo bởi Câu lệnh SQL.

Giới hạn của MySQL là gì?

MySQL có không giới hạn số lượng bảng . Hệ thống tệp cơ bản có thể có giới hạn về số lượng tệp đại diện cho bảng. Các công cụ lưu trữ riêng lẻ có thể áp đặt các ràng buộc dành riêng cho công cụ. InnoDB cho phép tới 4 tỷ bảng.