我有 2 个表格文章和用户。
我想在文章表中插入标题、内容和名称。
我将用户 ID 存储在 session 中,有没有一种方法可以使用插入选择查询将标题、内容和名称添加到文章表,同时使用该 ID 从用户表中获取名称。
类似于:
INSERT INTO article (title, content, name) VALUES ($post['title'], $post['content'], name) SELECT name FROM users WHERE id = mySessionId
最佳答案
使用 INSERT INTO..SELECT
语句,
$title = $post['title'];
$content = $post['content'];
$insertStatement = "INSERT INTO article (title, content, name)
SELECT '$title', '$content', name
FROM users
WHERE id = mySessionId";
作为旁注,查询易受 SQL Injection
攻击如果变量的值(s) 来自外部。请查看下面的文章,了解如何预防它。通过使用 PreparedStatements
,您可以摆脱在值周围使用单引号。
关于mysql - 插入选择查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16611358/