>  기사  >  PHP 프레임워크  >  Laravel의 ORM(Object Relational Mapping): 데이터베이스를 우아하게 조작

Laravel의 ORM(Object Relational Mapping): 데이터베이스를 우아하게 조작

WBOY
WBOY원래의
2023-08-25 10:28:481714검색

Laravel의 ORM(Object Relational Mapping): 데이터베이스를 우아하게 조작

Laravel의 ORM(Object Relational Mapping): 데이터베이스를 우아하게 조작합니다.

소개:
데이터베이스와의 상호작용은 개발 프로세스에서 피할 수 없는 부분입니다. ORM(Object Relational Mapping)을 사용하면 번거로운 SQL문을 작성하지 않고도 객체지향적으로 데이터베이스를 운영할 수 있습니다. Laravel 프레임워크는 개발자가 데이터베이스 작업을 수행할 수 있도록 강력하고 우아한 ORM 도구를 제공합니다. 이 기사에서는 코드 예제와 함께 Laravel에서 ORM을 사용하는 방법을 소개합니다.

1. Laravel의 ORM

ORM은 관계형 데이터베이스의 테이블에 객체를 매핑하고 테이블 간의 관계를 매핑하는 기술입니다. ORM을 사용하면 기본 SQL 문을 처리할 필요 없이 개체를 조작하여 데이터베이스를 직접 추가, 삭제, 수정 및 쿼리할 수 있습니다. Laravel의 ORM은 간단하고 우아하며 강력한 ORM 도구인 Eloquent를 사용하여 구현됩니다.

장점:

  1. SQL 문 작성 작업량을 줄이고 개발 효율성을 높입니다.
  2. 데이터베이스를 객체 지향 방식으로 운영하며 코드가 더 명확하고 읽기 쉽습니다.
  3. 데이터베이스 운영 프로세스
  4. 코드 이식 및 유지 관리를 용이하게 하기 위해 데이터베이스의 크로스 플랫폼 마이그레이션을 지원합니다.

2. Eloquent ORM의 기본 사용

  1. 모델과 데이터 테이블 매핑 관계 정의:
    먼저, 지정된 데이터 테이블과 매핑할 모델을 정의해야 합니다. Laravel에서 모델은 Eloquent를 상속한 클래스이며, 데이터 테이블과 모델 간의 매핑 관계는 모델의 명명 규칙을 통해 결정됩니다.

예를 들어 사용자 데이터 테이블이 있고 이에 대응하는 사용자 모델을 만들 수 있습니다.

namespace App;
use IlluminateDatabaseEloquentModel; 
class User extends Model 
{ 
    // 指定数据表名
    protected $table = 'users'; 
}
  1. 기본 쿼리 작업:
    Laravel은 데이터를 쿼리하는 다양한 메서드 세트를 제공합니다. 다음은 일반적으로 사용되는 몇 가지 쿼리 방법입니다.
  2. 모든 레코드 가져오기:

    $users = User::all();
  3. 첫 번째 레코드 가져오기:

    $user = User::first();
  4. 기본 키를 기반으로 레코드 찾기:

    $user = User::find(1);
  5. 조건을 기반으로 레코드 쿼리:

    $users = User::where('age', '>', 18)->get();
  6. 기록 추가, 업데이트 및 삭제:
  7. 기록 추가:

    $user = new User;
    $user->name = 'Tom';
    $user->age = 20;
    $user->save();
  8. 기록 업데이트:

    $user = User::find(1);
    $user->age = 25;
    $user->save();
  9. 기록 삭제:

    $user = User::find(1);
    $user->delete();
  10. 연결 관계:
    Laravel의 ORM은 데이터베이스 테이블 간의 연관 관계를 지원합니다. 일대일, 일대다, 다대다 등과 같은 작업
    일대다 연관을 예로 들면, 두 모델(User 및 Post)을 정의하고 User 모델에서 Post 모델과 일대다 관계를 정의할 수 있습니다.

    namespace App;
    use IlluminateDatabaseEloquentModel;
    class User extends Model 
    {
     // 定义与Post模型的一对多关系
     public function posts()
     {
         return $this->hasMany('AppPost');
     }
    }

    그러면 다음을 얻을 수 있습니다. 모든 기사:

    $user = User::find(1);
    $posts = $user->posts;

요약: Laravel의
ORM(Object Relational Mapping)은 개발자가 데이터베이스 작업을 수행할 수 있도록 우아하고 강력한 도구를 제공합니다. ORM을 사용하면 데이터베이스 운영 프로세스를 단순화하고 객체 지향 방식으로 개발할 수 있습니다. 이 글은 Laravel에서 ORM의 기본적인 사용법을 소개하고 코드 예제를 첨부하여 독자들에게 도움이 되기를 바랍니다. 아직 Laravel의 ORM을 사용해 보지 않으셨다면, 이 단순함과 우아함의 매력에 빠지실 것입니다.

참조:

  • Laravel 문서 https://laravel.com/docs/8.x/eloquent

위 내용은 Laravel의 ORM(Object Relational Mapping): 데이터베이스를 우아하게 조작의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.