首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将数据插入mysql - Laravel中的两个表中

如何将数据插入mysql - Laravel中的两个表中
EN

Stack Overflow用户
提问于 2015-04-29 06:22:04
回答 2查看 1.6K关注 0票数 1

我想将数据插入mysql的两个表中,

表如下:

1) t_entity_details 2) t_preferences

表中的列如下:

t_entity_details

代码语言:javascript
复制
- Entity_id (primary key, auto-increment)
- First_Name
- Sex
- TagLine
- Personal_Desc
- DOB
- Lang

t_preferences

代码语言:javascript
复制
- Entity_id (primary key too, No auto-increment)
- other columns......

现在,当我提交一个表单时,两个表中的Entity_id应该是相同的。那怎么做呢?请帮我处理这个。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-04-29 14:17:35

解决办法很简单。您可以使用"mysql_insert_id“来获得最后一个递增/插入的id。您可以依次使用它插入到第二个表中。

在雄辩中,假设你知道雄辩的模型,事情就更简单了。在第一个表中插入:

代码语言:javascript
复制
$insertArray = array('First_Name' => 'Some_value', 
    'Sex' => 'Some_value', 
    'TagLine' => 'Some_value', 
    'Personal_Desc' => 'Some_value', 
    'DOB' => 'Some_value', 
    'Lang' => 'Some_value');

$saveResult = EloquentModel::create($insertArray);

然后,您可以获得最后一个insert id,如下所示:

代码语言:javascript
复制
  $entity_id = $saveResult->id;

您可以使用它插入到第二个表中:

代码语言:javascript
复制
$insert_secondTable_array = array("Foo" => "bar");
$insert_secondTable_array['EntityId'] = $entity_id;
$result = SecondEloquentModel::create($insert_secondTable_array);

这将插入到两个表中。

票数 1
EN

Stack Overflow用户

发布于 2015-04-29 07:30:22

在这个场景中,查询语句是,

插入t_entity_details (column1,column2,column3,.)值(value1,value2,value3,.);

t_entity_details;插入t_preferences SELECT *

我相信,如果不使用其他列进行操作,这种类型将解决您的问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29935809

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档