MCPcopy Create free account
hub / github.com/ByConity/ByConity / createView

Function createView

src/Interpreters/CnchSystemLogHelper.cpp:312–339  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

310}
311
312bool createView(
313 ContextPtr global_context,
314 const String & database,
315 const String & table,
316 Poco::Logger * log)
317{
318 bool ret = true;
319
320 try
321 {
322 auto query_context = Context::createCopy(global_context);
323 query_context->makeSessionContext();
324 query_context->makeQueryContext();
325
326 String create_view_query = "CREATE VIEW IF NOT EXISTS system." + table + " AS SELECT * from " + database + "." + table;
327 ParserCreateQuery create_parser;
328 ASTPtr create_view_ast = parseQuery(create_parser, create_view_query, 0, DBMS_DEFAULT_MAX_PARSER_DEPTH);
329 InterpreterCreateQuery create_interpreter(create_view_ast, query_context);
330 create_interpreter.execute();
331 LOG_INFO(log, "Create view with query {} successful!", create_view_query);
332 }
333 catch (Exception & e)
334 {
335 LOG_DEBUG(log, "Failed to create view for {}.{}, met exception {}", database, table, e.message());
336 ret = false;
337 }
338 return ret;
339}
340
341}/// end namespace

Callers 7

filterMethod · 0.85
permuteMethod · 0.85
indexImplMethod · 0.85
replicateMethod · 0.85
scatterMethod · 0.85
cloneResizedMethod · 0.85
prepareDatabaseAndTableFunction · 0.85

Calls 4

parseQueryFunction · 0.85
makeSessionContextMethod · 0.80
makeQueryContextMethod · 0.45
executeMethod · 0.45

Tested by

no test coverage detected