# name: test/sql/function/autocomplete/create_table.test # description: Test sql_auto_complete # group: [autocomplete] require autocomplete # CREATE query II FROM sql_auto_complete('CR') LIMIT 1; ---- CREATE 0 # match case query II FROM sql_auto_complete('cr') LIMIT 1; ---- create 0 query II FROM sql_auto_complete('CREATE TA') LIMIT 1; ---- TABLE 7 query II FROM sql_auto_complete('CREATE T') LIMIT 1; ---- TABLE 7 query II FROM sql_auto_complete('CREATE OR RE') LIMIT 1; ---- REPLACE 10 query II FROM sql_auto_complete('create ta') LIMIT 1; ---- table 7 # suggest a type query II FROM sql_auto_complete('create table tbl(i INTE') LIMIT 1; ---- INTEGER 19 # suggest a type in a list query II FROM sql_auto_complete('create table tbl(i INTEGER, j INTE') LIMIT 1; ---- INTEGER 30 # suggest a constraint query II FROM sql_auto_complete('create table tbl(i INTEGER PRI') LIMIT 1; ---- PRIMARY 27 query II FROM sql_auto_complete('create table tbl(i INTEGER PRIMARY KE') LIMIT 1; ---- KEY 35 query II FROM sql_auto_complete('create table tbl(i INTEGER UNIQ') LIMIT 1; ---- UNIQUE 27 query II FROM sql_auto_complete('create table tbl(i INTEGER UNIQUE NO') LIMIT 1; ---- NOT 34 query II FROM sql_auto_complete('create table tbl(i INTEGER UNIQUE NOT N') LIMIT 1; ---- NULL 38 # top-level constraints query II FROM sql_auto_complete('create table tbl(i INTEGER, PRI') LIMIT 1; ---- PRIMARY 28 statement ok CREATE SCHEMA abcdefgh; # suggest a schema name query II FROM sql_auto_complete('CREATE TABLE abcd') LIMIT 1; ---- abcdefgh. 13 query II FROM sql_auto_complete('CREATE TABLE abcdefgh.') LIMIT 1; ---- . 21 # we suggest the original schema query II FROM sql_auto_complete('CREATE TABLE ABCD') LIMIT 1; ---- abcdefgh. 13 # what if the schema is a keyword? statement ok CREATE SCHEMA "SCHEMA"; query II FROM sql_auto_complete('CREATE TABLE SC') LIMIT 1; ---- "SCHEMA". 13 # suggest a catalog statement ok ATTACH ':memory:' AS attached_in_memory; query II FROM sql_auto_complete('CREATE TABLE attac') LIMIT 1; ---- attached_in_memory. 13 query II FROM sql_auto_complete('CREATE TABLE attached_in_memory.a') LIMIT 1; ---- abcdefgh. 32 statement error FROM sql_auto_complete(NULL); ---- Binder Error: sql_auto_complete first parameter cannot be NULL