# Getting started accessing databases

Whether you have never worked with a database or are a seasoned professional, building applications that communicate with a database is easy in Xojo.

## Database Beginners

If you're entirely new to databases or specifically SQL databases, you'll want to learn the `basic database terminology</topics/databases/database_basics_for_beginners>` and then understanding how to connect to a database and how to `add, update and delete rows</topics/databases/adding-_updating_and_deleting_rows>`.

## Creating a database

If you don't already have a database to which you wish to connect, you'll need to create one. Creating a database is not something that Xojo does and it very much depends on which database you are using. [TablePlus](https://tableplus.com) makes it easy to create databases for all the `database engines that Xojo supports</topics/databases/supported_engines/index>` and runs on Linux, macOS, Windows and even iOS.

## Connecting to a database

The easiest way to connect to a database is using the `DatabaseConnection</topics/databases/connecting_to_a_database>` object as this requires no code. You can also connect to a database via code using the `Connect<database.connect>` method of the `Database</api/databases/database>` class.

## Making all or nothing updates to a database

Database engines allow you to make changes to multiple rows including adding new rows and deleting others and decide afterwards whether or not you wish to keep these changes or discard them. This is accomplished through something called a `Transaction</topics/databases/transactions>`.

## Next steps

Once you understand the basics, have created a database and have a connection to your database, the next step is to start using it in your project. Some additional items to explore are:

| Item                                                        | Description                                                                                                                              |
|-------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------|
| `DBKit</topics/databases/dbkit>`                            | A set of classes that make it easy to build database applications.                                                                       |
| `MySQLCommunityServer</api/databases/mysqlcommunityserver>` | The class used to access a database on a MySQL and MariaDB database servers.                                                             |
| `ODBCDatabase</api/databases/odbcdatabase>`                 | The class used to access a database via an ODBC driver. This will allow you to connect to databases that Xojo does not natively support. |
| `PostgreSQLDatabase</api/databases/postgresqldatabase>`     | The class used to access a database on a PostgreSQL database server.                                                                     |
| `SQLiteDatabase</api/databases/sqlitedatabase>`             | The class used to access a SQLite database.                                                                                              |
| `Database</api/databases/database>`                         | The parent class of all the provided database classes.                                                                                   |

<div class="tip">

<div class="title">

Tip

</div>

If you need to host a database on the Internet, `Xojo Cloud</topics/xojo_cloud/introduction_to_xojo_cloud>` provides support for MySQL, PostgresSQL and SQlite.

</div>

## More Resources

There are videos available that explain details about specific database engines.

- [Using SQLite](https://youtu.be/ut9bMJWXb_M)
- [SQLite](https://youtu.be/PQ36OKeIZMM)
- [PostgreSQL](https://youtu.be/3zNeePbHn48)
- [Designing Delightful Databases](https://youtu.be/SkoMsW0bRpE)
- [Database Development](https://youtu.be/GFp1TZ1jk5Q)

## Example projects

There are several database example projects included with Xojo. Choose File \> New Project, click on Examples in the New Project dialog box and then explore the Databases folder.
