mirror of
https://github.com/ClickHouse/ClickHouse.git
synced 2024-11-22 23:52:03 +00:00
Merge pull request #58841 from yariks5s/dictionary_table_exception_fix
Fixing exceptions when table/dictionary already exist
This commit is contained in:
commit
5ba82eed81
@ -1435,8 +1435,14 @@ bool InterpreterCreateQuery::doCreateTable(ASTCreateQuery & create,
|
|||||||
interpreter.execute();
|
interpreter.execute();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
throw Exception(storage_already_exists_error_code,
|
{
|
||||||
"{} {}.{} already exists", storage_name, backQuoteIfNeed(create.getDatabase()), backQuoteIfNeed(create.getTable()));
|
if (database->getTable(create.getTable(), getContext())->isDictionary())
|
||||||
|
throw Exception(ErrorCodes::DICTIONARY_ALREADY_EXISTS,
|
||||||
|
"Dictionary {}.{} already exists", backQuoteIfNeed(create.getDatabase()), backQuoteIfNeed(create.getTable()));
|
||||||
|
else
|
||||||
|
throw Exception(ErrorCodes::TABLE_ALREADY_EXISTS,
|
||||||
|
"Table {}.{} already exists", backQuoteIfNeed(create.getDatabase()), backQuoteIfNeed(create.getTable()));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else if (!create.attach)
|
else if (!create.attach)
|
||||||
{
|
{
|
||||||
|
@ -0,0 +1,6 @@
|
|||||||
|
CREATE TABLE test_table (i Int64) engine=MergeTree order by i;
|
||||||
|
CREATE DICTIONARY test_dict (y String, value UInt64 DEFAULT 0) PRIMARY KEY y SOURCE(CLICKHOUSE(TABLE 'test_table')) LAYOUT(DIRECT());
|
||||||
|
CREATE TABLE test_dict (y Int64) engine=MergeTree order by y; -- { serverError DICTIONARY_ALREADY_EXISTS }
|
||||||
|
CREATE DICTIONARY test_table (y String, value UInt64 DEFAULT 0) PRIMARY KEY y SOURCE(CLICKHOUSE(TABLE 'test_table')) LAYOUT(DIRECT()); -- { serverError TABLE_ALREADY_EXISTS }
|
||||||
|
CREATE DICTIONARY test_dict (y String, value UInt64 DEFAULT 0) PRIMARY KEY y SOURCE(CLICKHOUSE(TABLE 'test_table')) LAYOUT(DIRECT()); -- { serverError DICTIONARY_ALREADY_EXISTS }
|
||||||
|
CREATE TABLE test_table (y Int64) engine=MergeTree order by y; -- { serverError TABLE_ALREADY_EXISTS }
|
Loading…
Reference in New Issue
Block a user