Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Tôi có thể cập nhật hàng vừa thêm bằng cách sử dụng trình kích hoạt MySQL không

Như zerkms đã nói, bạn cần phải thay đổi thiết bị đo tốc độ. Nhưng vì bạn chỉ sử dụng 1 dòng mã nên bạn không cần BEGIN và END. Và theo cách đó, bạn cũng không cần phải thay đổi dấu phân cách

CREATE TRIGGER `default_order_value` 
AFTER INSERT ON `clusters` 
FOR EACH ROW  
    UPDATE `clusters` SET `order` = NEW.id WHERE `id` = NEW.id; 

Vì bạn đang gặp lỗi, bạn không thể cập nhật hàng, tôi đề xuất như sau:

KHÔNG thực hiện truy vấn cập nhật nào cả. Theo mặc định, giá trị đơn hàng =giá trị ID. Vì vậy, khi giá trị đơn hàng thay đổi, bạn có thể cập nhật lại cho hợp lý.

Nếu bạn đang yêu cầu dữ liệu bằng php, hãy làm như sau:

$order = $row['order'];
if ($order == '')
    $order = $row['id'];

Sau khi bạn cần cập nhật nó, bạn đã có giá trị chính xác.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Hệ thống đặt lại mật khẩu trong PHP

  2. Cách sắp xếp trong SQL, bỏ qua các bài viết ('the, a', an, v.v.)

  3. Truy vấn SQL cho các tin nhắn theo chuỗi

  4. Chỉ chọn hàng / bản ghi duy nhất trong mysql

  5. INTERSECT trong MySQL