我有2张桌子。在第一个我有id_user(即主键),用户名,名称,密码,在第二个我有id_post(主键),发布,用户名,视图,id(引用id_user的外键)。 我使用查询后:
$query ="INSERT INTO posts (username,post,view) VALUES ('$username','$postare','$isprivate')";
它用NULL完成我的列id。我希望列id中包含进行查询的用户的id_user。不是NULL。
答案 0 :(得分:1)
您需要查找值才能在数据中获取该值。因此,使用您的构造,查询将如下所示:
insert into posts (userid, post, view)
select u.userid, $postare, $isprivate
from users u
where u.username = '$username';
注意:
userid
和username
都存储在posts
表中。仅将username
存储在users
表格中,并在需要时使用userid
获取名称。view
是一个非常糟糕的列名,因为它是一个SQL关键字。