# table\_exists

## Syntax

```
table_exists(in_db_name,in_table_name, out_table_type)

# in_db_name VARCHAR(64)
# in_table_name VARCHAR(64)
# out_table_type ENUM('', 'BASE TABLE', 'VIEW', 'TEMPORARY')
```

## Description

`table_exists` is a [stored procedure](https://mariadb.com/docs/server/server-usage/stored-routines/stored-procedures) available with the [Sys Schema](https://mariadb.com/docs/server/reference/system-tables/sys-schema).

Given a database *in\_db\_name* and table name *in\_table\_name*, returns the table type in the `OUT` parameter *out\_table\_type*. The return value is an `ENUM` field containing one of:

* '' - the table does not exist
* '`BASE TABLE`' - a regular table
* '`VIEW`' - a view
* '`TEMPORARY`' - a temporary table

## Examples

```sql
CALL sys.table_exists('mysql', 'time_zone', @table_type); SELECT @table_type;
+-------------+
| @table_type |
+-------------+
| BASE TABLE  |
+-------------+

CALL sys.table_exists('mysql', 'user', @table_type); SELECT @table_type;
+-------------+
| @table_type |
+-------------+
| VIEW        |
+-------------+
```

<sub>*This page is licensed: CC BY-SA / Gnu FDL*</sub>

{% @marketo/form formId="4316" %}
