我数据库中有两个表,第一个是shop_details
,第二个是shopOwner_login
在shop_details
表中存在名为
ShopOwner_email
Shop_Pass
同样在shopOwner_login
表中也有
ShopOwner_Id,
ShopOwner_email,
Shop_Pass
现在我想做一个表单,如果用户在商店详细信息表中输入数据,如shopowner电子邮件及其密码,它将自动存储在这两个表中
我可以这样做吗?如果是的,请帮助我,我也尝试了外键,我是如此困惑与外键,因为我是新的PHP和MySql请帮助我。
2条答案
按热度按时间k3bvogb11#
每个表都应该有主键。* 主键是唯一的id*(可以是数字、字符串甚至uuid。例如:ShopOwner_Id)*,可用于提取表 * 中的任何行。此主键用于建立表之间的关系。
同样,对于关系,两个表之间可能存在3种类型的主要关系。
例如,
1.假设您有两个表UserLogin和UserProfile。UserLogin包含-〉id、email、密码和验证。而UserProfile包含-〉id、名称、地址、移动的、出生地等。这里每个UserLogin将有一个UserProfile,而每个UserProfile将只有一个UserLogin。因此它们具有一对一关系。在这种情况下,将外键添加到这两个表中。在UserLogin中添加profile_id作为外键,而在UserProfile中添加login_id作为外键。
1.假设有两个表
Shop
和User
,其中每个Shop
都属于一个User
但是一个User
可以有多个Shops
,Shop
和User
具有多对一关系(* 或User
和Shop
具有一对多关系 )。在本例中,我们添加user_id的外键( 这是User
表的主键 *)添加到Shop
表。在您的情况下,我建议只在
shopOwner_login
表中保存电子邮件和密码,并将其外键添加到shop_details
表中。这样,您的数据将被规范化,您将不必确保在多个表中维护相同的数据。f4t66c6m2#
因此,d查询需要提取类似于-
SELECT a.ShopOwner_email Shop_Pass as EmailId,a.Shop_Pass as Password FROM shop_details as a left join shopOwner_login as b on b.ShopOwner_Id = a.ShopOwner_Id
的数据