我需要在 SQL 中向外键插入值吗?
简单的问题。
如果我有一个表users,其中包含用户名、密码等列,以及一个自动递增的id,这是主键。 另一个名为 names 的表,其中包含 first_name、middle_name、last_name 和一个名为 user_id< 的外键/i> 引用用户表中的 id。
我必须向该外键插入一个值吗?或者SQL会自动复制users表中id的值?
另一个后续问题,names 表中的 user_id 字段的数据类型是什么?
Simple question.
If i had a table users which contains columns like username, password, and an auto incrementing id which is the primary key.
And another table called names which contains first_name, middle_name, last_name and a foreign key called user_id which references the id in the users table.
Do I have to insert a value to that foreign key? Or SQL will automatically copy the value of the id in the users table?
Another follow up question, What is the data type of the user_id field in the names table?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
是的,您必须插入外键。当您向 names 表中插入一条记录时,SQL 将不会自动知道 names 记录引用的是哪个用户。
由于 user_id 指的是自动递增的 id 字段,因此它很可能是一个整数字段。
Yes, you will have to insert the foreign key. When you insert a record into the names table, SQL will not automatically be able to know which user the names record is referring to.
As user_id is referring to an id field that is auto-incrementing it is most likely going to be an integer field.