- 调整 Oracle StringLength/MaxLength -1 时候映射为 nclob;

This commit is contained in:
28810
2020-03-31 06:07:47 +08:00
parent 7795296328
commit 558fc52cf0
3 changed files with 48 additions and 16 deletions

View File

@ -11,6 +11,51 @@ namespace FreeSql.Tests.Oracle
{
public class OracleCodeFirstTest
{
[Fact]
public void NClob_StringLength_1()
{
var str1 = string.Join(",", Enumerable.Range(0, 10000).Select(a => "<22><><EFBFBD><EFBFBD><EFBFBD>й<EFBFBD><D0B9><EFBFBD>"));
var item1 = new TS_NCLB02 { Data = str1 };
Assert.Equal(1, g.oracle.Insert(item1).ExecuteAffrows());
var item2 = g.oracle.Select<TS_NCLB02>().Where(a => a.Id == item1.Id).First();
Assert.Equal(str1, item2.Data);
//NoneParameter
item1 = new TS_NCLB02 { Data = str1 };
Assert.Throws<OracleException>(() => g.oracle.Insert(item1).NoneParameter().ExecuteAffrows());
//Oracle.ManagedDataAccess.Client.OracleException:<3A><>ORA-01704: <20>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̫<EFBFBD><CCAB><EFBFBD><EFBFBD>
}
class TS_NCLB02
{
public Guid Id { get; set; }
[Column(StringLength = - 1)]
public string Data { get; set; }
}
[Fact]
public void NClob()
{
var str1 = string.Join(",", Enumerable.Range(0, 10000).Select(a => "<22><><EFBFBD><EFBFBD><EFBFBD>й<EFBFBD><D0B9><EFBFBD>"));
var item1 = new TS_NCLB01 { Data = str1 };
Assert.Equal(1, g.oracle.Insert(item1).ExecuteAffrows());
var item2 = g.oracle.Select<TS_NCLB01>().Where(a => a.Id == item1.Id).First();
Assert.Equal(str1, item2.Data);
//NoneParameter
item1 = new TS_NCLB01 { Data = str1 };
Assert.Throws<OracleException>(() => g.oracle.Insert(item1).NoneParameter().ExecuteAffrows());
//Oracle.ManagedDataAccess.Client.OracleException:<3A><>ORA-01704: <20>ַ<EFBFBD><D6B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̫<EFBFBD><CCAB><EFBFBD><EFBFBD>
}
class TS_NCLB01
{
public Guid Id { get; set; }
[Column(DbType = "nclob")]
public string Data { get; set; }
}
[Fact]
public void Clob()
{