# Room

added in[version 1.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  
belongs to Maven artifact android.arch.persistence.room:runtime:1.1.0-beta2  
Summary:[Constants](https://developer.android.com/reference/android/arch/persistence/room/Room#constants)\|[Ctors](https://developer.android.com/reference/android/arch/persistence/room/Room#pubctors)\|[Methods](https://developer.android.com/reference/android/arch/persistence/room/Room#pubmethods)\|[Inherited Methods](https://developer.android.com/reference/android/arch/persistence/room/Room#inhmethods)  

# Room

| The`android.arch`Architecture Components packages are no longer maintained. They have been superseded by the corresponding[androidx.\*](https://developer.android.com/jetpack/androidx/migrate)packages. See[androidx.room.Room](https://developer.android.com/reference/androidx/room/Room)instead.

`
public


class
Room
`  
`

extends Object


``


`

|---|------------------------------------|
| java.lang.Object                      ||
| ↳ | android.arch.persistence.room.Room |

<br />

*** ** * ** ***

Utility class for Room.

## Summary

|                                                                                      ### Constants                                                                                      ||
|----------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `String` | [MASTER_TABLE_NAME](https://developer.android.com/reference/android/arch/persistence/room/Room#MASTER_TABLE_NAME) The master table where room keeps its metadata information. |

|                                       ### Public constructors                                        ||
|---------------------------------------------------------------------------------------------------|---|
| ` `[Room](https://developer.android.com/reference/android/arch/persistence/room/Room#Room())`() ` |

|                                                                                                                                                                                                                                                                                             ### Public methods                                                                                                                                                                                                                                                                                              ||
|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| ` static <T extends `[RoomDatabase](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase)`> `[Builder](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase.Builder)`<T>` | ` `[databaseBuilder](https://developer.android.com/reference/android/arch/persistence/room/Room#databaseBuilder(android.content.Context, java.lang.Class<T>, java.lang.String))`(`[Context](https://developer.android.com/reference/android/content/Context.html)` context, Class<T> klass, String name) ` Creates a RoomDatabase.Builder for a persistent database. |
| ` static <T extends `[RoomDatabase](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase)`> `[Builder](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase.Builder)`<T>` | ` `[inMemoryDatabaseBuilder](https://developer.android.com/reference/android/arch/persistence/room/Room#inMemoryDatabaseBuilder(android.content.Context, java.lang.Class<T>))`(`[Context](https://developer.android.com/reference/android/content/Context.html)` context, Class<T> klass) ` Creates a RoomDatabase.Builder for an in memory database.                |

| ### Inherited methods |
|-----------------------|---|
| From class` java.lang.Object ` |-------------------|-------------------------------| | ` Object`         | ` clone() `                   | | ` boolean`        | ` equals(Object arg0) `       | | ` void`           | ` finalize() `                | | ` final Class<?>` | ` getClass() `                | | ` int`            | ` hashCode() `                | | ` final void`     | ` notify() `                  | | ` final void`     | ` notifyAll() `               | | ` String`         | ` toString() `                | | ` final void`     | ` wait(long arg0, int arg1) ` | | ` final void`     | ` wait(long arg0) `           | | ` final void`     | ` wait() `                    | ||

## Constants

### MASTER_TABLE_NAME

added in[version 1.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
String MASTER_TABLE_NAME
```

The master table where room keeps its metadata information.

<br />

Constant Value: "room_master_table"

## Public constructors

### Room

added in[version 1.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
Room ()
```

<br />

<br />

## Public methods

### databaseBuilder

added in[version 1.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
Builder<T> databaseBuilder (Context context, 
                Class<T> klass, 
                String name)
```

Creates a RoomDatabase.Builder for a persistent database. Once a database is built, you should keep a reference to it and re-use it.

<br />

|                                                                                                                                  Parameters                                                                                                                                   ||
|-----------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `context` | `Context`: The context for the database. This is usually the Application context. <br />                                                                                                                                                                           |
| `klass`   | `Class`: The abstract class which is annotated with[Database](https://developer.android.com/reference/android/arch/persistence/room/Database)and extends[RoomDatabase](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase). <br /> |
| `name`    | `String`: The name of the database file. <br />                                                                                                                                                                                                                    |

|                                                                                        Returns                                                                                        ||
|------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------|
| [Builder](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase.Builder)`<T>` | A`RoomDatabaseBuilder<T>`which you can use to create the database. <br /> |

### inMemoryDatabaseBuilder

added in[version 1.1.0](https://developer.android.com/topic/libraries/support-library/revisions)  

```
Builder<T> inMemoryDatabaseBuilder (Context context, 
                Class<T> klass)
```

Creates a RoomDatabase.Builder for an in memory database. Information stored in an in memory database disappears when the process is killed. Once a database is built, you should keep a reference to it and re-use it.

<br />

|                                                                                                                                  Parameters                                                                                                                                   ||
|-----------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| `context` | `Context`: The context for the database. This is usually the Application context. <br />                                                                                                                                                                           |
| `klass`   | `Class`: The abstract class which is annotated with[Database](https://developer.android.com/reference/android/arch/persistence/room/Database)and extends[RoomDatabase](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase). <br /> |

|                                                                                        Returns                                                                                        ||
|------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------|
| [Builder](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase.Builder)`<T>` | A`RoomDatabaseBuilder<T>`which you can use to create the database. <br /> |

-

  ## Annotations

  - [ColumnInfo](https://developer.android.com/reference/android/arch/persistence/room/ColumnInfo)
  - [ColumnInfo.Collate](https://developer.android.com/reference/android/arch/persistence/room/ColumnInfo.Collate)
  - [ColumnInfo.SQLiteTypeAffinity](https://developer.android.com/reference/android/arch/persistence/room/ColumnInfo.SQLiteTypeAffinity)
  - [Dao](https://developer.android.com/reference/android/arch/persistence/room/Dao)
  - [Database](https://developer.android.com/reference/android/arch/persistence/room/Database)
  - [Delete](https://developer.android.com/reference/android/arch/persistence/room/Delete)
  - [Embedded](https://developer.android.com/reference/android/arch/persistence/room/Embedded)
  - [Entity](https://developer.android.com/reference/android/arch/persistence/room/Entity)
  - [ForeignKey](https://developer.android.com/reference/android/arch/persistence/room/ForeignKey)
  - [ForeignKey.Action](https://developer.android.com/reference/android/arch/persistence/room/ForeignKey.Action)
  - [Ignore](https://developer.android.com/reference/android/arch/persistence/room/Ignore)
  - [Index](https://developer.android.com/reference/android/arch/persistence/room)
  - [Insert](https://developer.android.com/reference/android/arch/persistence/room/Insert)
  - [OnConflictStrategy](https://developer.android.com/reference/android/arch/persistence/room/OnConflictStrategy)
  - [PrimaryKey](https://developer.android.com/reference/android/arch/persistence/room/PrimaryKey)
  - [Query](https://developer.android.com/reference/android/arch/persistence/room/Query)
  - [RawQuery](https://developer.android.com/reference/android/arch/persistence/room/RawQuery)
  - [Relation](https://developer.android.com/reference/android/arch/persistence/room/Relation)
  - [SkipQueryVerification](https://developer.android.com/reference/android/arch/persistence/room/SkipQueryVerification)
  - [Transaction](https://developer.android.com/reference/android/arch/persistence/room/Transaction)
  - [TypeConverter](https://developer.android.com/reference/android/arch/persistence/room/TypeConverter)
  - [TypeConverters](https://developer.android.com/reference/android/arch/persistence/room/TypeConverters)
  - [Update](https://developer.android.com/reference/android/arch/persistence/room/Update)
-

  ## Classes

  - [DatabaseConfiguration](https://developer.android.com/reference/android/arch/persistence/room/DatabaseConfiguration)
  - [InvalidationTracker](https://developer.android.com/reference/android/arch/persistence/room/InvalidationTracker)
  - [InvalidationTracker.Observer](https://developer.android.com/reference/android/arch/persistence/room/InvalidationTracker.Observer)
  - [Room](https://developer.android.com/reference/android/arch/persistence/room/Room)
  - [RoomDatabase](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase)
  - [RoomDatabase.Builder](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase.Builder)
  - [RoomDatabase.Callback](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase.Callback)
  - [RoomDatabase.MigrationContainer](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase.MigrationContainer)
  - [RoomWarnings](https://developer.android.com/reference/android/arch/persistence/room/RoomWarnings)
  - [RxRoom](https://developer.android.com/reference/android/arch/persistence/room/RxRoom)
-

  ## Enums

  - [RoomDatabase.JournalMode](https://developer.android.com/reference/android/arch/persistence/room/RoomDatabase.JournalMode)
-

  ## Exceptions

  - [EmptyResultSetException](https://developer.android.com/reference/android/arch/persistence/room/EmptyResultSetException)