mirror of
https://github.com/nsnail/FreeSql.git
synced 2025-04-22 02:32:50 +08:00
- 修复 pgsql DbFirst IsPrimary bug;https://github.com/2881099/FreeSql.Wiki.VuePress/issues/9
This commit is contained in:
parent
3a453d918d
commit
9bde42a566
@ -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);
|
||||||
|
@ -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;
|
||||||
|
@ -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;
|
||||||
|
@ -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;
|
||||||
|
@ -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;
|
||||||
|
@ -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;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user