Add: SetAutoIncrementInitialValue

This commit is contained in:
sunkaixuan
2024-02-24 12:46:06 +08:00
parent 97bd4c96a9
commit fed601e74f
4 changed files with 41 additions and 0 deletions

View File

@@ -174,6 +174,16 @@ namespace SqlSugar
#endregion
#region DDL
public virtual bool SetAutoIncrementInitialValue(string tableName,int initialValue)
{
Console.WriteLine("no support");
return true;
}
public virtual bool SetAutoIncrementInitialValue(Type entityType, int initialValue)
{
Console.WriteLine("no support");
return true;
}
public virtual bool DropIndex(string indexName)
{
indexName = this.SqlBuilder.GetNoTranslationColumnName(indexName);

View File

@@ -93,6 +93,18 @@ namespace SqlSugar
/// <param name="databaseDirectory"></param>
/// <returns></returns>
bool CreateDatabase(string databaseName,string databaseDirectory = null);
/// <summary>
/// setAuto incrementInitial value
/// </summary>
/// <param name="initialValue"></param>
/// <returns></returns>
bool SetAutoIncrementInitialValue(Type type,int initialValue);
/// <summary>
/// setAuto incrementInitial value
/// </summary>
/// <param name="initialValue"></param>
/// <returns></returns>
bool SetAutoIncrementInitialValue(string tableName, int initialValue);
#endregion
}
}

View File

@@ -284,6 +284,16 @@ namespace SqlSugar
#endregion
#region Methods
public override bool SetAutoIncrementInitialValue(string tableName, int initialValue)
{
initialValue++;
this.Context.Ado.ExecuteCommand($"ALTER TABLE "+this.SqlBuilder.GetTranslationColumnName(tableName)+" AUTO_INCREMENT = "+initialValue);
return true;
}
public override bool SetAutoIncrementInitialValue(Type entityType, int initialValue)
{
return this.SetAutoIncrementInitialValue(this.Context.EntityMaintenance.GetEntityInfo(entityType).DbTableName, initialValue);
}
public override List<string> GetDbTypes()
{
return this.Context.Ado.SqlQuery<string>(@"SELECT DISTINCT DATA_TYPE

View File

@@ -321,6 +321,15 @@ namespace SqlSugar
#endregion
#region Methods
public override bool SetAutoIncrementInitialValue(string tableName,int initialValue)
{
this.Context.Ado.ExecuteCommand($"DBCC CHECKIDENT ('"+ tableName + $"', RESEED, {initialValue})");
return true;
}
public override bool SetAutoIncrementInitialValue(Type entityType, int initialValue)
{
return this.SetAutoIncrementInitialValue(this.Context.EntityMaintenance.GetEntityInfo(entityType).DbTableName, initialValue);
}
public override List<DbTableInfo> GetSchemaTables(EntityInfo entityInfo)
{
if (entityInfo.DbTableName.Contains(".") && this.Context.CurrentConnectionConfig.DbType == DbType.SqlServer)