mirror of
https://github.com/nsnail/FreeSql.git
synced 2025-06-19 12:28:15 +08:00
- 修复 ClickHouse 单条记录插入\t \n失败的 bug;
This commit is contained in:
@ -10,7 +10,7 @@ using XY.Model.Business;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using FreeSql.DataAnnotations;
|
||||
|
||||
namespace FreeSql.Tests.MySql
|
||||
namespace FreeSql.Tests.ClickHouse
|
||||
{
|
||||
public class ClickHouseTest1
|
||||
{
|
||||
@ -309,11 +309,38 @@ namespace FreeSql.Tests.MySql
|
||||
[Fact]
|
||||
public void TestInsertNoneParameter()
|
||||
{
|
||||
var json = "[{\"date\":\"2021-12-19T02:47:53.4365075 08:00\",\"temperatureC\":6,\"temperatureF\":42,\"summary\":\"Balmy\"},{\"date\":\"2021-12-20T02:47:53.4366893 08:00\",\"temperatureC\":36,\"temperatureF\":96,\"summary\":\"Bracing\"},{\"date\":\"2021-12-21T02:47:53.4366903 08:00\",\"temperatureC\":-15,\"temperatureF\":6,\"summary\":\"Bracing\"},{\"date\":\"2021-12-22T02:47:53.4366904 08:00\",\"temperatureC\":14,\"temperatureF\":57,\"summary\":\"Cool\"},{\"date\":\"2021-12-23T02:47:53.4366905 08:00\",\"temperatureC\":29,\"temperatureF\":84,\"summary\":\"Mild\"}]";
|
||||
var json = "[{\"date\":\t\"2021-12-19T02:47:53.4365075 08:00\",\"temperatureC\":6,\"temperatureF\":42,\"summary\":\"Balmy\"},{\"date\":\"2021-12-20T02:47:53.4366893 08:00\",\"temperatureC\":36,\"temperatureF\":96,\"summary\":\"Bracing\"},{\"date\":\"2021-12-21T02:47:53.4366903 08:00\",\"temperatureC\":-15,\"temperatureF\":6,\"summary\":\"Bracing\"},{\"date\":\"2021-12-22T02:47:53.4366904 08:00\",\"temperatureC\":14,\"temperatureF\":57,\"summary\":\"Cool\"},{\"date\":\"2021-12-23T02:47:53.4366905 08:00\",\"temperatureC\":29,\"temperatureF\":84,\"summary\":\"Mild\"}]";
|
||||
var data = new Entity { Id = Guid.NewGuid().ToString(), Content = json };
|
||||
|
||||
var fsql = g.clickHouse;
|
||||
fsql.Insert(data).NoneParameter().ExecuteAffrows();
|
||||
var item = fsql.Select<Entity>().Where(a => a.Id == data.Id).First();
|
||||
Assert.Equal(item.Content, json);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void TestInsertUseParameter()
|
||||
{
|
||||
var fsql = g.clickHouse;
|
||||
fsql.CodeFirst.SyncStructure<Entity>();
|
||||
var json = "[{\"date\":\t\"2021-12-19T02:47:53.4365075 08:00\",\"temperatureC\":6,\"temperatureF\":42,\"summary\":\"Balmy\"},{\"date\":\"2021-12-20T02:47:53.4366893 08:00\",\"temperatureC\":36,\"temperatureF\":96,\"summary\":\"Bracing\"},{\"date\":\"2021-12-21T02:47:53.4366903 08:00\",\"temperatureC\":-15,\"temperatureF\":6,\"summary\":\"Bracing\"},{\"date\":\"2021-12-22T02:47:53.4366904 08:00\",\"temperatureC\":14,\"temperatureF\":57,\"summary\":\"Cool\"},{\"date\":\"2021-12-23T02:47:53.4366905 08:00\",\"temperatureC\":29,\"temperatureF\":84,\"summary\":\"Mild\"}]";
|
||||
var data = new Entity { Id = Guid.NewGuid().ToString(), Content = json };
|
||||
|
||||
var sql1 = fsql.Insert(data).ToSql();
|
||||
fsql.Insert(data).ExecuteAffrows();
|
||||
var item = fsql.Select<Entity>().Where(a => a.Id == data.Id).First();
|
||||
Assert.Equal(item.Content, json);
|
||||
|
||||
var data2 = new[]{
|
||||
new Entity { Id = Guid.NewGuid().ToString(), Content = json },
|
||||
new Entity { Id = Guid.NewGuid().ToString(), Content = json }
|
||||
};
|
||||
var sql2 = fsql.Insert(data2).ToSql();
|
||||
fsql.Insert(data2).ExecuteAffrows();
|
||||
item = fsql.Select<Entity>().Where(a => a.Id == data2[0].Id).First();
|
||||
Assert.Equal(item.Content, json);
|
||||
item = fsql.Select<Entity>().Where(a => a.Id == data2[1].Id).First();
|
||||
Assert.Equal(item.Content, json);
|
||||
}
|
||||
}
|
||||
}
|
@ -4,11 +4,6 @@
|
||||
<name>FreeSql.Tests</name>
|
||||
</assembly>
|
||||
<members>
|
||||
<member name="M:FreeSql.Tests.MySql.MySqlCodeFirstTest.Tb_alltype.Save">
|
||||
<summary>
|
||||
保存或添加,如果主键有值则尝试 Update,如果影响的行为 0 则尝试 Insert
|
||||
</summary>
|
||||
</member>
|
||||
<member name="P:FreeSql.Tests.Firebird.FirebirdCodeFirstTest.AddUniquesInfo.id">
|
||||
<summary>
|
||||
编号
|
||||
@ -432,6 +427,11 @@
|
||||
修改人
|
||||
</summary>
|
||||
</member>
|
||||
<member name="M:FreeSql.Tests.MySql.MySqlCodeFirstTest.Tb_alltype.Save">
|
||||
<summary>
|
||||
保存或添加,如果主键有值则尝试 Update,如果影响的行为 0 则尝试 Insert
|
||||
</summary>
|
||||
</member>
|
||||
<member name="T:FreeSql.Tests.SqlServer.SqlServerCodeFirstTest.tbdot01">
|
||||
<summary>
|
||||
表中带点
|
||||
|
@ -8,15 +8,13 @@ using System.Threading;
|
||||
public class g
|
||||
{
|
||||
static Lazy<IFreeSql> clickHouseLazy = new Lazy<IFreeSql>(() => new FreeSql.FreeSqlBuilder()
|
||||
.UseConnectionString(FreeSql.DataType.ClickHouse, "Compress=False;BufferSize=32768;SocketTimeout=10000;CheckCompressedHash=False;Encrypt=False;Compressor=lz4;Host=192.168.0.121;Port=8125;Database=PersonnelLocation;Username=root;Password=+riQ8V9D")
|
||||
//.UseConnectionFactory(FreeSql.DataType.MySql, () => new MySql.Data.MySqlClient.MySqlConnection("Data Source=127.0.0.1;Port=3306;User ID=root;Password=root;Initial Catalog=cccddd;Charset=utf8;SslMode=none;"))
|
||||
//.UseConnectionString(FreeSql.DataType.MySql, "Data Source=192.168.164.10;Port=33061;User ID=root;Password=root;Initial Catalog=cccddd_mysqlconnector;Charset=utf8;SslMode=none;Max pool size=10")
|
||||
//.UseAutoSyncStructure(true)
|
||||
//.UseGenerateCommandParameterWithLambda(true)
|
||||
.UseMonitorCommand(
|
||||
cmd => Debug.WriteLine("\r\n线程" + Thread.CurrentThread.ManagedThreadId + ": " + cmd.CommandText) //监听SQL命令对象,在执行前
|
||||
//, (cmd, traceLog) => Console.WriteLine(traceLog)
|
||||
)
|
||||
.UseConnectionString(FreeSql.DataType.ClickHouse, "Compress=False;BufferSize=32768;SocketTimeout=10000;CheckCompressedHash=False;Encrypt=False;Compressor=lz4;Host=192.168.0.121;Port=8125;Database=PersonnelLocation;Username=root;Password=+riQ8V9D")
|
||||
//.UseAutoSyncStructure(true)
|
||||
//.UseGenerateCommandParameterWithLambda(true)
|
||||
.UseMonitorCommand(
|
||||
cmd => Debug.WriteLine("\r\n线程" + Thread.CurrentThread.ManagedThreadId + ": " + cmd.CommandText) //监听SQL命令对象,在执行前
|
||||
//, (cmd, traceLog) => Console.WriteLine(traceLog)
|
||||
)
|
||||
.UseLazyLoading(true)
|
||||
.Build());
|
||||
public static IFreeSql clickHouse => clickHouseLazy.Value;
|
||||
|
Reference in New Issue
Block a user