laravel怎样操作数据库
laravel是一款很是优异的php框架,为开发职员提供了许多便当,如简化编码、提高开发效率和易于维护等。与此同时,laravel也支持多种数据库操作要领,使开发职员越发便捷地举行数据库操作。在本篇文章中,我们将先容laravel框架中怎样举行数据库操作。
第一步:设置数据库信息
首先,我们需要在Laravel项目中设置数据库信息?梢栽赾onfig/database.php文件中举行设置,其中包括数据库类型、主机地点、端口、数据库名、用户名和密码等信息。
在Laravel中,可以支持多个数据库。因此,需要在config/database.php 中举行设置,例如:
'connections' => [ 'mysql' => [ 'driver' => 'mysql', 'host' => env('DB_HOST', '127.0.0.1'), 'port' => env('DB_PORT', '3306'), 'database' => env('DB_DATABASE', 'forge'), 'username' => env('DB_USERNAME', 'forge'), 'password' => env('DB_PASSWORD', ''), 'unix_socket' => env('DB_SOCKET', ''), 'charset' => 'utf8mb4', 'collation' => 'utf8mb4_unicode_ci', 'prefix' => '', 'strict' => true, 'engine' => null, ], 'mysql2' => [ 'driver' => 'mysql', 'host' => env('DB2_HOST', '127.0.0.1'), 'port' => env('DB2_PORT', '3306'), 'database' => env('DB2_DATABASE', 'forge'), 'username' => env('DB2_USERNAME', 'forge'), 'password' => env('DB2_PASSWORD', ''), 'unix_socket' => env('DB2_SOCKET', ''), 'charset' => 'utf8mb4', 'collation' => 'utf8mb4_unicode_ci', 'prefix' => '', 'strict' => true, 'engine' => null, ],
登录后复制
可以看到,这里界说了两个数据库毗连:mysql和mysql2,它们划分对应差别的数据库。
在.env文件中可以指定每个数据库的相关设置:
DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=database_name DB_USERNAME=database_username DB_PASSWORD=database_password DB_CONNECTION=mysql2 DB_HOST=127.0.0.1 DB_PORT=3306 DB2_DATABASE=database2_name DB2_USERNAME=database2_username DB2_PASSWORD=database2_password
登录后复制
这些设置信息将在Laravel应用程序中使用。
第二步:建设模子
在Laravel框架中,模子可用于与数据库交互。模子是一个类,用于处置惩罚数据库中的数据。使用模子可以把数据库的表映射到一个PHP类中,使我们能够更利便地操作数据库。
使用Artisan下令行工具来快速天生模子,例如:
php artisan make:model User
登录后复制
这将在app/Models目录下天生一个名为User的模子类,可以在其中界说表、主键、时间戳等信息。
namespace App\Models; use Illuminate\Database\Eloquent\Model; class User extends Model { protected $table = 'user'; protected $primaryKey = 'id'; public $timestamps = true; }
登录后复制
第三步:盘问数据
在Laravel中,通过Eloquent ORM可以利便地举行数据库盘问。通过模子可以轻松地盘问某个表。例如使用以下Eloquent要领可以获取“User”表中的所有纪录:
use App\Models\User; $users = User::all();
登录后复制
使用findOrFail要领查找纪录时,可以将该要领与模子ID一起使用:
$user = User::findOrFail(1);
登录后复制
盘问某些纪录时,可以使用where要领:
use App\Models\User; $users = User::where('name', 'John')->get();
登录后复制
还可以使用其他条件举行盘问,例如:
$user = User::where('name', 'John')->first();
登录后复制
$users = User::select('name')->distinct()->get();
登录后复制
$users = User::orderBy('name', 'desc')->take(10)->get();
登录后复制
第四步:插入数据
在Laravel框架中插入数据很是简朴。使用模子建设新纪录时,可以使用以下代码:
$user = new User; $user->name = 'John'; $user->email = 'john@example.com'; $user->save();
登录后复制
还可以在一个类中使用create要领一次建设多个新纪录:
User::create([ 'name' => 'Jane', 'email' => 'jane@example.com', ]);
登录后复制
第五步:更新数据
通过模子更新数据也很是容易?梢酝ü韵麓敫乱桓黾吐迹
$user = User::find(1); $user->email = 'john.doe@example.com'; $user->save();
登录后复制
也可以批量更新纪录:
User::where('name', 'John')->update(['email' => 'john.doe@example.com']);
登录后复制
第六步:删除数据
删除数据与更新数据的要领类似。若是您要删除单个纪录,请使用以下下令:
$user = User::find(1); $user->delete();
登录后复制
当需要删除多个纪录时,可以使用以下下令:
User::where('name', 'John')->delete();
登录后复制
注重,delete要体会将纪录从数据库中永世删除?梢允褂萌砩境πЫ湟贫搅硪桓霰碇,而不是永世删除。
总结
Laravel ORM为程序员提供了一个强盛的工具来操作数据库。通过上述几个办法,您可以轻松地举行数据库盘问、插入、更新和删除等操作。值得注重的是,应该很是小心地处置惩罚敏感数据并且坚持优异的行为。希望这篇文章对您在Laravel中操作数据库有所资助。
以上就是laravel怎样操作数据库的详细内容,更多请关注本网内其它相关文章!