我有 3 个这样结构的表,
employee > id (PK), name
family > family_id (PK), id (employee PK)
father > father_id (PK), family_id (family PK), father_name
我知道我可以使用 mysql_insert_id()
hoặc LAST_INSERT_ID
获取最后插入的 ID,我想获取 ID 并将其插入到每个表中,如下所示:
INSERT INTO employee VALUES('', '')
//
//
INSERT INTO family VALUES('', '".mysql_insert_id()."')
// id from employee PK
//
INSERT INTO father VALUES('', '".mysql_insert_id()"', '')
// id from family PK
我做的对吗?如果是,是否有更好的方法来做完全相同的事情?
谢谢。 :)
1 Câu trả lời
是的,这是正确的方法(考虑到有关 mysql_fns 的注意事项)。但是您在第二个和第三个示例中引用了一个整数值 - 这是个坏主意。
这种方法的缺点是它需要多次往返数据库,即使没有服务器端解析准备好的语句(发送查询、检索结果、发送插入 id 请求、检索插入 id X 3),这可能是一种性能瓶颈。
如果是这种情况,则将其打包为 Mysql 函数允许操作作为对 DBMS 的单个调用来竞争(使用函数而不是过程,因为前者可以trở lại插入 ID)。
关于php - 多个 mysql_insert_id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19681305/
Tôi đang chạy PHP trong một tệp JavaScript, như... var = '';). Tôi cần sử dụng JavaScript để quét chuỗi để tìm các ký tự phân cách PHP (mở và đóng PHP). Tôi đã biết cách rồi
Tôi muốn có thể làm điều gì đó như thế này: php --determine-oldest-supported-php-version test.php và nhận được kết quả đầu ra này: 7.2 Nghĩa là nhị phân php được kiểm tra theo thử nghiệm.
Tôi đang phát triển một trang web php lớn hiện không sử dụng bất kỳ framework nào. Câu hỏi lớn của tôi là, liệu có nên thử tích hợp dần dần khung vào ứng dụng theo thời gian, chẳng hạn như tạo các tiện ích mới và cập nhật các tiện ích cũ không? Ví dụ, tất cả các trang đều được phục vụ trực tiếp thông qua URL.
Dưới đây là mã nguồn của tôi, tôi muốn sử dụng biến $r1 nằm trong tập lệnh php ở cuối trong một tập lệnh php khác ở đầu cùng một trang. Tôi cần một giải pháp đơn giản cho vấn đề này. Tôi muốn sử dụng biến đó trong truy vấn cập nhật có trong mã. $tên)
Tôi đang tạo một trang web thực hiện nhiều chuyển hướng PHP tùy thuộc vào các tình huống khác nhau. Giống như thế này... header("Location: somesite.com/redirectedpage.php"); để bảo mật