Update db.DbMain.GetIndexList

This commit is contained in:
sunkaixuan
2023-03-20 00:36:37 +08:00
parent 9d5c12ad00
commit 6b3579a1d1
9 changed files with 17 additions and 17 deletions

View File

@@ -84,7 +84,7 @@ namespace SqlSugar
return result.Select(it => it.DbColumnName).ToList();
});
}
public virtual List<string> GetIndexList()
public virtual List<string> GetIndexList(string tableName)
{
return new List<string>();
}

View File

@@ -17,7 +17,7 @@ namespace SqlSugar
List<string> GetIsIdentities(string tableName);
List<string> GetPrimaries(string tableName);
List<string> GetProcList(string dbName);
List<string> GetIndexList();
List<string> GetIndexList(string tableName);
#endregion
#region Check

View File

@@ -266,9 +266,9 @@ namespace SqlSugar
#endregion
#region Methods
public override List<string> GetIndexList()
public override List<string> GetIndexList(string tableName)
{
var sql = $"SELECT index_name FROM user_indexes";
var sql = $"SELECT index_name, index_type, column_name\r\nFROM user_ind_columns\r\nWHERE table_name = '{tableName}'";
return this.Context.Ado.SqlQuery<string>(sql);
}
public override bool AddColumn(string tableName, DbColumnInfo columnInfo)

View File

@@ -240,14 +240,14 @@ namespace SqlSugar
#endregion
#region Methods
public override List<string> GetIndexList()
public override List<string> GetIndexList(string tableName)
{
var sql = $"SELECT indexname FROM pg_indexes WHERE UPPER(schemaname) = UPPER('" + GetSchema() + "') ";
var sql = $"SELECT indexname FROM sys_indexes WHERE UPPER(tablename) = UPPER('{tableName}') AND UPPER(schemaname) = UPPER('" + GetSchema() + "') ";
return this.Context.Ado.SqlQuery<string>(sql);
}
public override List<string> GetProcList(string dbName)
{
var sql = $"SELECT proname FROM pg_proc p JOIN pg_namespace n ON p.pronamespace = n.oid WHERE n.nspname = '{dbName}'";
var sql = $"SELECT proname FROM sys_proc p JOIN pg_namespace n ON p.pronamespace = n.oid WHERE UPPER(n.nspname) = UPPER('{dbName}')";
return this.Context.Ado.SqlQuery<string>(sql);
}
private string GetSchema()

View File

@@ -282,9 +282,9 @@ namespace SqlSugar
#endregion
#region Methods
public override List<string> GetIndexList()
public override List<string> GetIndexList(string tableName)
{
var sql = $"SELECT index_name FROM information_schema.statistics WHERE table_schema = '" + this.Context.Ado.Connection.Database + "'";
var sql = $"SHOW INDEX FROM {this.SqlBuilder.GetTranslationColumnName(tableName)}";
return this.Context.Ado.SqlQuery<string>(sql);
}
public override List<string> GetProcList(string dbName)

View File

@@ -272,9 +272,9 @@ namespace SqlSugar
#endregion
#region Methods
public override List<string> GetIndexList()
public override List<string> GetIndexList(string tableName)
{
var sql = $"SELECT index_name FROM user_indexes";
var sql = $"SELECT index_name, index_type, column_name\r\nFROM user_ind_columns\r\nWHERE table_name = '{tableName}'";
return this.Context.Ado.SqlQuery<string>(sql);
}
public override List<string> GetProcList(string dbName)

View File

@@ -249,9 +249,9 @@ namespace SqlSugar
#endregion
#region Methods
public override List<string> GetIndexList()
public override List<string> GetIndexList(string tableName)
{
var sql = $"SELECT indexname FROM pg_indexes WHERE schemaname = '"+GetSchema()+"'";
var sql = $"SELECT indexname, indexdef FROM pg_indexes WHERE tablename = '{tableName}'";
return this.Context.Ado.SqlQuery<string>(sql);
}
public override List<string> GetProcList(string dbName)

View File

@@ -321,9 +321,9 @@ namespace SqlSugar
#endregion
#region Methods
public override List<string> GetIndexList()
public override List<string> GetIndexList(string tableName)
{
return this.Context.Ado.SqlQuery<string>("SELECT name FROM sys.indexes WHERE objectproperty(object_id, 'IsUserTable') = 1");
return this.Context.Ado.SqlQuery<string>($"SELECT indexname = i.name FROM sys.indexes i\r\nJOIN sys.index_columns ic ON i.object_id = ic.object_id AND i.index_id = ic.index_id\r\nJOIN sys.columns c ON ic.object_id = c.object_id AND ic.column_id = c.column_id\r\nWHERE i.object_id = OBJECT_ID('{tableName}')");
}
public override List<string> GetProcList(string dbName)
{

View File

@@ -258,9 +258,9 @@ namespace SqlSugar
#endregion
#region Methods
public override List<string> GetIndexList()
public override List<string> GetIndexList(string tableName)
{
var sql = $"SELECT name FROM sqlite_master WHERE type='index'";
var sql = $"PRAGMA index_list('{tableName}');";
return this.Context.Ado.SqlQuery<string>(sql);
}
public override void AddDefaultValue(EntityInfo entityInfo)