라라벨 데이터베이스 설정

王林
풀어 주다: 2023-05-29 09:16:07
원래의
775명이 탐색했습니다.

Laravel은 데이터 처리에 탁월한 오픈 소스 PHP 웹 프레임워크입니다. Laravel은 간단하고 유연하며 사용하기 쉬운 ORM(Object Relational Mapping) 방법을 제공하여 개발자가 다양한 데이터베이스를 보다 편리하게 처리할 수 있도록 해줍니다.

Laravel을 사용할 때 Laravel이 데이터베이스에 올바르게 접근할 수 있도록 먼저 데이터베이스 링크를 설정해야 합니다. 아래에서는 Laravel에서 데이터베이스를 설정하는 방법을 설명합니다.

1. 환경 변수

Laravel에서는 .env 파일을 수정하여 데이터베이스 정보를 설정할 수 있습니다. .env 파일에서 다음 정보를 찾을 수 있습니다.

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=
로그인 후 복사
  • DB_CONNECTION은 데이터베이스 유형을 지정하는 데 사용됩니다. Laravel에서 지원하는 데이터베이스 유형에는 mysql, pgsql, sqlite, sqlsrv 등이 있습니다.
  • DB_CONNECTION 用于指定数据库的类型,Laravel支持的数据库类型有mysql、pgsql、sqlite、sqlsrv等。
  • DB_HOST 用于指定数据库所在的主机名或IP地址,一般指定为localhost127.0.0.1
  • DB_PORT 用于指定数据库服务器的端口号。
  • DB_DATABASE 用于指定要使用的数据库名称。
  • DB_USERNAME 用于指定连接数据库使用的用户名。
  • DB_PASSWORD 用于指定连接数据库使用的密码。

在进行完以上的设置之后,Laravel将会使用这些设置来连接我们的数据库。

2. 数据库迁移

Laravel提供了数据库迁移的功能,可以方便我们在不同的数据库之间进行数据迁移。在进行数据库迁移时需要注意的是,我们需要先创建数据库并设置好相应的连接信息,然后再利用迁移器进行数据迁移。

在Laravel中,我们可以通过执行php artisan make:migration create_users_table命令来创建一个迁移文件。该命令将会在database/migrations目录中生成一个新的迁移文件,文件名类似于2019_04_01_000001_create_users_table.php

在创建完迁移文件之后,我们需要打开该文件并编辑其中的up方法和down方法。其中,up方法将会在执行迁移时被调用,用于定义我们需要执行的数据库操作;down方法将会在撤销迁移时被调用,用于定义我们需要执行的撤销操作。下面我们以创建用户表为例,进行代码示范:

<?php

use IlluminateSupportFacadesSchema;
use IlluminateDatabaseSchemaBlueprint;
use IlluminateDatabaseMigrationsMigration;

class CreateUsersTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('users', function (Blueprint $table) {
            $table->increments('id');
            $table->string('name');
            $table->string('email')->unique();
            $table->string('password');
            $table->rememberToken();
            $table->timestamps();
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::drop('users');
    }
}
로그인 후 복사

以上代码将会创建一个名为users的表,该表包含5个字段idnameemailpasswordremember_token,以及两个自动维护的字段created_atupdated_at

在完成了上述设置之后,我们可以执行php artisan migrate命令来执行数据迁移操作。

3. 模型

在Laravel中,我们可以使用Eloquent ORM来方便地操作我们的数据库。Eloquent ORM提供了许多方法用于执行CRUD(create, read, update, delete)操作,能够帮助我们快速进行数据库操作。

我们先来看一下在模型中设置数据库的方法。在模型类中,我们可以使用以下方法来指定表名、主键以及数据库连接信息:

<?php

namespace AppModels;

use IlluminateDatabaseEloquentModel;

class User extends Model
{
    protected $table = 'users';

    protected $primaryKey = 'id';

    protected $connection = 'mysql';
}
로그인 후 복사

以上代码将会指定使用mysql连接来访问users表,该表的主键为id

在设置完数据库连接信息后,我们就可以使用Eloquent ORM来进行数据库操作了。下面我们来看一些Eloquent ORM的基本操作。

3.1 创建数据

在Eloquent ORM中,我们可以使用create方法来创建数据。例如:

$user = User::create([
    'name' => 'Tom',
    'email' => 'tom@example.com',
    'password' => bcrypt('password'),
]);
로그인 후 복사

以上代码将会创建一条名为Tom、邮箱为tom@example.com、密码为password的用户数据。

3.2 查询数据

在Eloquent ORM中,我们可以使用get方法来查询数据。例如:

$users = User::get();
로그인 후 복사

以上代码将会从users表中查询出所有的用户数据。

我们也可以使用where方法来进行条件查询。例如:

$users = User::where('name', 'Tom')->get();
로그인 후 복사

以上代码将会从users表中查询出名称为Tom的所有用户数据。

3.3 更新数据

在Eloquent ORM中,我们可以使用update方法来更新数据。例如:

$user = User::where('name', 'Tom')->first();
$user->email = 'new_email@example.com';
$user->save();
로그인 후 복사

以上代码将会将名为Tom的用户数据的邮箱改为new_email@example.com

3.4 删除数据

在Eloquent ORM中,我们可以使用delete方法来删除数据。例如:

$user = User::where('name', 'Tom')->first();
$user->delete();
로그인 후 복사

以上代码将会删除名为TomDB_HOST는 데이터베이스가 있는 호스트 이름이나 IP 주소를 지정하는 데 사용되며 일반적으로 localhost 또는 127.0.0.1로 지정됩니다. >.

