mirror of
https://github.com/nsnail/FreeSql.git
synced 2025-04-22 10:42:52 +08:00
- 修复 PostgreSQL CodeFirst/DbFirst 系统表的版本兼容问题;
This commit is contained in:
parent
90b2418fb0
commit
1d09b7fba3
@ -182,8 +182,8 @@ t.typname,
|
|||||||
case when a.atttypmod > 0 and a.atttypmod < 32767 then a.atttypmod - 4 else a.attlen end len,
|
case when a.atttypmod > 0 and a.atttypmod < 32767 then a.atttypmod - 4 else a.attlen end len,
|
||||||
case when t.typelem > 0 and t.typinput::varchar = 'array_in' then t2.typname else t.typname end,
|
case when t.typelem > 0 and t.typinput::varchar = 'array_in' then t2.typname else t.typname end,
|
||||||
case when a.attnotnull then '0' else '1' end as is_nullable,
|
case when a.attnotnull then '0' else '1' end as is_nullable,
|
||||||
coalesce((select 1 from pg_sequences where lower(sequencename) = lower({0} || '_' || {1} || '_' || a.attname || '_sequence_name') limit 1),0) is_identity,
|
|
||||||
--e.adsrc,
|
--e.adsrc,
|
||||||
|
(select pg_get_expr(adbin, adrelid) from pg_attrdef where adrelid = e.adrelid) is_identity,
|
||||||
a.attndims,
|
a.attndims,
|
||||||
d.description as comment
|
d.description as comment
|
||||||
from pg_class c
|
from pg_class c
|
||||||
@ -219,7 +219,7 @@ where ns.nspname = {0} and c.relname = {1}", tboldname ?? tbname);
|
|||||||
sqlType = string.Concat(sqlType),
|
sqlType = string.Concat(sqlType),
|
||||||
max_length = long.Parse(string.Concat(a[2])),
|
max_length = long.Parse(string.Concat(a[2])),
|
||||||
is_nullable = string.Concat(a[4]) == "1",
|
is_nullable = string.Concat(a[4]) == "1",
|
||||||
is_identity = string.Concat(a[5]) == "1", //string.Concat(a[5]).StartsWith(@"nextval('") && string.Concat(a[5]).EndsWith(@"'::regclass)"),
|
is_identity = string.Concat(a[5]).StartsWith(@"nextval('") && string.Concat(a[5]).EndsWith(@"'::regclass)"),
|
||||||
attndims,
|
attndims,
|
||||||
comment = string.Concat(a[7])
|
comment = string.Concat(a[7])
|
||||||
};
|
};
|
||||||
|
@ -209,8 +209,8 @@ t.typname,
|
|||||||
case when a.atttypmod > 0 and a.atttypmod < 32767 then a.atttypmod - 4 else a.attlen end len,
|
case when a.atttypmod > 0 and a.atttypmod < 32767 then a.atttypmod - 4 else a.attlen end len,
|
||||||
case when t.typelem = 0 then t.typname else t2.typname end,
|
case when t.typelem = 0 then t.typname else t2.typname end,
|
||||||
case when a.attnotnull then 0 else 1 end as is_nullable,
|
case when a.attnotnull then 0 else 1 end as is_nullable,
|
||||||
coalesce((select 1 from pg_sequences where lower(sequencename) = lower({0} || '_' || {1} || '_' || a.attname || '_sequence_name') limit 1),0) is_identity,
|
--e.adsrc as is_identity, pg12以下
|
||||||
--e.adsrc as is_identity,
|
(select pg_get_expr(adbin, adrelid) from pg_attrdef where adrelid = e.adrelid) is_identity,
|
||||||
d.description as comment,
|
d.description as comment,
|
||||||
a.attndims,
|
a.attndims,
|
||||||
case when t.typelem = 0 then t.typtype else t2.typtype end,
|
case when t.typelem = 0 then t.typtype else t2.typtype end,
|
||||||
@ -236,7 +236,7 @@ where {loc8.ToString().Replace("a.table_name", "ns.nspname || '.' || c.relname")
|
|||||||
var max_length = int.Parse(string.Concat(row[3]));
|
var max_length = int.Parse(string.Concat(row[3]));
|
||||||
var sqlType = string.Concat(row[4]);
|
var sqlType = string.Concat(row[4]);
|
||||||
var is_nullable = string.Concat(row[5]) == "1";
|
var is_nullable = string.Concat(row[5]) == "1";
|
||||||
var is_identity = string.Concat(row[6]) == "1"; //string.Concat(row[6]).StartsWith(@"nextval('") && string.Concat(row[6]).EndsWith(@"'::regclass)");
|
var is_identity = string.Concat(row[6]).StartsWith(@"nextval('") && string.Concat(row[6]).EndsWith(@"'::regclass)");
|
||||||
var comment = string.Concat(row[7]);
|
var comment = string.Concat(row[7]);
|
||||||
int attndims = int.Parse(string.Concat(row[8]));
|
int attndims = int.Parse(string.Concat(row[8]));
|
||||||
string typtype = string.Concat(row[9]);
|
string typtype = string.Concat(row[9]);
|
||||||
|
@ -217,8 +217,8 @@ t.typname,
|
|||||||
case when a.atttypmod > 0 and a.atttypmod < 32767 then a.atttypmod - 4 else a.attlen end len,
|
case when a.atttypmod > 0 and a.atttypmod < 32767 then a.atttypmod - 4 else a.attlen end len,
|
||||||
case when t.typelem > 0 and t.typinput::varchar = 'array_in' then t2.typname else t.typname end,
|
case when t.typelem > 0 and t.typinput::varchar = 'array_in' then t2.typname else t.typname end,
|
||||||
case when a.attnotnull then '0' else '1' end as is_nullable,
|
case when a.attnotnull then '0' else '1' end as is_nullable,
|
||||||
coalesce((select 1 from pg_sequences where lower(sequencename) = lower({0} || '_' || {1} || '_' || a.attname || '_sequence_name') limit 1),0) is_identity,
|
|
||||||
--e.adsrc,
|
--e.adsrc,
|
||||||
|
(select pg_get_expr(adbin, adrelid) from pg_attrdef where adrelid = e.adrelid) is_identity,
|
||||||
a.attndims,
|
a.attndims,
|
||||||
d.description as comment
|
d.description as comment
|
||||||
from pg_class c
|
from pg_class c
|
||||||
@ -254,7 +254,7 @@ where ns.nspname = {0} and c.relname = {1}", tboldname ?? tbname);
|
|||||||
sqlType = string.Concat(sqlType),
|
sqlType = string.Concat(sqlType),
|
||||||
max_length = long.Parse(string.Concat(a[2])),
|
max_length = long.Parse(string.Concat(a[2])),
|
||||||
is_nullable = string.Concat(a[4]) == "1",
|
is_nullable = string.Concat(a[4]) == "1",
|
||||||
is_identity = string.Concat(a[5]) == "1", //string.Concat(a[5]).StartsWith(@"nextval('") && string.Concat(a[5]).EndsWith(@"'::regclass)"),
|
is_identity = string.Concat(a[5]).StartsWith(@"nextval('") && string.Concat(a[5]).EndsWith(@"'::regclass)"),
|
||||||
attndims,
|
attndims,
|
||||||
comment = string.Concat(a[7])
|
comment = string.Concat(a[7])
|
||||||
};
|
};
|
||||||
|
@ -319,8 +319,8 @@ t.typname,
|
|||||||
case when a.atttypmod > 0 and a.atttypmod < 32767 then a.atttypmod - 4 else a.attlen end len,
|
case when a.atttypmod > 0 and a.atttypmod < 32767 then a.atttypmod - 4 else a.attlen end len,
|
||||||
case when t.typelem = 0 then t.typname else t2.typname end,
|
case when t.typelem = 0 then t.typname else t2.typname end,
|
||||||
case when a.attnotnull then 0 else 1 end as is_nullable,
|
case when a.attnotnull then 0 else 1 end as is_nullable,
|
||||||
coalesce((select 1 from pg_sequences where lower(sequencename) = lower({0} || '_' || {1} || '_' || a.attname || '_sequence_name') limit 1),0) is_identity,
|
--e.adsrc as is_identity, pg12以下
|
||||||
--e.adsrc as is_identity,
|
(select pg_get_expr(adbin, adrelid) from pg_attrdef where adrelid = e.adrelid) is_identity,
|
||||||
d.description as comment,
|
d.description as comment,
|
||||||
a.attndims,
|
a.attndims,
|
||||||
case when t.typelem = 0 then t.typtype else t2.typtype end,
|
case when t.typelem = 0 then t.typtype else t2.typtype end,
|
||||||
@ -346,7 +346,7 @@ where {loc8.ToString().Replace("a.table_name", "ns.nspname || '.' || c.relname")
|
|||||||
var max_length = int.Parse(string.Concat(row[3]));
|
var max_length = int.Parse(string.Concat(row[3]));
|
||||||
var sqlType = string.Concat(row[4]);
|
var sqlType = string.Concat(row[4]);
|
||||||
var is_nullable = string.Concat(row[5]) == "1";
|
var is_nullable = string.Concat(row[5]) == "1";
|
||||||
var is_identity = string.Concat(row[6]) == "1"; //string.Concat(row[6]).StartsWith(@"nextval('") && string.Concat(row[6]).EndsWith(@"'::regclass)");
|
var is_identity = string.Concat(row[6]).StartsWith(@"nextval('") && string.Concat(row[6]).EndsWith(@"'::regclass)");
|
||||||
var comment = string.Concat(row[7]);
|
var comment = string.Concat(row[7]);
|
||||||
int attndims = int.Parse(string.Concat(row[8]));
|
int attndims = int.Parse(string.Concat(row[8]));
|
||||||
string typtype = string.Concat(row[9]);
|
string typtype = string.Concat(row[9]);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user