mysql - 插入一张表并使用id插入另一张表

标签 mysql database phpmyadmin

我正在使用MySql,我想实现一个查询。 我有 5 个表,在 MySql 中它们看起来像这样。

Table1- Site:
        Site_ID
        domain_name
        site_name

Table2- Locations:
        site_id (Same as from Site)


Table3- Users:
        user_id (AI primary key)
        site_id

Table4- Users_Roles:
        role_id(AI Primary key)
        site_id

Table5- Users_Addresss:
        user_address_id(AI Primary Key)
        user_id (Same as from Users)
        site_id

通过一个查询,我想插入到所有这些表中。我的数据库已标准化 我无法想到执行该操作的查询。

我将在 php 文件中使用此查询并使用 ajax 触发它。

最佳答案

首先您需要在 Site 表中插入一条记录

INSERT INTO Site (domain_name,site_name) VALUES ('www.google.com', 'Test site');

然后将最后一个插入 id 即 Site_id 分配给如下变量

SET @site_id = LAST_INSERT_ID(); // This is the Site_id

INSERT INTO Users (site_id) VALUES (@site_id);

现在对所有表执行相同的操作。

谢谢

关于mysql - 插入一张表并使用id插入另一张表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27614491/

相关文章:

sql - 如何连接多个 MySQL 查询同时排除某些结果?

PHP - mysql_numrows() 期望参数 1 是资源, bool 值给出

mysql - phpMyAdmin - 查询执行时间

mysql - 我有一个数据库。如何创建使用两个表中的信息的触发器?

linux - 更改 phpmyadmin 默认 url

mysql - 1044 - 拒绝用户 'user' @'localhost' 访问数据库 'db'

mysql - 如何列出 MySQL 中存储的层次结构中的所有直接和间接子类型

mysql - 尝试在 phpmyadmin 中创建一个表

php - 选择范围内最大值的行

mysqldump导致数据库连接错误?