Add a method to get an index

This commit is contained in:
sunkaixuan
2023-03-20 00:22:01 +08:00
parent 904d86c555
commit 9d5c12ad00
9 changed files with 44 additions and 0 deletions

View File

@@ -84,6 +84,10 @@ namespace SqlSugar
return result.Select(it => it.DbColumnName).ToList(); return result.Select(it => it.DbColumnName).ToList();
}); });
} }
public virtual List<string> GetIndexList()
{
return new List<string>();
}
#endregion #endregion
#region Check #region Check

View File

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

View File

@@ -266,6 +266,11 @@ namespace SqlSugar
#endregion #endregion
#region Methods #region Methods
public override List<string> GetIndexList()
{
var sql = $"SELECT index_name FROM user_indexes";
return this.Context.Ado.SqlQuery<string>(sql);
}
public override bool AddColumn(string tableName, DbColumnInfo columnInfo) public override bool AddColumn(string tableName, DbColumnInfo columnInfo)
{ {
if (columnInfo.DataType == "varchar" && columnInfo.Length == 0) if (columnInfo.DataType == "varchar" && columnInfo.Length == 0)

View File

@@ -240,6 +240,16 @@ namespace SqlSugar
#endregion #endregion
#region Methods #region Methods
public override List<string> GetIndexList()
{
var sql = $"SELECT indexname FROM pg_indexes WHERE 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}'";
return this.Context.Ado.SqlQuery<string>(sql);
}
private string GetSchema() private string GetSchema()
{ {
var schema = "public"; var schema = "public";

View File

@@ -282,6 +282,11 @@ namespace SqlSugar
#endregion #endregion
#region Methods #region Methods
public override List<string> GetIndexList()
{
var sql = $"SELECT index_name FROM information_schema.statistics WHERE table_schema = '" + this.Context.Ado.Connection.Database + "'";
return this.Context.Ado.SqlQuery<string>(sql);
}
public override List<string> GetProcList(string dbName) public override List<string> GetProcList(string dbName)
{ {
var sql = $"SELECT ROUTINE_NAME FROM information_schema.ROUTINES WHERE ROUTINE_TYPE = 'PROCEDURE' AND ROUTINE_SCHEMA = '{dbName}'"; var sql = $"SELECT ROUTINE_NAME FROM information_schema.ROUTINES WHERE ROUTINE_TYPE = 'PROCEDURE' AND ROUTINE_SCHEMA = '{dbName}'";

View File

@@ -272,6 +272,11 @@ namespace SqlSugar
#endregion #endregion
#region Methods #region Methods
public override List<string> GetIndexList()
{
var sql = $"SELECT index_name FROM user_indexes";
return this.Context.Ado.SqlQuery<string>(sql);
}
public override List<string> GetProcList(string dbName) public override List<string> GetProcList(string dbName)
{ {
var sql = $"SELECT OBJECT_NAME FROM ALL_OBJECTS WHERE OBJECT_TYPE = 'PROCEDURE' AND OWNER = '{dbName.ToUpper()}'"; var sql = $"SELECT OBJECT_NAME FROM ALL_OBJECTS WHERE OBJECT_TYPE = 'PROCEDURE' AND OWNER = '{dbName.ToUpper()}'";

View File

@@ -249,6 +249,11 @@ namespace SqlSugar
#endregion #endregion
#region Methods #region Methods
public override List<string> GetIndexList()
{
var sql = $"SELECT indexname FROM pg_indexes WHERE schemaname = '"+GetSchema()+"'";
return this.Context.Ado.SqlQuery<string>(sql);
}
public override List<string> GetProcList(string dbName) 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 pg_proc p JOIN pg_namespace n ON p.pronamespace = n.oid WHERE n.nspname = '{dbName}'";

View File

@@ -321,6 +321,10 @@ namespace SqlSugar
#endregion #endregion
#region Methods #region Methods
public override List<string> GetIndexList()
{
return this.Context.Ado.SqlQuery<string>("SELECT name FROM sys.indexes WHERE objectproperty(object_id, 'IsUserTable') = 1");
}
public override List<string> GetProcList(string dbName) public override List<string> GetProcList(string dbName)
{ {
var sql = $"SELECT name FROM {dbName}.sys.procedures"; var sql = $"SELECT name FROM {dbName}.sys.procedures";

View File

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