This commit is contained in:
2881099 2022-01-15 09:56:01 +08:00
parent 3a453d918d
commit 9bde42a566
6 changed files with 51 additions and 40 deletions

View File

@ -24,6 +24,17 @@ namespace FreeSql.Tests.PostgreSQL
public void GetTableByName() public void GetTableByName()
{ {
var fsql = g.pgsql; var fsql = g.pgsql;
fsql.Ado.ExecuteNonQuery(@"CREATE TABLE IF NOT EXISTS public.table_test
(
id integer NOT NULL,
coin_list money[],
PRIMARY KEY (id)
)");
var t111 = fsql.DbFirst.GetTableByName("table_test");
Assert.True(t111.Columns.Find(a => a.Name == "id").IsPrimary);
Assert.False(t111.Columns.Find(a => a.Name == "coin_list").IsPrimary);
var t1 = fsql.DbFirst.GetTableByName("tb_alltype"); var t1 = fsql.DbFirst.GetTableByName("tb_alltype");
var t2 = fsql.DbFirst.GetTableByName("public.tb_alltype"); var t2 = fsql.DbFirst.GetTableByName("public.tb_alltype");
Assert.NotNull(t1); Assert.NotNull(t1);

View File

@ -349,14 +349,14 @@ where {loc8.ToString().Replace("a.table_name", "ns.nspname || '.' || d.relname")
var inkey = string.Concat(row[7]).Split(' '); var inkey = string.Concat(row[7]).Split(' ');
var attnum = int.Parse(string.Concat(row[8])); var attnum = int.Parse(string.Concat(row[8]));
attnum = int.Parse(inkey[attnum - 1]); attnum = int.Parse(inkey[attnum - 1]);
foreach (string tc in loc3[object_id].Keys) //foreach (string tc in loc3[object_id].Keys)
{ //{
if (loc3[object_id][tc].DbTypeText.EndsWith("[]")) // if (loc3[object_id][tc].DbTypeText.EndsWith("[]"))
{ // {
column = tc; // column = tc;
break; // break;
} // }
} //}
if (loc3.ContainsKey(object_id) == false || loc3[object_id].ContainsKey(column) == false) continue; if (loc3.ContainsKey(object_id) == false || loc3[object_id].ContainsKey(column) == false) continue;
var loc9 = loc3[object_id][column]; var loc9 = loc3[object_id][column];
if (loc9.IsPrimary == false && is_primary_key) loc9.IsPrimary = is_primary_key; if (loc9.IsPrimary == false && is_primary_key) loc9.IsPrimary = is_primary_key;

View File

@ -350,14 +350,14 @@ where {loc8.ToString().Replace("a.table_name", "ns.nspname || '.' || d.relname")
var inkey = string.Concat(row[7]).Split(' '); var inkey = string.Concat(row[7]).Split(' ');
var attnum = int.Parse(string.Concat(row[8])); var attnum = int.Parse(string.Concat(row[8]));
attnum = int.Parse(inkey[attnum - 1]); attnum = int.Parse(inkey[attnum - 1]);
foreach (string tc in loc3[object_id].Keys) //foreach (string tc in loc3[object_id].Keys)
{ //{
if (loc3[object_id][tc].DbTypeText.EndsWith("[]")) // if (loc3[object_id][tc].DbTypeText.EndsWith("[]"))
{ // {
column = tc; // column = tc;
break; // break;
} // }
} //}
if (loc3.ContainsKey(object_id) == false || loc3[object_id].ContainsKey(column) == false) continue; if (loc3.ContainsKey(object_id) == false || loc3[object_id].ContainsKey(column) == false) continue;
var loc9 = loc3[object_id][column]; var loc9 = loc3[object_id][column];
if (loc9.IsPrimary == false && is_primary_key) loc9.IsPrimary = is_primary_key; if (loc9.IsPrimary == false && is_primary_key) loc9.IsPrimary = is_primary_key;

View File

@ -365,14 +365,14 @@ where {loc8.ToString().Replace("a.table_name", "ns.nspname || '.' || d.relname")
var inkey = string.Concat(row[7]).Split(' '); var inkey = string.Concat(row[7]).Split(' ');
var attnum = int.Parse(string.Concat(row[8])); var attnum = int.Parse(string.Concat(row[8]));
attnum = int.Parse(inkey[attnum - 1]); attnum = int.Parse(inkey[attnum - 1]);
foreach (string tc in loc3[object_id].Keys) //foreach (string tc in loc3[object_id].Keys)
{ //{
if (loc3[object_id][tc].DbTypeText.EndsWith("[]")) // if (loc3[object_id][tc].DbTypeText.EndsWith("[]"))
{ // {
column = tc; // column = tc;
break; // break;
} // }
} //}
if (loc3.ContainsKey(object_id) == false || loc3[object_id].ContainsKey(column) == false) continue; if (loc3.ContainsKey(object_id) == false || loc3[object_id].ContainsKey(column) == false) continue;
var loc9 = loc3[object_id][column]; var loc9 = loc3[object_id][column];
if (loc9.IsPrimary == false && is_primary_key) loc9.IsPrimary = is_primary_key; if (loc9.IsPrimary == false && is_primary_key) loc9.IsPrimary = is_primary_key;

View File

@ -475,14 +475,14 @@ where {loc8.ToString().Replace("a.table_name", "ns.nspname || '.' || d.relname")
var inkey = string.Concat(row[7]).Split(' '); var inkey = string.Concat(row[7]).Split(' ');
var attnum = int.Parse(string.Concat(row[8])); var attnum = int.Parse(string.Concat(row[8]));
attnum = int.Parse(inkey[attnum - 1]); attnum = int.Parse(inkey[attnum - 1]);
foreach (string tc in loc3[object_id].Keys) //foreach (string tc in loc3[object_id].Keys) //bug: https://github.com/2881099/FreeSql.Wiki.VuePress/issues/9
{ //{
if (loc3[object_id][tc].DbTypeText.EndsWith("[]")) // if (loc3[object_id][tc].DbTypeText.EndsWith("[]"))
{ // {
column = tc; // column = tc;
break; // break;
} // }
} //}
if (loc3.ContainsKey(object_id) == false || loc3[object_id].ContainsKey(column) == false) continue; if (loc3.ContainsKey(object_id) == false || loc3[object_id].ContainsKey(column) == false) continue;
var loc9 = loc3[object_id][column]; var loc9 = loc3[object_id][column];
if (loc9.IsPrimary == false && is_primary_key) loc9.IsPrimary = is_primary_key; if (loc9.IsPrimary == false && is_primary_key) loc9.IsPrimary = is_primary_key;

View File

@ -369,14 +369,14 @@ where {loc8.ToString().Replace("a.table_name", "ns.nspname || '.' || d.relname")
var inkey = string.Concat(row[7]).Split(' '); var inkey = string.Concat(row[7]).Split(' ');
var attnum = int.Parse(string.Concat(row[8])); var attnum = int.Parse(string.Concat(row[8]));
attnum = int.Parse(inkey[attnum - 1]); attnum = int.Parse(inkey[attnum - 1]);
foreach (string tc in loc3[object_id].Keys) //foreach (string tc in loc3[object_id].Keys)
{ //{
if (loc3[object_id][tc].DbTypeText.EndsWith("[]")) // if (loc3[object_id][tc].DbTypeText.EndsWith("[]"))
{ // {
column = tc; // column = tc;
break; // break;
} // }
} //}
if (loc3.ContainsKey(object_id) == false || loc3[object_id].ContainsKey(column) == false) continue; if (loc3.ContainsKey(object_id) == false || loc3[object_id].ContainsKey(column) == false) continue;
var loc9 = loc3[object_id][column]; var loc9 = loc3[object_id][column];
if (loc9.IsPrimary == false && is_primary_key) loc9.IsPrimary = is_primary_key; if (loc9.IsPrimary == false && is_primary_key) loc9.IsPrimary = is_primary_key;