Changeset: ab0bb5129b29 for MonetDB
URL: https://dev.monetdb.org/hg/MonetDB/rev/ab0bb5129b29
Modified Files:
sql/backends/monet5/sql_upgrades.c
sql/scripts/91_information_schema.sql
sql/test/emptydb/Tests/check.stable.out
sql/test/emptydb/Tests/check.stable.out.32bit
sql/test/emptydb/Tests/check.stable.out.int128
Branch: Aug2024
Log Message:
Added cast() for the check_clause output column.
diffs (87 lines):
diff --git a/sql/backends/monet5/sql_upgrades.c
b/sql/backends/monet5/sql_upgrades.c
--- a/sql/backends/monet5/sql_upgrades.c
+++ b/sql/backends/monet5/sql_upgrades.c
@@ -7150,7 +7150,7 @@ sql_update_aug2024(Client c, mvc *sql, s
"
cast(NULL AS varchar(1)) AS CONSTRAINT_CATALOG,\n"
"
s.\"name\" AS CONSTRAINT_SCHEMA,\n"
"
k.\"name\" AS CONSTRAINT_NAME,\n"
- "
sys.check_constraint(s.\"name\", k.\"name\") AS CHECK_CLAUSE,\n"
+ "
cast(sys.check_constraint(s.\"name\", k.\"name\") AS varchar(2048)) AS
CHECK_CLAUSE,\n"
"
t.\"schema_id\" AS schema_id,\n"
"
t.\"id\" AS table_id,\n"
"
t.\"name\" AS table_name,\n"
diff --git a/sql/scripts/91_information_schema.sql
b/sql/scripts/91_information_schema.sql
--- a/sql/scripts/91_information_schema.sql
+++ b/sql/scripts/91_information_schema.sql
@@ -197,7 +197,7 @@ CREATE VIEW INFORMATION_SCHEMA.CHECK_CON
cast(NULL AS varchar(1)) AS CONSTRAINT_CATALOG,
s."name" AS CONSTRAINT_SCHEMA,
k."name" AS CONSTRAINT_NAME,
- sys.check_constraint(s."name", k."name") AS CHECK_CLAUSE,
+ cast(sys.check_constraint(s."name", k."name") AS varchar(2048)) AS
CHECK_CLAUSE,
-- MonetDB column extensions
t."schema_id" AS schema_id,
t."id" AS table_id,
diff --git a/sql/test/emptydb/Tests/check.stable.out
b/sql/test/emptydb/Tests/check.stable.out
--- a/sql/test/emptydb/Tests/check.stable.out
+++ b/sql/test/emptydb/Tests/check.stable.out
@@ -446,7 +446,7 @@ select 'null in fkeys.delete_action', de
% varchar, varchar, varchar, varchar, varchar,
boolean, varchar, varchar, varchar # type
% 11, 18, 34, 6812, 5, 5, 8, 8, 0 # length
[ "sys._tables", "information_schema", "character_sets", "create
view information_schema.character_sets as select cast(null as varchar(1)) as
character_set_catalog, cast(null as varchar(1)) as character_set_schema,
cast('UTF-8' as varchar(16)) as character_set_name, cast('ISO/IEC 10646:2021'
as varchar(20)) as character_repertoire, cast('UTF-8' as varchar(16)) as
form_of_use, cast(null as varchar(1)) as default_collate_catalog, cast(null as
varchar(1)) as default_collate_schema, cast(null as varchar(1)) as
default_collate_name;", "VIEW", true, "COMMIT", "WRITABLE", NULL
]
-[ "sys._tables", "information_schema", "check_constraints", "create
view information_schema.check_constraints as select cast(null as varchar(1)) as
constraint_catalog, s.\"name\" as constraint_schema, k.\"name\" as
constraint_name, sys.check_constraint(s.\"name\", k.\"name\") as check_clause,
t.\"schema_id\" as schema_id, t.\"id\" as table_id, t.\"name\" as table_name,
k.\"id\" as key_id from (select sk.\"id\", sk.\"table_id\", sk.\"name\" from
sys.\"keys\" sk where sk.\"type\" = 4 union all select tk.\"id\",
tk.\"table_id\", tk.\"name\" from tmp.\"keys\" tk where tk.\"type\" = 4) k
inner join (select st.\"id\", st.\"schema_id\", st.\"name\" from
sys.\"_tables\" st union all select tt.\"id\", tt.\"schema_id\", tt.\"name\"
from tmp.\"_tables\" tt) t on k.\"table_id\" = t.\"id\" inner join
sys.\"schemas\" s on t.\"schema_id\" = s.\"id\" order by s.\"name\",
t.\"name\", k.\"name\";", "VIEW", true, "COMMIT", "WRITABLE",
NULL ]
+[ "sys._tables", "information_schema", "check_constraints", "create
view information_schema.check_constraints as select cast(null as varchar(1)) as
constraint_catalog, s.\"name\" as constraint_schema, k.\"name\" as
constraint_name, cast(sys.check_constraint(s.\"name\", k.\"name\") as
varchar(2048)) as check_clause, t.\"schema_id\" as schema_id, t.\"id\" as
table_id, t.\"name\" as table_name, k.\"id\" as key_id from (select sk.\"id\",
sk.\"table_id\", sk.\"name\" from sys.\"keys\" sk where sk.\"type\" = 4 union
all select tk.\"id\", tk.\"table_id\", tk.\"name\" from tmp.\"keys\" tk where
tk.\"type\" = 4) k inner join (select st.\"id\", st.\"schema_id\", st.\"name\"
from sys.\"_tables\" st union all select tt.\"id\", tt.\"schema_id\",
tt.\"name\" from tmp.\"_tables\" tt) t on k.\"table_id\" = t.\"id\" inner join
sys.\"schemas\" s on t.\"schema_id\" = s.\"id\" order by s.\"name\",
t.\"name\", k.\"name\";", "VIEW", true, "COMMIT", "WRITABLE",
NULL ]
[ "sys._tables", "information_schema", "columns", "create view
information_schema.columns as select cast(null as varchar(1)) as table_catalog,
s.\"name\" as table_schema, t.\"name\" as table_name, c.\"name\" as
column_name, cast(1 + c.\"number\" as int) as ordinal_position, c.\"default\"
as column_default, cast(sys.ifthenelse(c.\"null\", 'YES', 'NO') as varchar(3))
as is_nullable, cast(sys.\"sql_datatype\"(c.\"type\", c.\"type_digits\",
c.\"type_scale\", true, true) as varchar(1024)) as data_type,
cast(sys.ifthenelse(c.\"type\" in ('varchar','clob','char','json','url','xml')
and c.\"type_digits\" > 0, c.\"type_digits\", null) as int) as
character_maximum_length, cast(sys.ifthenelse(c.\"type\" in
('varchar','clob','char','json','url','xml') and c.\"type_digits\" > 0, 4 *
cast(c.\"type_digits\" as bigint), null) as bigint) as character_octet_length,
cast(sys.ifthenelse(c.\"type\" in
('int','smallint','tinyint','bigint','hugeint','float','real','double','decimal','numeric','oid'),
c.\"
type_digits\", null) as int) as numeric_precision,
cast(sys.ifthenelse(c.\"type\" in
('int','smallint','tinyint','bigint','hugeint','float','real','double','oid'),
2, sys.ifthenelse(c.\"type\" in ('decimal','numeric'), 10, null)) as int) as
numeric_precision_radix, cast(sys.ifthenelse(c.\"type\" in
('int','smallint','tinyint','bigint','hugeint','float','real','double','decimal','numeric','oid'),
c.\"type_scale\", null) as int) as numeric_scale,
cast(sys.ifthenelse(c.\"type\" in
('date','timestamp','timestamptz','time','timetz'),
sys.ifthenelse(c.\"type_scale\" > 0, c.\"type_scale\" -1, 0), null) as int) as
datetime_precision, cast(sys.ifthenelse(c.\"type\" in
('day_interval','month_interval','sec_interval'),
sys.\"sql_datatype\"(c.\"type\", c.\"type_digits\", c.\"type_scale\", true,
true), null) as varchar(40)) as interval_type, cast(case c.\"type\" when
'day_interval' then 0 when 'month_interval' then 0 when 'sec_interval' then
(sys.ifthenelse(c.\"type_digits\" in (7, 10, 12, 13),
sys.ifthenelse(c.\"type_scale\" > 0, c.\"type_scale\", 3), 0)) else null end
as int) as interval_precision, cast(null as varchar(1)) as
character_set_catalog, cast(null as varchar(1)) as character_set_schema,
cast(sys.ifthenelse(c.\"type\" in ('varchar','clob','char','json','url','xml'),
'UTF-8', null) as varchar(16)) as character_set_name, cast(null as varchar(1))
as collation_catalog, cast(null as varchar(1)) as collation_schema, cast(null
as varchar(1)) as collation_name, cast(null as varchar(1)) as domain_catalog,
cast(null as varchar(1)) as domain_schema, cast(null as varchar(1)) as
domain_name, cast(null as varchar(1)) as udt_catalog, cast(null as varchar(1))
as udt_schema, cast(null as varchar(1)) as udt_name, cast(null as varchar(1))
as scope_catalog, cast(null as varchar(1)) as scope_schema, cast(null as
varchar(1)) as scope_name, cast(null as int) as maximum_cardinality, cast(null
as varchar(1)) as dtd_identifier, cast('NO' as varchar(3)) as
is_self_referencing, cast(sys.i
fthenelse(seq.\"name\" is null or c.\"null\", 'NO', 'YES') as varchar(3)) as
is_identity, seq.\"name\" as identity_generation, seq.\"start\" as
identity_start, seq.\"increment\" as identity_increment, seq.\"maxvalue\" as
identity_maximum, seq.\"minvalue\" as identity_minimum,
cast(sys.ifthenelse(seq.\"name\" is null, null, sys.ifthenelse(seq.\"cycle\",
'YES', 'NO')) as varchar(3)) as identity_cycle,
cast(sys.ifthenelse(seq.\"name\" is null, 'NO', 'YES') as varchar(3)) as
is_generated, cast(sys.ifthenelse(seq.\"name\" is null, null, c.\"default\") as
varchar(1024)) as generation_expression, cast('NO' as varchar(3)) as
is_system_time_period_start, cast('NO' as varchar(3)) as
is_system_time_period_end, cast('NO' as varchar(3)) as
system_time_period_timestamp_generation, cast(sys.ifthenelse(t.\"type\" in
(0,3,7,20,30), 'YES', 'NO') as varchar(3)) as is_updatable, cast(null as
varchar(1)) as declared_data_type, cast(null as int) as
declared_numeric_precision, cast(null as int) as declare
d_numeric_scale, t.\"schema_id\" as schema_id, c.\"table_id\" as table_id,
c.\"id\" as column_id, seq.\"id\" as sequence_id, t.\"system\" as is_system,
cm.\"remark\" as comments from sys.\"columns\" c inner join sys.\"tables\" t on
c.\"table_id\" = t.\"id\" inner join sys.\"schemas\" s on t.\"schema_id\" =
s.\"id\" left outer join sys.\"comments\" cm on c.\"id\" = cm.\"id\" left outer
join sys.\"sequences\" seq on ((seq.\"name\"||'\"') = substring(c.\"default\",
3 + sys.\"locate\"('\".\"seq_',c.\"default\",14))) order by s.\"name\",
t.\"name\", c.\"number\";", "VIEW", true, "COMMIT", "WRITABLE",
NULL ]
[ "sys._tables", "information_schema", "parameters", "create view
information_schema.parameters as select cast(null as varchar(1)) as
specific_catalog, s.\"name\" as specific_schema,
cast(f.\"name\"||'('||f.\"id\"||')' as varchar(270)) as specific_name,
cast(sys.ifthenelse((a.\"inout\" = 0 or f.\"type\" = 2), 1 + a.\"number\",
sys.ifthenelse(f.\"type\" = 1, a.\"number\", (1 + a.\"number\" -
f.count_out_cols))) as int) as ordinal_position,
cast(sys.ifthenelse(a.\"inout\" = 0, 'OUT', sys.ifthenelse(a.\"inout\" = 1,
'IN', 'INOUT')) as varchar(5)) as parameter_mode,
cast(sys.ifthenelse(a.\"inout\" = 0, 'YES', 'NO') as varchar(3)) as is_result,
cast(null as varchar(1)) as as_locator, a.\"name\" as parameter_name, cast(null
as varchar(1)) as from_sql_specific_catalog, cast(null as varchar(1)) as
from_sql_specific_schema, cast(null as varchar(1)) as from_sql_specific_name,
cast(null as varchar(1)) as to_sql_specific_catalog, cast(null as varchar(1))
as to_sql_specific_schema, cast(null as
varchar(1)) as to_sql_specific_name, cast(sys.\"sql_datatype\"(a.\"type\",
a.\"type_digits\", a.\"type_scale\", true, true) as varchar(1024)) as
data_type, cast(sys.ifthenelse(a.\"type\" in
('varchar','clob','char','json','url','xml') and a.\"type_digits\" > 0,
a.\"type_digits\", null) as int) as character_maximum_length,
cast(sys.ifthenelse(a.\"type\" in ('varchar','clob','char','json','url','xml')
and a.\"type_digits\" > 0, 4 * cast(a.\"type_digits\" as bigint), null) as
bigint) as character_octet_length, cast(null as varchar(1)) as
character_set_catalog, cast(null as varchar(1)) as character_set_schema,
cast(sys.ifthenelse(a.\"type\" in ('varchar','clob','char','json','url','xml'),
'UTF-8', null) as varchar(16)) as character_set_name, cast(null as varchar(1))
as collation_catalog, cast(null as varchar(1)) as collation_schema, cast(null
as varchar(1)) as collation_name, cast(sys.ifthenelse(a.\"type\" in
('int','smallint','tinyint','bigint','hugeint','float','real','double','decima
l','numeric','oid'), a.\"type_digits\", null) as int) as numeric_precision,
cast(sys.ifthenelse(a.\"type\" in
('int','smallint','tinyint','bigint','hugeint','float','real','double','oid'),
2, sys.ifthenelse(a.\"type\" in ('decimal','numeric'), 10, null)) as int) as
numeric_precision_radix, cast(sys.ifthenelse(a.\"type\" in
('int','smallint','tinyint','bigint','hugeint','float','real','double','decimal','numeric','oid'),
a.\"type_scale\", null) as int) as numeric_scale,
cast(sys.ifthenelse(a.\"type\" in
('date','timestamp','timestamptz','time','timetz'),
sys.ifthenelse(a.\"type_scale\" > 0, a.\"type_scale\" -1, 0), null) as int) as
datetime_precision, cast(sys.ifthenelse(a.\"type\" in
('day_interval','month_interval','sec_interval'),
sys.\"sql_datatype\"(a.\"type\", a.\"type_digits\", a.\"type_scale\", true,
true), null) as varchar(40)) as interval_type, cast(case a.\"type\" when
'day_interval' then 0 when 'month_interval' then 0 when 'sec_interval' then
(sys.ifthenelse(a.\"type_digi
ts\" in (7, 10, 12, 13), sys.ifthenelse(a.\"type_scale\" > 0,
a.\"type_scale\", 3), 0)) else null end as int) as interval_precision,
cast(null as varchar(1)) as udt_catalog, cast(null as varchar(1)) as
udt_schema, cast(null as varchar(1)) as udt_name, cast(null as varchar(1)) as
scope_catalog, cast(null as varchar(1)) as scope_schema, cast(null as
varchar(1)) as scope_name, cast(null as int) as maximum_cardinality, cast(null
as varchar(1)) as dtd_identifier, cast(null as varchar(1)) as
declared_data_type, cast(null as int) as declared_numeric_precision, cast(null
as int) as declared_numeric_scale, cast(null as varchar(1)) as
parameter_default, f.\"schema_id\" as schema_id, f.\"id\" as function_id,
a.\"id\" as arg_id, f.\"name\" as function_name, f.\"type\" as function_type,
f.\"system\" as is_system from sys.\"args\" a inner join (select fun.*, (select
count(*) from sys.args a0 where a0.inout = 0 and a0.func_id = fun.id) as
count_out_cols from sys.\"functions\" fun where fun.\"type\
" in (1, 2, 5, 7)) f on f.\"id\" = a.\"func_id\" inner join sys.\"schemas\" s
on s.\"id\" = f.\"schema_id\" order by s.\"name\", f.\"name\", f.\"id\",
a.\"inout\" desc, a.\"number\";", "VIEW", true, "COMMIT",
"WRITABLE", NULL ]
[ "sys._tables", "information_schema", "referential_constraints",
"create view information_schema.referential_constraints as select cast(null as
varchar(1)) as constraint_catalog, s.\"name\" as constraint_schema, fk.\"name\"
as constraint_name, cast(null as varchar(1)) as unique_constraint_catalog,
uks.\"name\" as unique_constraint_schema, uk.\"name\" as
unique_constraint_name, cast('FULL' as varchar(7)) as match_option,
fk.\"update_action\" as update_rule, fk.\"delete_action\" as delete_rule,
t.\"schema_id\" as fk_schema_id, t.\"id\" as fk_table_id, t.\"name\" as
fk_table_name, fk.\"id\" as fk_key_id, ukt.\"schema_id\" as uc_schema_id,
uk.\"table_id\" as uc_table_id, ukt.\"name\" as uc_table_name, uk.\"id\" as
uc_key_id from sys.\"fkeys\" fk inner join sys.\"tables\" t on t.\"id\" =
fk.\"table_id\" inner join sys.\"schemas\" s on s.\"id\" = t.\"schema_id\" left
outer join sys.\"keys\" uk on uk.\"id\" = fk.\"rkey\" left outer join
sys.\"tables\" ukt on ukt.\"id\" = uk.\"table_id\" l
eft outer join sys.\"schemas\" uks on uks.\"id\" = ukt.\"schema_id\" order by
s.\"name\", t.\"name\", fk.\"name\";", "VIEW", true, "COMMIT",
"WRITABLE", NULL ]
@@ -603,7 +603,7 @@ select 'null in fkeys.delete_action', de
[ "sys._columns", "information_schema", "check_constraints",
"constraint_catalog", "varchar", 1, 0, NULL, true, 0,
NULL, NULL ]
[ "sys._columns", "information_schema", "check_constraints",
"constraint_schema", "varchar", 1024, 0, NULL, true, 1,
NULL, NULL ]
[ "sys._columns", "information_schema", "check_constraints",
"constraint_name", "varchar", 1024, 0, NULL, true, 2,
NULL, NULL ]
-[ "sys._columns", "information_schema", "check_constraints",
"check_clause", "varchar", 0, 0, NULL, true, 3, NULL,
NULL ]
+[ "sys._columns", "information_schema", "check_constraints",
"check_clause", "varchar", 2048, 0, NULL, true, 3, NULL,
NULL ]
[ "sys._columns", "information_schema", "check_constraints",
"schema_id", "int", 31, 0, NULL, true, 4, NULL, NULL
]
[ "sys._columns", "information_schema", "check_constraints",
"table_id", "int", 31, 0, NULL, true, 5, NULL, NULL
]
[ "sys._columns", "information_schema", "check_constraints",
"table_name", "varchar", 1024, 0, NULL, true, 6, NULL,
NULL ]
diff --git a/sql/test/emptydb/Tests/check.stable.out.32bit
b/sql/test/emptydb/Tests/check.stable.out.32bit
--- a/sql/test/emptydb/Tests/check.stable.out.32bit
+++ b/sql/test/emptydb/Tests/check.stable.out.32bit
@@ -446,7 +446,7 @@ select 'null in fkeys.delete_action', de
% varchar, varchar, varchar, varchar, varchar,
boolean, varchar, varchar, varchar # type
% 11, 18, 34, 6812, 5, 5, 8, 8, 0 # length
[ "sys._tables", "information_schema", "character_sets", "create
view information_schema.character_sets as select cast(null as varchar(1)) as
character_set_catalog, cast(null as varchar(1)) as character_set_schema,
cast('UTF-8' as varchar(16)) as character_set_name, cast('ISO/IEC 10646:2021'
as varchar(20)) as character_repertoire, cast('UTF-8' as varchar(16)) as
form_of_use, cast(null as varchar(1)) as default_collate_catalog, cast(null as
varchar(1)) as default_collate_schema, cast(null as varchar(1)) as
default_collate_name;", "VIEW", true, "COMMIT", "WRITABLE", NULL
]
-[ "sys._tables", "information_schema", "check_constraints", "create
view information_schema.check_constraints as select cast(null as varchar(1)) as
constraint_catalog, s.\"name\" as constraint_schema, k.\"name\" as
constraint_name, sys.check_constraint(s.\"name\", k.\"name\") as check_clause,
t.\"schema_id\" as schema_id, t.\"id\" as table_id, t.\"name\" as table_name,
k.\"id\" as key_id from (select sk.\"id\", sk.\"table_id\", sk.\"name\" from
sys.\"keys\" sk where sk.\"type\" = 4 union all select tk.\"id\",
tk.\"table_id\", tk.\"name\" from tmp.\"keys\" tk where tk.\"type\" = 4) k
inner join (select st.\"id\", st.\"schema_id\", st.\"name\" from
sys.\"_tables\" st union all select tt.\"id\", tt.\"schema_id\", tt.\"name\"
from tmp.\"_tables\" tt) t on k.\"table_id\" = t.\"id\" inner join
sys.\"schemas\" s on t.\"schema_id\" = s.\"id\" order by s.\"name\",
t.\"name\", k.\"name\";", "VIEW", true, "COMMIT", "WRITABLE",
NULL ]
+[ "sys._tables", "information_schema", "check_constraints", "create
view information_schema.check_constraints as select cast(null as varchar(1)) as
constraint_catalog, s.\"name\" as constraint_schema, k.\"name\" as
constraint_name, cast(sys.check_constraint(s.\"name\", k.\"name\") as
varchar(2048)) as check_clause, t.\"schema_id\" as schema_id, t.\"id\" as
table_id, t.\"name\" as table_name, k.\"id\" as key_id from (select sk.\"id\",
sk.\"table_id\", sk.\"name\" from sys.\"keys\" sk where sk.\"type\" = 4 union
all select tk.\"id\", tk.\"table_id\", tk.\"name\" from tmp.\"keys\" tk where
tk.\"type\" = 4) k inner join (select st.\"id\", st.\"schema_id\", st.\"name\"
from sys.\"_tables\" st union all select tt.\"id\", tt.\"schema_id\",
tt.\"name\" from tmp.\"_tables\" tt) t on k.\"table_id\" = t.\"id\" inner join
sys.\"schemas\" s on t.\"schema_id\" = s.\"id\" order by s.\"name\",
t.\"name\", k.\"name\";", "VIEW", true, "COMMIT", "WRITABLE",
NULL ]
[ "sys._tables", "information_schema", "columns", "create view
information_schema.columns as select cast(null as varchar(1)) as table_catalog,
s.\"name\" as table_schema, t.\"name\" as table_name, c.\"name\" as
column_name, cast(1 + c.\"number\" as int) as ordinal_position, c.\"default\"
as column_default, cast(sys.ifthenelse(c.\"null\", 'YES', 'NO') as varchar(3))
as is_nullable, cast(sys.\"sql_datatype\"(c.\"type\", c.\"type_digits\",
c.\"type_scale\", true, true) as varchar(1024)) as data_type,
cast(sys.ifthenelse(c.\"type\" in ('varchar','clob','char','json','url','xml')
and c.\"type_digits\" > 0, c.\"type_digits\", null) as int) as
character_maximum_length, cast(sys.ifthenelse(c.\"type\" in
('varchar','clob','char','json','url','xml') and c.\"type_digits\" > 0, 4 *
cast(c.\"type_digits\" as bigint), null) as bigint) as character_octet_length,
cast(sys.ifthenelse(c.\"type\" in
('int','smallint','tinyint','bigint','hugeint','float','real','double','decimal','numeric','oid'),
c.\"
type_digits\", null) as int) as numeric_precision,
cast(sys.ifthenelse(c.\"type\" in
('int','smallint','tinyint','bigint','hugeint','float','real','double','oid'),
2, sys.ifthenelse(c.\"type\" in ('decimal','numeric'), 10, null)) as int) as
numeric_precision_radix, cast(sys.ifthenelse(c.\"type\" in
('int','smallint','tinyint','bigint','hugeint','float','real','double','decimal','numeric','oid'),
c.\"type_scale\", null) as int) as numeric_scale,
cast(sys.ifthenelse(c.\"type\" in
('date','timestamp','timestamptz','time','timetz'),
sys.ifthenelse(c.\"type_scale\" > 0, c.\"type_scale\" -1, 0), null) as int) as
datetime_precision, cast(sys.ifthenelse(c.\"type\" in
('day_interval','month_interval','sec_interval'),
sys.\"sql_datatype\"(c.\"type\", c.\"type_digits\", c.\"type_scale\", true,
true), null) as varchar(40)) as interval_type, cast(case c.\"type\" when
'day_interval' then 0 when 'month_interval' then 0 when 'sec_interval' then
(sys.ifthenelse(c.\"type_digits\" in (7, 10, 12, 13),
sys.ifthenelse(c.\"type_scale\" > 0, c.\"type_scale\", 3), 0)) else null end
as int) as interval_precision, cast(null as varchar(1)) as
character_set_catalog, cast(null as varchar(1)) as character_set_schema,
cast(sys.ifthenelse(c.\"type\" in ('varchar','clob','char','json','url','xml'),
'UTF-8', null) as varchar(16)) as character_set_name, cast(null as varchar(1))
as collation_catalog, cast(null as varchar(1)) as collation_schema, cast(null
as varchar(1)) as collation_name, cast(null as varchar(1)) as domain_catalog,
cast(null as varchar(1)) as domain_schema, cast(null as varchar(1)) as
domain_name, cast(null as varchar(1)) as udt_catalog, cast(null as varchar(1))
as udt_schema, cast(null as varchar(1)) as udt_name, cast(null as varchar(1))
as scope_catalog, cast(null as varchar(1)) as scope_schema, cast(null as
varchar(1)) as scope_name, cast(null as int) as maximum_cardinality, cast(null
as varchar(1)) as dtd_identifier, cast('NO' as varchar(3)) as
is_self_referencing, cast(sys.i
fthenelse(seq.\"name\" is null or c.\"null\", 'NO', 'YES') as varchar(3)) as
is_identity, seq.\"name\" as identity_generation, seq.\"start\" as
identity_start, seq.\"increment\" as identity_increment, seq.\"maxvalue\" as
identity_maximum, seq.\"minvalue\" as identity_minimum,
cast(sys.ifthenelse(seq.\"name\" is null, null, sys.ifthenelse(seq.\"cycle\",
'YES', 'NO')) as varchar(3)) as identity_cycle,
cast(sys.ifthenelse(seq.\"name\" is null, 'NO', 'YES') as varchar(3)) as
is_generated, cast(sys.ifthenelse(seq.\"name\" is null, null, c.\"default\") as
varchar(1024)) as generation_expression, cast('NO' as varchar(3)) as
is_system_time_period_start, cast('NO' as varchar(3)) as
is_system_time_period_end, cast('NO' as varchar(3)) as
system_time_period_timestamp_generation, cast(sys.ifthenelse(t.\"type\" in
(0,3,7,20,30), 'YES', 'NO') as varchar(3)) as is_updatable, cast(null as
varchar(1)) as declared_data_type, cast(null as int) as
declared_numeric_precision, cast(null as int) as declare
d_numeric_scale, t.\"schema_id\" as schema_id, c.\"table_id\" as table_id,
c.\"id\" as column_id, seq.\"id\" as sequence_id, t.\"system\" as is_system,
cm.\"remark\" as comments from sys.\"columns\" c inner join sys.\"tables\" t on
c.\"table_id\" = t.\"id\" inner join sys.\"schemas\" s on t.\"schema_id\" =
s.\"id\" left outer join sys.\"comments\" cm on c.\"id\" = cm.\"id\" left outer
join sys.\"sequences\" seq on ((seq.\"name\"||'\"') = substring(c.\"default\",
3 + sys.\"locate\"('\".\"seq_',c.\"default\",14))) order by s.\"name\",
t.\"name\", c.\"number\";", "VIEW", true, "COMMIT", "WRITABLE",
NULL ]
[ "sys._tables", "information_schema", "parameters", "create view
information_schema.parameters as select cast(null as varchar(1)) as
specific_catalog, s.\"name\" as specific_schema,
cast(f.\"name\"||'('||f.\"id\"||')' as varchar(270)) as specific_name,
cast(sys.ifthenelse((a.\"inout\" = 0 or f.\"type\" = 2), 1 + a.\"number\",
sys.ifthenelse(f.\"type\" = 1, a.\"number\", (1 + a.\"number\" -
f.count_out_cols))) as int) as ordinal_position,
cast(sys.ifthenelse(a.\"inout\" = 0, 'OUT', sys.ifthenelse(a.\"inout\" = 1,
'IN', 'INOUT')) as varchar(5)) as parameter_mode,
cast(sys.ifthenelse(a.\"inout\" = 0, 'YES', 'NO') as varchar(3)) as is_result,
cast(null as varchar(1)) as as_locator, a.\"name\" as parameter_name, cast(null
as varchar(1)) as from_sql_specific_catalog, cast(null as varchar(1)) as
from_sql_specific_schema, cast(null as varchar(1)) as from_sql_specific_name,
cast(null as varchar(1)) as to_sql_specific_catalog, cast(null as varchar(1))
as to_sql_specific_schema, cast(null as
varchar(1)) as to_sql_specific_name, cast(sys.\"sql_datatype\"(a.\"type\",
a.\"type_digits\", a.\"type_scale\", true, true) as varchar(1024)) as
data_type, cast(sys.ifthenelse(a.\"type\" in
('varchar','clob','char','json','url','xml') and a.\"type_digits\" > 0,
a.\"type_digits\", null) as int) as character_maximum_length,
cast(sys.ifthenelse(a.\"type\" in ('varchar','clob','char','json','url','xml')
and a.\"type_digits\" > 0, 4 * cast(a.\"type_digits\" as bigint), null) as
bigint) as character_octet_length, cast(null as varchar(1)) as
character_set_catalog, cast(null as varchar(1)) as character_set_schema,
cast(sys.ifthenelse(a.\"type\" in ('varchar','clob','char','json','url','xml'),
'UTF-8', null) as varchar(16)) as character_set_name, cast(null as varchar(1))
as collation_catalog, cast(null as varchar(1)) as collation_schema, cast(null
as varchar(1)) as collation_name, cast(sys.ifthenelse(a.\"type\" in
('int','smallint','tinyint','bigint','hugeint','float','real','double','decima
l','numeric','oid'), a.\"type_digits\", null) as int) as numeric_precision,
cast(sys.ifthenelse(a.\"type\" in
('int','smallint','tinyint','bigint','hugeint','float','real','double','oid'),
2, sys.ifthenelse(a.\"type\" in ('decimal','numeric'), 10, null)) as int) as
numeric_precision_radix, cast(sys.ifthenelse(a.\"type\" in
('int','smallint','tinyint','bigint','hugeint','float','real','double','decimal','numeric','oid'),
a.\"type_scale\", null) as int) as numeric_scale,
cast(sys.ifthenelse(a.\"type\" in
('date','timestamp','timestamptz','time','timetz'),
sys.ifthenelse(a.\"type_scale\" > 0, a.\"type_scale\" -1, 0), null) as int) as
datetime_precision, cast(sys.ifthenelse(a.\"type\" in
('day_interval','month_interval','sec_interval'),
sys.\"sql_datatype\"(a.\"type\", a.\"type_digits\", a.\"type_scale\", true,
true), null) as varchar(40)) as interval_type, cast(case a.\"type\" when
'day_interval' then 0 when 'month_interval' then 0 when 'sec_interval' then
(sys.ifthenelse(a.\"type_digi
ts\" in (7, 10, 12, 13), sys.ifthenelse(a.\"type_scale\" > 0,
a.\"type_scale\", 3), 0)) else null end as int) as interval_precision,
cast(null as varchar(1)) as udt_catalog, cast(null as varchar(1)) as
udt_schema, cast(null as varchar(1)) as udt_name, cast(null as varchar(1)) as
scope_catalog, cast(null as varchar(1)) as scope_schema, cast(null as
varchar(1)) as scope_name, cast(null as int) as maximum_cardinality, cast(null
as varchar(1)) as dtd_identifier, cast(null as varchar(1)) as
declared_data_type, cast(null as int) as declared_numeric_precision, cast(null
as int) as declared_numeric_scale, cast(null as varchar(1)) as
parameter_default, f.\"schema_id\" as schema_id, f.\"id\" as function_id,
a.\"id\" as arg_id, f.\"name\" as function_name, f.\"type\" as function_type,
f.\"system\" as is_system from sys.\"args\" a inner join (select fun.*, (select
count(*) from sys.args a0 where a0.inout = 0 and a0.func_id = fun.id) as
count_out_cols from sys.\"functions\" fun where fun.\"type\
" in (1, 2, 5, 7)) f on f.\"id\" = a.\"func_id\" inner join sys.\"schemas\" s
on s.\"id\" = f.\"schema_id\" order by s.\"name\", f.\"name\", f.\"id\",
a.\"inout\" desc, a.\"number\";", "VIEW", true, "COMMIT",
"WRITABLE", NULL ]
[ "sys._tables", "information_schema", "referential_constraints",
"create view information_schema.referential_constraints as select cast(null as
varchar(1)) as constraint_catalog, s.\"name\" as constraint_schema, fk.\"name\"
as constraint_name, cast(null as varchar(1)) as unique_constraint_catalog,
uks.\"name\" as unique_constraint_schema, uk.\"name\" as
unique_constraint_name, cast('FULL' as varchar(7)) as match_option,
fk.\"update_action\" as update_rule, fk.\"delete_action\" as delete_rule,
t.\"schema_id\" as fk_schema_id, t.\"id\" as fk_table_id, t.\"name\" as
fk_table_name, fk.\"id\" as fk_key_id, ukt.\"schema_id\" as uc_schema_id,
uk.\"table_id\" as uc_table_id, ukt.\"name\" as uc_table_name, uk.\"id\" as
uc_key_id from sys.\"fkeys\" fk inner join sys.\"tables\" t on t.\"id\" =
fk.\"table_id\" inner join sys.\"schemas\" s on s.\"id\" = t.\"schema_id\" left
outer join sys.\"keys\" uk on uk.\"id\" = fk.\"rkey\" left outer join
sys.\"tables\" ukt on ukt.\"id\" = uk.\"table_id\" l
eft outer join sys.\"schemas\" uks on uks.\"id\" = ukt.\"schema_id\" order by
s.\"name\", t.\"name\", fk.\"name\";", "VIEW", true, "COMMIT",
"WRITABLE", NULL ]
@@ -603,7 +603,7 @@ select 'null in fkeys.delete_action', de
[ "sys._columns", "information_schema", "check_constraints",
"constraint_catalog", "varchar", 1, 0, NULL, true, 0,
NULL, NULL ]
[ "sys._columns", "information_schema", "check_constraints",
"constraint_schema", "varchar", 1024, 0, NULL, true, 1,
NULL, NULL ]
[ "sys._columns", "information_schema", "check_constraints",
"constraint_name", "varchar", 1024, 0, NULL, true, 2,
NULL, NULL ]
-[ "sys._columns", "information_schema", "check_constraints",
"check_clause", "varchar", 0, 0, NULL, true, 3, NULL,
NULL ]
+[ "sys._columns", "information_schema", "check_constraints",
"check_clause", "varchar", 2048, 0, NULL, true, 3, NULL,
NULL ]
[ "sys._columns", "information_schema", "check_constraints",
"schema_id", "int", 31, 0, NULL, true, 4, NULL, NULL
]
[ "sys._columns", "information_schema", "check_constraints",
"table_id", "int", 31, 0, NULL, true, 5, NULL, NULL
]
[ "sys._columns", "information_schema", "check_constraints",
"table_name", "varchar", 1024, 0, NULL, true, 6, NULL,
NULL ]
diff --git a/sql/test/emptydb/Tests/check.stable.out.int128
b/sql/test/emptydb/Tests/check.stable.out.int128
--- a/sql/test/emptydb/Tests/check.stable.out.int128
+++ b/sql/test/emptydb/Tests/check.stable.out.int128
@@ -446,7 +446,7 @@ select 'null in fkeys.delete_action', de
% varchar, varchar, varchar, varchar, varchar,
boolean, varchar, varchar, varchar # type
% 11, 18, 34, 6812, 5, 5, 8, 8, 0 # length
[ "sys._tables", "information_schema", "character_sets", "create
view information_schema.character_sets as select cast(null as varchar(1)) as
character_set_catalog, cast(null as varchar(1)) as character_set_schema,
cast('UTF-8' as varchar(16)) as character_set_name, cast('ISO/IEC 10646:2021'
as varchar(20)) as character_repertoire, cast('UTF-8' as varchar(16)) as
form_of_use, cast(null as varchar(1)) as default_collate_catalog, cast(null as
varchar(1)) as default_collate_schema, cast(null as varchar(1)) as
default_collate_name;", "VIEW", true, "COMMIT", "WRITABLE", NULL
]
-[ "sys._tables", "information_schema", "check_constraints", "create
view information_schema.check_constraints as select cast(null as varchar(1)) as
constraint_catalog, s.\"name\" as constraint_schema, k.\"name\" as
constraint_name, sys.check_constraint(s.\"name\", k.\"name\") as check_clause,
t.\"schema_id\" as schema_id, t.\"id\" as table_id, t.\"name\" as table_name,
k.\"id\" as key_id from (select sk.\"id\", sk.\"table_id\", sk.\"name\" from
sys.\"keys\" sk where sk.\"type\" = 4 union all select tk.\"id\",
tk.\"table_id\", tk.\"name\" from tmp.\"keys\" tk where tk.\"type\" = 4) k
inner join (select st.\"id\", st.\"schema_id\", st.\"name\" from
sys.\"_tables\" st union all select tt.\"id\", tt.\"schema_id\", tt.\"name\"
from tmp.\"_tables\" tt) t on k.\"table_id\" = t.\"id\" inner join
sys.\"schemas\" s on t.\"schema_id\" = s.\"id\" order by s.\"name\",
t.\"name\", k.\"name\";", "VIEW", true, "COMMIT", "WRITABLE",
NULL ]
+[ "sys._tables", "information_schema", "check_constraints", "create
view information_schema.check_constraints as select cast(null as varchar(1)) as
constraint_catalog, s.\"name\" as constraint_schema, k.\"name\" as
constraint_name, cast(sys.check_constraint(s.\"name\", k.\"name\") as
varchar(2048)) as check_clause, t.\"schema_id\" as schema_id, t.\"id\" as
table_id, t.\"name\" as table_name, k.\"id\" as key_id from (select sk.\"id\",
sk.\"table_id\", sk.\"name\" from sys.\"keys\" sk where sk.\"type\" = 4 union
all select tk.\"id\", tk.\"table_id\", tk.\"name\" from tmp.\"keys\" tk where
tk.\"type\" = 4) k inner join (select st.\"id\", st.\"schema_id\", st.\"name\"
from sys.\"_tables\" st union all select tt.\"id\", tt.\"schema_id\",
tt.\"name\" from tmp.\"_tables\" tt) t on k.\"table_id\" = t.\"id\" inner join
sys.\"schemas\" s on t.\"schema_id\" = s.\"id\" order by s.\"name\",
t.\"name\", k.\"name\";", "VIEW", true, "COMMIT", "WRITABLE",
NULL ]
[ "sys._tables", "information_schema", "columns", "create view
information_schema.columns as select cast(null as varchar(1)) as table_catalog,
s.\"name\" as table_schema, t.\"name\" as table_name, c.\"name\" as
column_name, cast(1 + c.\"number\" as int) as ordinal_position, c.\"default\"
as column_default, cast(sys.ifthenelse(c.\"null\", 'YES', 'NO') as varchar(3))
as is_nullable, cast(sys.\"sql_datatype\"(c.\"type\", c.\"type_digits\",
c.\"type_scale\", true, true) as varchar(1024)) as data_type,
cast(sys.ifthenelse(c.\"type\" in ('varchar','clob','char','json','url','xml')
and c.\"type_digits\" > 0, c.\"type_digits\", null) as int) as
character_maximum_length, cast(sys.ifthenelse(c.\"type\" in
('varchar','clob','char','json','url','xml') and c.\"type_digits\" > 0, 4 *
cast(c.\"type_digits\" as bigint), null) as bigint) as character_octet_length,
cast(sys.ifthenelse(c.\"type\" in
('int','smallint','tinyint','bigint','hugeint','float','real','double','decimal','numeric','oid'),
c.\"
type_digits\", null) as int) as numeric_precision,
cast(sys.ifthenelse(c.\"type\" in
('int','smallint','tinyint','bigint','hugeint','float','real','double','oid'),
2, sys.ifthenelse(c.\"type\" in ('decimal','numeric'), 10, null)) as int) as
numeric_precision_radix, cast(sys.ifthenelse(c.\"type\" in
('int','smallint','tinyint','bigint','hugeint','float','real','double','decimal','numeric','oid'),
c.\"type_scale\", null) as int) as numeric_scale,
cast(sys.ifthenelse(c.\"type\" in
('date','timestamp','timestamptz','time','timetz'),
sys.ifthenelse(c.\"type_scale\" > 0, c.\"type_scale\" -1, 0), null) as int) as
datetime_precision, cast(sys.ifthenelse(c.\"type\" in
('day_interval','month_interval','sec_interval'),
sys.\"sql_datatype\"(c.\"type\", c.\"type_digits\", c.\"type_scale\", true,
true), null) as varchar(40)) as interval_type, cast(case c.\"type\" when
'day_interval' then 0 when 'month_interval' then 0 when 'sec_interval' then
(sys.ifthenelse(c.\"type_digits\" in (7, 10, 12, 13),
sys.ifthenelse(c.\"type_scale\" > 0, c.\"type_scale\", 3), 0)) else null end
as int) as interval_precision, cast(null as varchar(1)) as
character_set_catalog, cast(null as varchar(1)) as character_set_schema,
cast(sys.ifthenelse(c.\"type\" in ('varchar','clob','char','json','url','xml'),
'UTF-8', null) as varchar(16)) as character_set_name, cast(null as varchar(1))
as collation_catalog, cast(null as varchar(1)) as collation_schema, cast(null
as varchar(1)) as collation_name, cast(null as varchar(1)) as domain_catalog,
cast(null as varchar(1)) as domain_schema, cast(null as varchar(1)) as
domain_name, cast(null as varchar(1)) as udt_catalog, cast(null as varchar(1))
as udt_schema, cast(null as varchar(1)) as udt_name, cast(null as varchar(1))
as scope_catalog, cast(null as varchar(1)) as scope_schema, cast(null as
varchar(1)) as scope_name, cast(null as int) as maximum_cardinality, cast(null
as varchar(1)) as dtd_identifier, cast('NO' as varchar(3)) as
is_self_referencing, cast(sys.i
fthenelse(seq.\"name\" is null or c.\"null\", 'NO', 'YES') as varchar(3)) as
is_identity, seq.\"name\" as identity_generation, seq.\"start\" as
identity_start, seq.\"increment\" as identity_increment, seq.\"maxvalue\" as
identity_maximum, seq.\"minvalue\" as identity_minimum,
cast(sys.ifthenelse(seq.\"name\" is null, null, sys.ifthenelse(seq.\"cycle\",
'YES', 'NO')) as varchar(3)) as identity_cycle,
cast(sys.ifthenelse(seq.\"name\" is null, 'NO', 'YES') as varchar(3)) as
is_generated, cast(sys.ifthenelse(seq.\"name\" is null, null, c.\"default\") as
varchar(1024)) as generation_expression, cast('NO' as varchar(3)) as
is_system_time_period_start, cast('NO' as varchar(3)) as
is_system_time_period_end, cast('NO' as varchar(3)) as
system_time_period_timestamp_generation, cast(sys.ifthenelse(t.\"type\" in
(0,3,7,20,30), 'YES', 'NO') as varchar(3)) as is_updatable, cast(null as
varchar(1)) as declared_data_type, cast(null as int) as
declared_numeric_precision, cast(null as int) as declare
d_numeric_scale, t.\"schema_id\" as schema_id, c.\"table_id\" as table_id,
c.\"id\" as column_id, seq.\"id\" as sequence_id, t.\"system\" as is_system,
cm.\"remark\" as comments from sys.\"columns\" c inner join sys.\"tables\" t on
c.\"table_id\" = t.\"id\" inner join sys.\"schemas\" s on t.\"schema_id\" =
s.\"id\" left outer join sys.\"comments\" cm on c.\"id\" = cm.\"id\" left outer
join sys.\"sequences\" seq on ((seq.\"name\"||'\"') = substring(c.\"default\",
3 + sys.\"locate\"('\".\"seq_',c.\"default\",14))) order by s.\"name\",
t.\"name\", c.\"number\";", "VIEW", true, "COMMIT", "WRITABLE",
NULL ]
[ "sys._tables", "information_schema", "parameters", "create view
information_schema.parameters as select cast(null as varchar(1)) as
specific_catalog, s.\"name\" as specific_schema,
cast(f.\"name\"||'('||f.\"id\"||')' as varchar(270)) as specific_name,
cast(sys.ifthenelse((a.\"inout\" = 0 or f.\"type\" = 2), 1 + a.\"number\",
sys.ifthenelse(f.\"type\" = 1, a.\"number\", (1 + a.\"number\" -
f.count_out_cols))) as int) as ordinal_position,
cast(sys.ifthenelse(a.\"inout\" = 0, 'OUT', sys.ifthenelse(a.\"inout\" = 1,
'IN', 'INOUT')) as varchar(5)) as parameter_mode,
cast(sys.ifthenelse(a.\"inout\" = 0, 'YES', 'NO') as varchar(3)) as is_result,
cast(null as varchar(1)) as as_locator, a.\"name\" as parameter_name, cast(null
as varchar(1)) as from_sql_specific_catalog, cast(null as varchar(1)) as
from_sql_specific_schema, cast(null as varchar(1)) as from_sql_specific_name,
cast(null as varchar(1)) as to_sql_specific_catalog, cast(null as varchar(1))
as to_sql_specific_schema, cast(null as
varchar(1)) as to_sql_specific_name, cast(sys.\"sql_datatype\"(a.\"type\",
a.\"type_digits\", a.\"type_scale\", true, true) as varchar(1024)) as
data_type, cast(sys.ifthenelse(a.\"type\" in
('varchar','clob','char','json','url','xml') and a.\"type_digits\" > 0,
a.\"type_digits\", null) as int) as character_maximum_length,
cast(sys.ifthenelse(a.\"type\" in ('varchar','clob','char','json','url','xml')
and a.\"type_digits\" > 0, 4 * cast(a.\"type_digits\" as bigint), null) as
bigint) as character_octet_length, cast(null as varchar(1)) as
character_set_catalog, cast(null as varchar(1)) as character_set_schema,
cast(sys.ifthenelse(a.\"type\" in ('varchar','clob','char','json','url','xml'),
'UTF-8', null) as varchar(16)) as character_set_name, cast(null as varchar(1))
as collation_catalog, cast(null as varchar(1)) as collation_schema, cast(null
as varchar(1)) as collation_name, cast(sys.ifthenelse(a.\"type\" in
('int','smallint','tinyint','bigint','hugeint','float','real','double','decima
l','numeric','oid'), a.\"type_digits\", null) as int) as numeric_precision,
cast(sys.ifthenelse(a.\"type\" in
('int','smallint','tinyint','bigint','hugeint','float','real','double','oid'),
2, sys.ifthenelse(a.\"type\" in ('decimal','numeric'), 10, null)) as int) as
numeric_precision_radix, cast(sys.ifthenelse(a.\"type\" in
('int','smallint','tinyint','bigint','hugeint','float','real','double','decimal','numeric','oid'),
a.\"type_scale\", null) as int) as numeric_scale,
cast(sys.ifthenelse(a.\"type\" in
('date','timestamp','timestamptz','time','timetz'),
sys.ifthenelse(a.\"type_scale\" > 0, a.\"type_scale\" -1, 0), null) as int) as
datetime_precision, cast(sys.ifthenelse(a.\"type\" in
('day_interval','month_interval','sec_interval'),
sys.\"sql_datatype\"(a.\"type\", a.\"type_digits\", a.\"type_scale\", true,
true), null) as varchar(40)) as interval_type, cast(case a.\"type\" when
'day_interval' then 0 when 'month_interval' then 0 when 'sec_interval' then
(sys.ifthenelse(a.\"type_digi
ts\" in (7, 10, 12, 13), sys.ifthenelse(a.\"type_scale\" > 0,
a.\"type_scale\", 3), 0)) else null end as int) as interval_precision,
cast(null as varchar(1)) as udt_catalog, cast(null as varchar(1)) as
udt_schema, cast(null as varchar(1)) as udt_name, cast(null as varchar(1)) as
scope_catalog, cast(null as varchar(1)) as scope_schema, cast(null as
varchar(1)) as scope_name, cast(null as int) as maximum_cardinality, cast(null
as varchar(1)) as dtd_identifier, cast(null as varchar(1)) as
declared_data_type, cast(null as int) as declared_numeric_precision, cast(null
as int) as declared_numeric_scale, cast(null as varchar(1)) as
parameter_default, f.\"schema_id\" as schema_id, f.\"id\" as function_id,
a.\"id\" as arg_id, f.\"name\" as function_name, f.\"type\" as function_type,
f.\"system\" as is_system from sys.\"args\" a inner join (select fun.*, (select
count(*) from sys.args a0 where a0.inout = 0 and a0.func_id = fun.id) as
count_out_cols from sys.\"functions\" fun where fun.\"type\
" in (1, 2, 5, 7)) f on f.\"id\" = a.\"func_id\" inner join sys.\"schemas\" s
on s.\"id\" = f.\"schema_id\" order by s.\"name\", f.\"name\", f.\"id\",
a.\"inout\" desc, a.\"number\";", "VIEW", true, "COMMIT",
"WRITABLE", NULL ]
[ "sys._tables", "information_schema", "referential_constraints",
"create view information_schema.referential_constraints as select cast(null as
varchar(1)) as constraint_catalog, s.\"name\" as constraint_schema, fk.\"name\"
as constraint_name, cast(null as varchar(1)) as unique_constraint_catalog,
uks.\"name\" as unique_constraint_schema, uk.\"name\" as
unique_constraint_name, cast('FULL' as varchar(7)) as match_option,
fk.\"update_action\" as update_rule, fk.\"delete_action\" as delete_rule,
t.\"schema_id\" as fk_schema_id, t.\"id\" as fk_table_id, t.\"name\" as
fk_table_name, fk.\"id\" as fk_key_id, ukt.\"schema_id\" as uc_schema_id,
uk.\"table_id\" as uc_table_id, ukt.\"name\" as uc_table_name, uk.\"id\" as
uc_key_id from sys.\"fkeys\" fk inner join sys.\"tables\" t on t.\"id\" =
fk.\"table_id\" inner join sys.\"schemas\" s on s.\"id\" = t.\"schema_id\" left
outer join sys.\"keys\" uk on uk.\"id\" = fk.\"rkey\" left outer join
sys.\"tables\" ukt on ukt.\"id\" = uk.\"table_id\" l
eft outer join sys.\"schemas\" uks on uks.\"id\" = ukt.\"schema_id\" order by
s.\"name\", t.\"name\", fk.\"name\";", "VIEW", true, "COMMIT",
"WRITABLE", NULL ]
@@ -603,7 +603,7 @@ select 'null in fkeys.delete_action', de
[ "sys._columns", "information_schema", "check_constraints",
"constraint_catalog", "varchar", 1, 0, NULL, true, 0,
NULL, NULL ]
[ "sys._columns", "information_schema", "check_constraints",
"constraint_schema", "varchar", 1024, 0, NULL, true, 1,
NULL, NULL ]
[ "sys._columns", "information_schema", "check_constraints",
"constraint_name", "varchar", 1024, 0, NULL, true, 2,
NULL, NULL ]
-[ "sys._columns", "information_schema", "check_constraints",
"check_clause", "varchar", 0, 0, NULL, true, 3, NULL,
NULL ]
+[ "sys._columns", "information_schema", "check_constraints",
"check_clause", "varchar", 2048, 0, NULL, true, 3, NULL,
NULL ]
[ "sys._columns", "information_schema", "check_constraints",
"schema_id", "int", 31, 0, NULL, true, 4, NULL, NULL
]
[ "sys._columns", "information_schema", "check_constraints",
"table_id", "int", 31, 0, NULL, true, 5, NULL, NULL
]
[ "sys._columns", "information_schema", "check_constraints",
"table_name", "varchar", 1024, 0, NULL, true, 6, NULL,
NULL ]
_______________________________________________
checkin-list mailing list -- [email protected]
To unsubscribe send an email to [email protected]