Support 人大金仓 pg model

This commit is contained in:
sunkaixuan 2024-02-20 15:41:21 +08:00
parent 4c8d0fbe6a
commit e5931a38cc
3 changed files with 30 additions and 1 deletions

View File

@ -32,5 +32,6 @@ namespace SqlSugar
public bool IsCorrectErrorSqlParameterName { get; set; }
public int MaxParameterNameLength { get; set; }
public bool DisableQueryWhereColumnRemoveTrim { get; set; }
public DbType? DataBaseModel { get;set; }
}
}

View File

@ -12,6 +12,10 @@ namespace SqlSugar
{
get
{
if (IsPgModel())
{
return "SELECT datname FROM pg_database";
}
return "SELECT datname FROM sys_database";
}
}
@ -44,6 +48,12 @@ namespace SqlSugar
where sys_constraint.contype='p'
) pkey on pcolumn.table_name = pkey.relname
order by ptables.tablename";
if (IsPgModel())
{
sql = sql.Replace("sys_", "pg_");
}
return sql;
}
}
@ -51,6 +61,12 @@ namespace SqlSugar
{
get
{
if (IsPgModel())
{
return @"select cast(relname as varchar) as Name,
cast(obj_description(relfilenode,'pg_class') as varchar) as Description from pg_class c
where relkind = 'r' and c.oid > 16384 and c.relnamespace != 99 and c.relname not like '%pl_profiler_saved%' order by relname";
}
return @"select cast(relname as varchar) as Name,
cast(obj_description(relfilenode,'sys_class') as varchar) as Description from sys_class c
where relkind = 'r' and c.oid > 16384 and c.relnamespace != 99 and c.relname not like '%pl_profiler_saved%' order by relname";
@ -60,6 +76,13 @@ namespace SqlSugar
{
get
{
if (IsPgModel())
{
return @"select cast(relname as varchar) as Name,cast(Description as varchar) from pg_description
join pg_class on pg_description.objoid = pg_class.oid
where objsubid = 0 and relname in (SELECT viewname from pg_views
WHERE schemaname ='public')";
}
return @"select cast(relname as varchar) as Name,cast(Description as varchar) from sys_description
join sys_class on sys_description.objoid = sys_class.oid
where objsubid = 0 and relname in (SELECT viewname from sys_views
@ -575,6 +598,10 @@ WHERE tgrelid = '" + tableName + "'::regclass");
x.DecimalDigits = 0;
}
}
private bool IsPgModel()
{
return this.Context.CurrentConnectionConfig?.MoreSettings?.DataBaseModel == DbType.PostgreSQL;
}
#endregion
}
}

View File

@ -593,7 +593,8 @@ namespace SqlSugar
IsCorrectErrorSqlParameterName = it.MoreSettings.IsCorrectErrorSqlParameterName,
SqliteCodeFirstEnableDropColumn=it.MoreSettings.SqliteCodeFirstEnableDropColumn,
MaxParameterNameLength=it.MoreSettings.MaxParameterNameLength,
DisableQueryWhereColumnRemoveTrim=it.MoreSettings.DisableQueryWhereColumnRemoveTrim
DisableQueryWhereColumnRemoveTrim=it.MoreSettings.DisableQueryWhereColumnRemoveTrim,
DataBaseModel=it.MoreSettings.DataBaseModel
},
SqlMiddle = it.SqlMiddle == null ? null : new SqlMiddle