Tôi có hai bảng trông như thế này
Xe lửa
+----------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| TrainID | varchar(11) | NO | PRI | NULL | |
| Capacity | int(11) | NO | | 50 | |
+----------+-------------+------+-----+---------+-------+
Đặt trước
+---------------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+---------------+-------------+------+-----+---------+----------------+
| ReservationID | int(11) | NO | PRI | NULL | auto_increment |
| FirstName | varchar(30) | NO | | NULL | |
| LastName | varchar(30) | NO | | NULL | |
| DDate | date | NO | | NULL | |
| NoSeats | int(2) | NO | | NULL | |
| Route | varchar(11) | NO | | NULL | |
| Train | varchar(11) | NO | | NULL | |
+---------------+-------------+------+-----+---------+----------------+
Hiện tại, tôi đang cố gắng tạo một truy vấn sẽ tăng sức chứa trên Tàu nếu việc đặt chỗ bị hủy. Tôi biết mình phải thực hiện Tham gia, nhưng tôi không chắc cách thực hiện trong câu lệnh Cập nhật. Ví dụ: tôi biết cách nhận sức chứa của một chuyến tàu với một ReservationID nhất định, như sau:
select Capacity
from Train
Join Reservations on Train.TrainID = Reservations.Train
where ReservationID = "15";
Nhưng tôi muốn tạo truy vấn thực hiện điều này -
Increment Train.Capacity by ReservationTable.NoSeats given a ReservationID
Nếu có thể, tôi cũng muốn biết cách Tăng số lượng ghế tùy ý. Ngoài ra, tôi đang lên kế hoạch xóa phần đặt trước sau khi thực hiện bước tăng trong một giao dịch Java. Việc xóa có ảnh hưởng đến giao dịch không?
Cảm ơn đã giúp đỡ!