Php MySQL插入到多个表(关系型)

Php MySQL插入到多个表(关系型),php,mysql,Php,Mysql,我想插入一个产品,然后在一个单独的表中插入多个价格。如何确保两个表在自动递增字段中具有相同的UID?我将与MySQL一起使用PHP 谢谢 J使用UID的GUID,或者更好,插入您的产品和价格,例如使用产品名称(假设唯一)来查找相关的产品UID。使用UID的GUID,或者更好,插入您的产品和价格,例如使用产品名称(假设唯一)查找相关的产品UID。在products表中使UID成为一个自动增量主键,但在prices表中只作为一个常规主键(无自动增量)。将ITN插入产品后,使用PHP命令mysql\u

我想插入一个产品,然后在一个单独的表中插入多个价格。如何确保两个表在自动递增字段中具有相同的UID?我将与MySQL一起使用PHP

谢谢


J

使用UID的GUID,或者更好,插入您的产品和价格,例如使用产品名称(假设唯一)来查找相关的产品UID。

使用UID的GUID,或者更好,插入您的产品和价格,例如使用产品名称(假设唯一)查找相关的产品UID。

在products表中使UID成为一个
自动增量
主键,但在prices表中只作为一个常规主键(无自动增量)。将ITN插入产品后,使用PHP命令
mysql\u insert\u id()
。这将获取上次查询生成的ID,它将是在products表上生成的UID。给它分配一个变量,并在prices表的insert语句中使用它


将UID设置为products表上的
自动增量
主键,但仅设置为prices表上的常规主键(无自动增量)。将ITN插入产品后,使用PHP命令
mysql\u insert\u id()
。这将获取上次查询生成的ID,它将是在products表上生成的UID。给它分配一个变量,并在prices表的insert语句中使用它


对外键关系使用人工/代理键是一个更好的主意,因为名称可能会更改,需要唯一的名称等。与描述性文本相关的风险自负……对外键关系使用人工/代理键是一个更好的主意,因为名称可能会更改,需要唯一的名称,等等。与描述性文本相关的风险…+1:为prices表创建单独的主键没有害处;您也可以使用复合键(不止一列)。请记住将tbl_price.UID引用tbl_product.UID作为外键,并使用InnoDB。外键检查是你的朋友@天哪,对。我不是说不要在prices表上使用主键,只是不要自动递增@Charles,同意+1+1:为prices表创建单独的主键没有害处;您也可以使用复合键(不止一列)。请记住将tbl_price.UID引用tbl_product.UID作为外键,并使用InnoDB。外键检查是你的朋友@天哪,对。我不是说不要在prices表上使用主键,只是不要自动递增@Charles,同意+1.
tbl_product
Name | Creator | UID | Salerank

tbl_price
Supplier | Price | UID