mirror of
https://github.com/nsnail/FreeSql.git
synced 2025-06-17 19:43:21 +08:00
v0.1.1 增加选项 IsQuoteSqlName 控制是否使用 [] 或 "" 或 `` 包含数据库名称 #6
This commit is contained in:
parent
204ab9f7d8
commit
ae347d4b04
@ -2,7 +2,7 @@
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<Version>0.1.0</Version>
|
||||
<Version>0.1.1</Version>
|
||||
<Authors>YeXiangQin</Authors>
|
||||
<Description>打造 .NETCore 最方便的 ORM,DbFirst 与 CodeFirst 混合使用,提供从实体同步数据库,或者从数据库生成实体代码,支持 MySql/SqlServer/PostgreSQL/Oracle/Sqlite 数据库。</Description>
|
||||
<PackageProjectUrl>https://github.com/2881099/FreeSql</PackageProjectUrl>
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFramework>netstandard2.0</TargetFramework>
|
||||
<Version>0.1.0</Version>
|
||||
<Version>0.1.1</Version>
|
||||
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
|
||||
<Authors>YeXiangQin</Authors>
|
||||
<Description>打造 .NETCore 最方便的 ORM,DbFirst 与 CodeFirst 混合使用,提供从实体同步数据库,或者从数据库生成实体代码,支持 MySql/SqlServer/PostgreSQL/Oracle/Sqlite 数据库。</Description>
|
||||
|
@ -13,6 +13,7 @@ namespace FreeSql {
|
||||
string _masterConnectionString;
|
||||
string[] _slaveConnectionString;
|
||||
bool _isAutoSyncStructure = false;
|
||||
bool _isQuoteSqlName = true;
|
||||
bool _isSyncStructureToLower = false;
|
||||
bool _isLazyLoading = false;
|
||||
Action<DbCommand> _aopCommandExecuting = null;
|
||||
@ -67,6 +68,15 @@ namespace FreeSql {
|
||||
return this;
|
||||
}
|
||||
/// <summary>
|
||||
/// 数据库名称使用 [] 或 `` 或 "" 包含起来,取决于数据库类别
|
||||
/// </summary>
|
||||
/// <param name="value">true:转小写, false:不转</param>
|
||||
/// <returns></returns>
|
||||
public FreeSqlBuilder UseQuoteSqlName(bool value) {
|
||||
_isQuoteSqlName = value;
|
||||
return this;
|
||||
}
|
||||
/// <summary>
|
||||
/// 转小写同步结构
|
||||
/// </summary>
|
||||
/// <param name="value">true:转小写, false:不转</param>
|
||||
@ -107,6 +117,7 @@ namespace FreeSql {
|
||||
}
|
||||
if (ret != null) {
|
||||
ret.CodeFirst.IsAutoSyncStructure = _isAutoSyncStructure;
|
||||
ret.CodeFirst.IsQuoteSqlName = _isQuoteSqlName;
|
||||
ret.CodeFirst.IsSyncStructureToLower = _isSyncStructureToLower;
|
||||
ret.CodeFirst.IsLazyLoading = _isLazyLoading;
|
||||
var ado = ret.Ado as Internal.CommonProvider.AdoProvider;
|
||||
|
@ -9,6 +9,10 @@ namespace FreeSql {
|
||||
/// </summary>
|
||||
bool IsAutoSyncStructure { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// 数据库名称使用 [] 或 `` 或 "" 包含起来,取决于数据库类别
|
||||
/// </summary>
|
||||
bool IsQuoteSqlName { get; set; }
|
||||
/// <summary>
|
||||
/// 转小写同步结构
|
||||
/// </summary>
|
||||
|
@ -24,6 +24,7 @@ namespace FreeSql.MySql {
|
||||
}
|
||||
|
||||
public bool IsAutoSyncStructure { get; set; } = true;
|
||||
public bool IsQuoteSqlName { get; set; } = true;
|
||||
public bool IsSyncStructureToLower { get; set; } = false;
|
||||
public bool IsLazyLoading { get; set; } = false;
|
||||
|
||||
|
@ -42,7 +42,7 @@ namespace FreeSql.MySql {
|
||||
});
|
||||
|
||||
internal override string FormatSql(string sql, params object[] args) => sql?.FormatMySql(args);
|
||||
internal override string QuoteSqlName(string name) => $"`{name.Trim('`').Replace(".", "`.`")}`";
|
||||
internal override string QuoteSqlName(string name) => _orm.CodeFirst.IsQuoteSqlName ? $"`{name.Trim('`').Replace(".", "`.`")}`" : name;
|
||||
internal override string QuoteParamterName(string name) => $"?{(_orm.CodeFirst.IsSyncStructureToLower ? name.ToLower() : name)}";
|
||||
internal override string IsNull(string sql, object value) => $"ifnull({sql}, {value})";
|
||||
internal override string StringConcat(string left, string right, Type leftType, Type rightType) => $"concat({left}, {right})";
|
||||
|
@ -24,6 +24,7 @@ namespace FreeSql.Oracle {
|
||||
}
|
||||
|
||||
public bool IsAutoSyncStructure { get; set; } = true;
|
||||
public bool IsQuoteSqlName { get; set; } = true;
|
||||
public bool IsSyncStructureToLower { get; set; } = false;
|
||||
public bool IsLazyLoading { get; set; } = false;
|
||||
|
||||
|
@ -38,7 +38,7 @@ namespace FreeSql.Oracle {
|
||||
});
|
||||
|
||||
internal override string FormatSql(string sql, params object[] args) => sql?.FormatOracleSQL(args);
|
||||
internal override string QuoteSqlName(string name) => $"\"{name.Trim('"').Replace(".", "\".\"")}\"";
|
||||
internal override string QuoteSqlName(string name) => _orm.CodeFirst.IsQuoteSqlName ? $"\"{name.Trim('"').Replace(".", "\".\"")}\"" : name;
|
||||
internal override string QuoteParamterName(string name) => $":{(_orm.CodeFirst.IsSyncStructureToLower ? name.ToLower() : name)}";
|
||||
internal override string IsNull(string sql, object value) => $"nvl({sql}, {value})";
|
||||
internal override string StringConcat(string left, string right, Type leftType, Type rightType) => $"{left} || {right}";
|
||||
|
@ -29,6 +29,7 @@ namespace FreeSql.PostgreSQL {
|
||||
}
|
||||
|
||||
public bool IsAutoSyncStructure { get; set; } = true;
|
||||
public bool IsQuoteSqlName { get; set; } = true;
|
||||
public bool IsSyncStructureToLower { get; set; } = false;
|
||||
public bool IsLazyLoading { get; set; } = false;
|
||||
|
||||
|
@ -94,7 +94,7 @@ namespace FreeSql.PostgreSQL {
|
||||
});
|
||||
|
||||
internal override string FormatSql(string sql, params object[] args) => sql?.FormatPostgreSQL(args);
|
||||
internal override string QuoteSqlName(string name) => $"\"{name.Trim('"').Replace(".", "\".\"")}\"";
|
||||
internal override string QuoteSqlName(string name) => _orm.CodeFirst.IsQuoteSqlName ? $"\"{name.Trim('"').Replace(".", "\".\"")}\"" : name;
|
||||
internal override string QuoteParamterName(string name) => $"@{(_orm.CodeFirst.IsSyncStructureToLower ? name.ToLower() : name)}";
|
||||
internal override string IsNull(string sql, object value) => $"coalesce({sql}, {value})";
|
||||
internal override string StringConcat(string left, string right, Type leftType, Type rightType) => $"{left} || {right}";
|
||||
|
@ -23,6 +23,7 @@ namespace FreeSql.SqlServer {
|
||||
}
|
||||
|
||||
public bool IsAutoSyncStructure { get; set; } = true;
|
||||
public bool IsQuoteSqlName { get; set; } = true;
|
||||
public bool IsSyncStructureToLower { get; set; } = false;
|
||||
public bool IsLazyLoading { get; set; } = false;
|
||||
|
||||
|
@ -32,7 +32,7 @@ namespace FreeSql.SqlServer {
|
||||
});
|
||||
|
||||
internal override string FormatSql(string sql, params object[] args) => sql?.FormatSqlServer(args);
|
||||
internal override string QuoteSqlName(string name) => $"[{name.TrimStart('[').TrimEnd(']').Replace(".", "].[")}]";
|
||||
internal override string QuoteSqlName(string name) => _orm.CodeFirst.IsQuoteSqlName ? $"[{name.TrimStart('[').TrimEnd(']').Replace(".", "].[")}]" : name;
|
||||
internal override string QuoteParamterName(string name) => $"@{(_orm.CodeFirst.IsSyncStructureToLower ? name.ToLower() : name)}";
|
||||
internal override string IsNull(string sql, object value) => $"isnull({sql}, {value})";
|
||||
internal override string StringConcat(string left, string right, Type leftType, Type rightType) => $"{(leftType.FullName == "System.String" ? left : $"cast({left} as nvarchar)")} + {(rightType.FullName == "System.String" ? right : $"cast({right} as nvarchar)")}";
|
||||
|
@ -23,6 +23,7 @@ namespace FreeSql.Sqlite {
|
||||
}
|
||||
|
||||
public bool IsAutoSyncStructure { get; set; } = true;
|
||||
public bool IsQuoteSqlName { get; set; } = true;
|
||||
public bool IsSyncStructureToLower { get; set; } = false;
|
||||
public bool IsLazyLoading { get; set; } = false;
|
||||
|
||||
|
@ -53,7 +53,7 @@ namespace FreeSql.Sqlite {
|
||||
});
|
||||
|
||||
internal override string FormatSql(string sql, params object[] args) => sql?.FormatSqlite(args);
|
||||
internal override string QuoteSqlName(string name) => $"\"{name.Trim('"').Replace(".", "\".\"")}\"";
|
||||
internal override string QuoteSqlName(string name) => _orm.CodeFirst.IsQuoteSqlName ? $"\"{name.Trim('"').Replace(".", "\".\"")}\"" : name;
|
||||
internal override string QuoteParamterName(string name) => $"@{(_orm.CodeFirst.IsSyncStructureToLower ? name.ToLower() : name)}";
|
||||
internal override string IsNull(string sql, object value) => $"ifnull({sql}, {value})";
|
||||
internal override string StringConcat(string left, string right, Type leftType, Type rightType) => $"{left} || {right}";
|
||||
|
Loading…
x
Reference in New Issue
Block a user