diff --git a/Src/Asp.Net/SqlSugar/Abstract/CodeFirstProvider/CodeFirstProvider.cs b/Src/Asp.Net/SqlSugar/Abstract/CodeFirstProvider/CodeFirstProvider.cs index dad5cd69f..868c554d8 100644 --- a/Src/Asp.Net/SqlSugar/Abstract/CodeFirstProvider/CodeFirstProvider.cs +++ b/Src/Asp.Net/SqlSugar/Abstract/CodeFirstProvider/CodeFirstProvider.cs @@ -209,9 +209,10 @@ namespace SqlSugar } protected virtual DbColumnInfo EntityColumnToDbColumn(EntityInfo entityInfo, string tableName, EntityColumnInfo item) { + var propertyType = PubMethod.GetUnderType(item.PropertyInfo); var result = new DbColumnInfo() { - DataType = this.Context.Ado.DbBind.GetDbTypeName(PubMethod.GetUnderType(item.PropertyInfo).Name), + DataType = propertyType.IsEnum?"int":this.Context.Ado.DbBind.GetDbTypeName(propertyType.Name), TableId = entityInfo.Columns.IndexOf(item), DbColumnName = item.DbColumnName.IsValuable() ? item.DbColumnName : item.PropertyName, IsPrimarykey = item.IsPrimarykey, diff --git a/Src/Asp.Net/SqlSugar/Abstract/DbMaintenanceProvider/Methods.cs b/Src/Asp.Net/SqlSugar/Abstract/DbMaintenanceProvider/Methods.cs index c4ca8db5d..69ef2f462 100644 --- a/Src/Asp.Net/SqlSugar/Abstract/DbMaintenanceProvider/Methods.cs +++ b/Src/Asp.Net/SqlSugar/Abstract/DbMaintenanceProvider/Methods.cs @@ -117,13 +117,13 @@ namespace SqlSugar #region DDL public virtual bool AddPrimaryKey(string tableName, string columnName) { - string sql = string.Format(this.AddPrimaryKeySql, tableName, string.Format("PK_{0}_{1}", tableName, columnName), columnName); + string sql = string.Format(this.AddPrimaryKeySql,this.SqlBuilder.GetTranslationTableName(tableName), string.Format("PK_{0}_{1}", tableName, columnName), columnName); this.Context.Ado.ExecuteCommand(sql); return true; } public virtual bool AddColumn(string tableName, DbColumnInfo columnInfo) { - string sql = GetAddColumnSql(tableName, columnInfo); + string sql = GetAddColumnSql(this.SqlBuilder.GetTranslationTableName(tableName), columnInfo); this.Context.Ado.ExecuteCommand(sql); return true; } @@ -135,13 +135,13 @@ namespace SqlSugar } public virtual bool CreateTable(string tableName, List columns) { - string sql = GetCreateTableSql(tableName, columns); + string sql = GetCreateTableSql(this.SqlBuilder.GetTranslationTableName(tableName), columns); this.Context.Ado.ExecuteCommand(sql); return true; } public virtual bool DropTable(string tableName) { - this.Context.Ado.ExecuteCommand(string.Format(this.DropTableSql, tableName)); + this.Context.Ado.ExecuteCommand(string.Format(this.DropTableSql, this.SqlBuilder.GetTranslationTableName(tableName))); return true; } public virtual bool DropColumn(string tableName, string columnName) @@ -151,13 +151,13 @@ namespace SqlSugar } public virtual bool DropConstraint(string tableName, string constraintName) { - string sql = string.Format(this.DropConstraintSql, tableName, constraintName); + string sql = string.Format(this.DropConstraintSql, this.SqlBuilder.GetTranslationTableName(tableName), constraintName); this.Context.Ado.ExecuteCommand(sql); return true; } public virtual bool TruncateTable(string tableName) { - this.Context.Ado.ExecuteCommand(string.Format(this.TruncateTableSql, tableName)); + this.Context.Ado.ExecuteCommand(string.Format(this.TruncateTableSql, this.SqlBuilder.GetTranslationTableName(tableName))); return true; } public virtual bool BackupDataBase(string databaseName, string fullFileName) diff --git a/Src/Asp.Net/SqlSugar/Realization/SqlServer/SqlBuilder/SqlServerBuilder.cs b/Src/Asp.Net/SqlSugar/Realization/SqlServer/SqlBuilder/SqlServerBuilder.cs index 2a08d70bd..107654e38 100644 --- a/Src/Asp.Net/SqlSugar/Realization/SqlServer/SqlBuilder/SqlServerBuilder.cs +++ b/Src/Asp.Net/SqlSugar/Realization/SqlServer/SqlBuilder/SqlServerBuilder.cs @@ -16,7 +16,11 @@ namespace SqlSugar var mappingInfo = context .MappingTables .FirstOrDefault(it => it.EntityName.Equals(name, StringComparison.CurrentCultureIgnoreCase)); - return "[" + (mappingInfo == null ? name : mappingInfo.DbTableName) + "]"; + name = (mappingInfo == null ? name : mappingInfo.DbTableName); + if (name.Contains("[")) + return name; + else + return "[" + name + "]"; } public override string GetTranslationColumnName(string entityName, string propertyName) {