Hey tất cả tôi đang cố gắng tìm hiểu làm thế nào để đi về chèn một kỷ lục mới bằng cách sử dụng chuỗi truy vấn sau đây trong VB.net
:Chèn sử dụng LEFT JOIN và INNER JOIN
SELECT user.id, user.name, user.username, user.email,
IF(user.opted_in = 0, 'NO', 'YES') AS optedIn
FROM
user
LEFT JOIN user_permission AS userPerm ON user.id = userPerm.user_id
ORDER BY user.id;
truy vấn INSERT
tôi cho đến nay là thế này:
INSERT INTO user
SELECT *
FROM user
LEFT JOIN user_permission AS userPerm ON user.id = userPerm.user_id;
Tuy nhiên, tôi không chắc chắn cách thực hiện VALUE('','','','', etc etc)
khi sử dụng kết nối trái và bên trong.
Vì vậy, những gì tôi đang tìm cách để làm điều này là:
User
bảng:
id | name | username | password | OptIn
--------------------------------------------------------------------
562 Bob Barker bBarker [email protected] 1
Và cũng là user_permission
bảng
user_id | Permission_id
-------------------------
562 4
CẬP NHẬT Vì vậy, như thế này?
INSERT INTO user (name, username, password, email, opted_in) VALUES ('Bbarker','Bbarker','blahblahblah','[email protected]',0);
INSERT INTO user_permission (user_id, permission_id) VALUES (LAST_INSERT_ID(),4);
Tại sao bạn chèn vào 'người dùng' khi bạn vừa chọn giá trị từ' người dùng'? Bạn đang định chèn hàng mới nào? –