Tôi hiện đang cố gắng để chèn dữ liệu vào một bảng gọi là "customer_quote", bảng này hoạt động như một bảng liên kết giữa các "khách hàng" bảng và "customer_tariffs " bảng. Nó cũng ghi lại người dùng đã lấy dữ liệu qua bảng "người dùng".Không thể chèn giá trị chính nước ngoài vào liên kết bảng
Dưới đây là một sơ đồ của db của tôi:
và đây là một ảnh chụp màn hình của bảng mà không được cho phép tôi để chèn vào nó.
Đây là quá trình trong làm thế nào tôi chèn vào db của tôi:
- dữ liệu Chèn vào bảng khách hàng
- Lấy id hàng sử dụng mysql_insert_id
- Chèn dữ liệu vào customer_quote < --- Không hoạt động!
Đây là mã:
//code above this inserted data into customer table
//get id of row where data was just inserted
$sustomer->cid = mysql_insert_id($db);
//insert into customer_quote table
$database->query("INSERT INTO customer_quote (cid)
Values ('$customer->cid')");
** New ** Thông báo lỗi
'Cannot add or update a child row: a foreign key constraint fails (
quote_system
.customer_quote
, CONSTRAINTfk_customer_quote_customer
FOREIGN KEY (cid
) REFERENCEScustomer
(id
) ON DELETE NO ACTION ON UPDATE NO ACTION)'
Như bạn có thể thấy rằng thông tin phản hồi lỗi là vô ích, vì vậy sau khoảng ba tiếng đồng hồ thử nghiệm tôi đã kết luận rằng vấn đề là cột "cid" của tôi trong bảng "quote khách hàng".
Chỉ chấp nhận các giá trị nhất định, tuy nhiên biến php của riêng tôi có giá trị chính xác có sẵn để chèn qua phpmyadmin như bạn có thể thấy trong ảnh chụp màn hình bên dưới.
Vì vậy, nó phải là những hạn chế hay cái gì khác trong bảng của tôi đó là ngăn chặn tôi?
Bất kỳ ý tưởng nào về cách giải quyết vấn đề này.
Cảm ơn!
Yêu bài đăng chi tiết .... tôi chỉ hy vọng câu trả lời của tôi sai ... bởi vì bạn có thể đã lưu tất cả nỗ lực đó bằng cách thêm ')' ..... – ManseUK
1. Bạn không xuất hiện đang sử dụng biến cid bạn vừa nhận được? Nhưng thay vì khách hàng-> cid? Tôi tưởng tượng những giải quyết trong cùng một điều? 2. Tôi không có chuyên gia PHP nhưng không nên đọc mã của bạn: "INSERT INTO customer_quote (cid) Giá trị ('$ customer-> cid')") - bạn đang thiếu một khung – BeRecursive
xin lỗi đó là một loại, tôi tay gõ mã thay vì dán! – kaleeway