00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #include <config.h>
00022
00023 #include <drizzled/statement/catalog.h>
00024 #include <drizzled/plugin/client.h>
00025 #include <drizzled/session.h>
00026 #include <drizzled/plugin/catalog.h>
00027
00028 namespace drizzled
00029 {
00030
00031 namespace statement
00032 {
00033
00034 namespace catalog
00035 {
00036
00037 Create::Create(Session *in_session, drizzled::lex_string_t &arg) :
00038 Catalog(in_session, arg)
00039 {
00040 }
00041
00042 bool Create::authorized() const
00043 {
00044 if (session().getClient()->isConsole())
00045 {
00046 return true;
00047 }
00048
00049 my_error(ER_CATALOG_CANNOT_CREATE_PERMISSION, identifier());
00050
00051 return false;
00052 }
00053
00054 bool Create::perform() const
00055 {
00056 return plugin::Catalog::create(identifier());
00057 }
00058
00059 }
00060 }
00061 }