![](/img/trans.png)
[英]Laravel: How to insert multiple data with select2 to mysql database?
[英]How to insert raw data in mysql database in laravel
我是laravel开发的大一新生。 我用的是mysql数据库,想在数据库中插入原始数据。 我用$table->binary()
添加列。 以及如何将数据插入到列中。
Schema::table('users', function($table)
{
$table->binary('raw');
});
尝试这个:
假设您有以下表(称为“用户”)
id|user|fname|lname|email|etc..
-------------------------
1|jdoe|john|doe|jdoe@example.com|blah....
DB::table('users')->insert(
array('user' => 'jdoe',
'fname' => 'john',
'lname' => 'doe',
'email' => 'jdoe@example.com')
);
insert() 接受多个数组(依次可以映射到表中的各个列)。
我希望这是你所需要的。
基于此文档: http : //laravel.com/docs/queries#inserts
你可能想看看 Eloquent,Laravel 使用的默认 ORM。 它使数据库变得非常容易。 有些人可能会有不同的想法,但这可以通过接口和存储库来解决。
Laravel 使用 MVC 范式。 数据库应该通过模型更新。 因此,通过用户提交的视图,假设是一个新用户,控制器获取发布请求并将数据传递给模型,然后模型更新数据库。
因此,假设您将使用 Laravel 默认的 User 模型。 该模型已经从 Eloquent 扩展而来。 您应该已经有一个数据库:
用户表数据库
id, auto_increment
username, varchar(255)
password, varchar(255)
email, varchar(255)
created_at (datetime)
updated_at (datetime)
应用程序/模型/User.php
class User extends Eloquent implements UserInterface, RemindableInterface {
应用程序/控制器/HomeController.php
public function showWelcome()
{
$user = new User;
$user->username = 'johndoe';
$user->email = 'john@johndoe.com';
$user->password = 'password';
$user->save();
return View::make('hello');
}
如果您正确设置了数据库并迁移了 User 表,这应该可以工作,并为您与 Laravel 中的数据库进行交互提供了一个很好的起点。 这不是将数据添加到数据库的首选方式,因为此操作不应放置在控制器内部,但这将是下一步。 我开始以这种方式学习 Laravel,它确实可以帮助您正确理解框架。
PS:
DB::query('insert into users (username, email, password) values ("johndoe", "john@johndoe.com", "password")');
这是非常不安全的并且容易受到 SQL 注入的影响,但 Laravel 提供了解决方案,也适用于原始查询。
您可以将这种方式用于原始插入(我在 laravel/Lumen 8 上对此进行了测试):
DB::insert('insert into users (email, votes) values (?, ?)', ['john@example.com', '0']);
如果你想部分原始查询,你可以这样做
DB::('table')
->insert([
'id'=>1,
'date'=>DB::raw('CURDATE()')
]);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.