DB_PORT는 데이터베이스 서버의 포트 번호를 지정하는 데 사용됩니다. 🎜DB_DATABASE는 사용할 데이터베이스 이름을 지정하는 데 사용됩니다. 🎜DB_USERNAME은 데이터베이스에 연결하는 데 사용되는 사용자 이름을 지정하는 데 사용됩니다. 🎜DB_PASSWORD는 데이터베이스에 연결하는 데 사용되는 비밀번호를 지정하는 데 사용됩니다. 🎜위 설정을 완료한 후 Laravel은 이 설정을 사용하여 데이터베이스에 연결합니다. 🎜🎜2. 데이터베이스 마이그레이션🎜🎜Laravel은 서로 다른 데이터베이스 간에 데이터를 쉽게 마이그레이션할 수 있는 데이터베이스 마이그레이션 기능을 제공합니다. 데이터베이스 마이그레이션을 수행할 때 주의해야 할 점은 먼저 데이터베이스를 생성하고 해당 연결 정보를 설정한 후 마이그레이션 도구를 사용하여 데이터를 마이그레이션해야 한다는 것입니다. 🎜🎜Laravel에서는 php artisan make:migration create_users_table 명령을 실행하여 마이그레이션 파일을 생성할 수 있습니다. 이 명령은 2019_04_01_000001_create_users_table.php와 유사한 파일 이름을 사용하여 database/migrations 디렉터리에 새 마이그레이션 파일을 생성합니다. 🎜🎜마이그레이션 파일을 생성한 후 파일을 열고 up 메서드와 down 메서드를 편집해야 합니다. 그중 up 메소드는 수행해야 하는 데이터베이스 작업을 정의하기 위해 마이그레이션을 실행할 때 호출됩니다. down 메소드는 마이그레이션을 되돌릴 때 호출되며 정의에 사용됩니다. 우리가 수행해야 할 실행 취소 작업. 코드를 설명하기 위해 예로 사용자 테이블을 생성해 보겠습니다. 🎜rrreee🎜위 코드는 id, 라는 5개 필드를 포함하는 <code>users라는 테이블을 생성합니다. >name, email, password, remember_token 및 자동으로 유지되는 2개의 필드 created_at > 및 updated_at. 🎜🎜위 설정을 완료한 후 php artisan migration 명령을 실행하여 데이터 마이그레이션을 수행할 수 있습니다. 🎜🎜3. Model🎜🎜Laravel에서는 Eloquent ORM을 사용하여 데이터베이스를 편리하게 운영할 수 있습니다. Eloquent ORM은 CRUD(생성, 읽기, 업데이트, 삭제) 작업을 수행하는 다양한 방법을 제공하여 데이터베이스 작업을 빠르게 수행하는 데 도움이 됩니다. 🎜🎜먼저 모델에 데이터베이스를 설정하는 방법을 살펴보겠습니다. 모델 클래스에서는 다음 방법을 사용하여 테이블 이름, 기본 키 및 데이터베이스 연결 정보를 지정할 수 있습니다. 🎜rrreee🎜위 코드는 mysql 연결을 사용하여 에 액세스하도록 지정합니다. >users 테이블에서 이 테이블의 기본 키는 id입니다. 🎜🎜데이터베이스 연결 정보를 설정한 후 Eloquent ORM을 사용하여 데이터베이스 작업을 수행할 수 있습니다. Eloquent ORM의 몇 가지 기본 작업을 살펴보겠습니다. 🎜

3.1 데이터 생성

🎜Eloquent ORM에서는 create 메소드를 사용하여 데이터를 생성할 수 있습니다. 예: 🎜rrreee🎜위 코드는 Tom이라는 사용자 데이터를 생성하고, 이메일 주소는 tom@example.com, 비밀번호는 password입니다. > . 🎜

3.2 데이터 쿼리

🎜Eloquent ORM에서는 get 메서드를 사용하여 데이터를 쿼리할 수 있습니다. 예: 🎜rrreee🎜위 코드는 users 테이블의 모든 사용자 데이터를 쿼리합니다. 🎜🎜where 메소드를 사용하여 조건부 쿼리를 수행할 수도 있습니다. 예: 🎜rrreee🎜위 코드는 users 테이블에서 Tom이라는 이름의 모든 사용자 데이터를 쿼리합니다. 🎜

3.3 데이터 업데이트

🎜Eloquent ORM에서는 update 메소드를 사용하여 데이터를 업데이트할 수 있습니다. 예: 🎜rrreee🎜위 코드는 Tom이라는 사용자 데이터의 이메일 주소를 new_email@example.com으로 변경합니다. 🎜

3.4 데이터 삭제

🎜Eloquent ORM에서는 delete 메소드를 사용하여 데이터를 삭제할 수 있습니다. 예: 🎜rrreee🎜위 코드는 Tom이라는 사용자 데이터를 삭제합니다. 🎜

결론

간단히 말하면, Laravel은 웹 애플리케이션 개발 시 더욱 편리하게 사용할 수 있는 다양한 데이터베이스 운영 방법을 제공합니다. 데이터베이스를 설정할 때 불필요한 오류를 피하기 위해 환경 변수 설정 및 데이터베이스 마이그레이션 파일 편집에 주의해야 합니다. 동시에 Eloquent ORM은 편리하고 빠른 CRUD 작업 방법을 제공하여 개발 프로세스를 보다 효율적으로 만들 수 있습니다.

위 내용은 라라벨 데이터베이스 설정의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