### Declaring the Schema Name/Database Name

In most databases, the fully qualified name of a column is,

```sql
schemaName.tableName.columnName
```

This library only supports compile-time type safety for `tableName.columnName` (at the moment).

-----

Queries generated by this library will normally only output `tableName.columnName`.

The `schemaName` is left implicit. This means the `schemaName` used should be the one your database connection session is using.

This is usually fine... Unless you need queries that use tables from multiple schemas.

-----

Calling `.setDatabaseName()` will make this library output `schemaName.tableName.columnName`.

However, during compile-time, the query builder will still think `schemaA.x` and `schemaB.x` are the same table.

To use both in the same query, you will need to alias (`.as()`) one of the tables.

-----

To explicitly set the schema name of a table,

```ts
import * as sql from "typed-orm";
import * as tm from "type-mapping/fluent";

const COLUMNS = sql.table("COLUMNS")
    .addColumns({
        TABLE_CATALOG : tm.mysql.varChar(512),
        TABLE_SCHEMA : tm.mysql.varChar(64),
        TABLE_NAME : tm.mysql.varChar(64),
        COLUMN_NAME : tm.mysql.varChar(64),
        /* snip other columns of INFORMATION_SCHEMA.COLUMNS */
    })
    .setDatabaseName("INFORMATION_SCHEMA");
```