- skip to content

# Database Abstraction Layer

### User Tools

- Login

### Site Tools

- Recent changes
- Media Manager
- Sitemap

### Sidebar

##### Resources

- Reference Manual
- User Guide
- The Data Dictionary
- ADOdb-xmlschema
- ADOdb Active Record
- Performance Monitoring
- Date/Time Library
- Session Management Library
- Unsupported Addons
- Coding Standards

##### Supported Databases

- Access
- ADO
- CSV
- Firebird
- Frontbase
- IBM DB2
- Informix
- Interbase
- LDAP
- Microsoft SQL Server
- MySQL
- Netezza
- ODBC
- ODBTP
- Oracle
- PDO
- Postgresql
- SAP ADS
- SAP ASE
- SAP Maxdb
- SAP Sqlanywhere
- Sqlite
- Sybase
- Plain Text
- Visual Foxpro

##### Other

- Feature Comparison Matrix
- Connection Matrix
- Include File Guide

v5:activerecord:classbelongsto

# classBelongsTo

##### Syntax

    void ADODB_Active_Record::classBelongsTo(
       string $parentClass,
       string $childClass,
       string $foreignKey,
       optional string $parentPrimaryKey = 'id',
       optional string $parentClass = 'ADODB_Active_Record'
       )

## Description

You can define the parent of the current object using `ClassBelongsTo()`. In the example below, we have a child table kids, and a parent table person. We have a link kids.person_id = persons.id. We create a child first, then link it to the parent

## Parameters

### $parentClass

The parent table in the relationship

### $childClass

The child table in the relationship

### $foreignKey

If, due to database design constraints, the key field in the child table is not named the same as that of the parent table, specify it here.

### $foreignClass

If the class name for the child table differs from that of the parent, for example there has been some extension of methods, specify it here

## Usage

    class kid extends ADOdb_Active_Record{};
    ADODB_Active_Record::ClassBelongsTo('kid','person','person_id','id');

    $ch = new kid(); // default tablename will be 'kids', with primary key 'id'
    $ch->Load('id=1');
    $p = $ch->person;
    if (!$p || $p->name_first != 'John') echo "Error loading belongsTo<br>";
    else echo "OK loading BelongTo<br>";

v5/activerecord/classbelongsto.txt · Last modified: 2016/01/12 17:15 by mnewnham

### Page Tools

- Show pagesource
- Old revisions
- Backlinks
- Rename Page
- Back to top