Computer >> Máy Tính >  >> Lập trình >> MySQL

Làm cách nào để chuyển một biến vào tập lệnh MySQL?

Bạn có thể chuyển một biến vào tập lệnh MySQL bằng cách sử dụng biến phiên. Trước tiên, bạn cần đặt một biến phiên bằng lệnh SET. Sau đó, bạn cần chuyển biến đó sang tập lệnh MySQL.

Cú pháp như sau -

Bước đầu tiên :Sử dụng lệnh Set.

SET @anyVariableName − = ’yourValue’;

Bước thứ hai :Truyền một biến vào tập lệnh MySQL.

UPDATE yourTableName SET yourColumnName1 = yourColumnName1+integerValue WHERE yourColumnName2 = @anyVariableName;

Để hiểu cú pháp trên, chúng ta hãy tạo một bảng. Truy vấn để tạo bảng như sau -

mysql> create table Employee_Information
   -> (
   -> EmployeeId int NOT NULL AUTO_INCREMENT,
   -> EmployeeName varchar(20) NOT NULL,
   -> EmployeeSalary int,
   -> EmployeeStatus varchar(20),
   -> PRIMARY KEY(EmployeeId)
   -> );
Query OK, 0 rows affected (0.53 sec)

Bây giờ bạn có thể chèn một số bản ghi trong bảng bằng cách sử dụng lệnh insert. Truy vấn như sau -

mysql> insert into Employee_Information(EmployeeName,EmployeeSalary,EmployeeStatus) values('Sam',17650,'FullTime');
Query OK, 1 row affected (0.13 sec)

mysql> insert into Employee_Information(EmployeeName,EmployeeSalary,EmployeeStatus) values('Carol',12000,'Trainee');
Query OK, 1 row affected (0.18 sec)

mysql> insert into Employee_Information(EmployeeName,EmployeeSalary,EmployeeStatus) values('Bob',17650,'FullTime');
Query OK, 1 row affected (0.20 sec)

mysql> insert into Employee_Information(EmployeeName,EmployeeSalary,EmployeeStatus) values('Mike',12000,'Trainee');
Query OK, 1 row affected (0.14 sec)

mysql> insert into Employee_Information(EmployeeName,EmployeeSalary,EmployeeStatus) values('John',17650,'FullTime');
Query OK, 1 row affected (0.16 sec)

Hiển thị tất cả các bản ghi từ bảng bằng cách sử dụng câu lệnh select.

mysql> select *from Employee_Information;

Sau đây là kết quả -

+------------+--------------+----------------+----------------+
| EmployeeId | EmployeeName | EmployeeSalary | EmployeeStatus |
+------------+--------------+----------------+----------------+
|          1 | Sam          |          17650 | FullTime       |
|          2 | Carol        |          12000 | Trainee        |
|          3 | Bob          |          17650 | FullTime       |
|          4 | Mike         |          12000 | Trainee        |
|          5 | John         |          17650 | FullTime       |
+------------+--------------+----------------+----------------+
5 rows in set (0.00 sec)

Sau đây là truy vấn để chuyển một biến vào tập lệnh MySQL -

mysql> set @EmpStatus − = 'FullTime';
Query OK, 0 rows affected (0.03 sec)

mysql> update Employee_Information set EmployeeSalary = EmployeeSalary+6500 where EmployeeStatus = @EmpStatus;
Query OK, 3 rows affected (0.18 sec)
Rows matched − 3 Changed − 3 Warnings − 0

Bây giờ hãy kiểm tra các bản ghi bảng một lần nữa bằng cách sử dụng câu lệnh SELECT. Tôi đã tăng EmployeeSalary với 6500, dành cho những nhân viên làm việc FullTime.

Truy vấn như sau -

mysql> select *from Employee_Information;

Sau đây là kết quả -

+------------+--------------+----------------+----------------+
| EmployeeId | EmployeeName | EmployeeSalary | EmployeeStatus |
+------------+--------------+----------------+----------------+
|          1 | Sam          |          24150 | FullTime       |
|          2 | Carol        |          12000 | Trainee        |
|          3 | Bob          |          24150 | FullTime       |
|          4 | Mike         |          12000 | Trainee        |
|          5 | John         |          24150 | FullTime       |
+------------+--------------+----------------+----------------+
5 rows in set (0.00 sec)