oracle数据库指定字段类型 返回
SqlSugar
沟通中
9
1062
悬赏:0 飞吻
在实体上指定字段的参数类型不生效 SqlParameterDbType =OracleDbType.NVarchar2
热忱回答(9)
-
fate sta VIP0
2025/12/12截图实体和代码。
0 回复 -
fate sta VIP0
2025/12/12并且sqlsugar版本要升级。
0 回复 -
信仰゛ VIP0
2025/12/12
目前用的5.1.4.207,
想要达到原生var param = new OracleParameter("p_name", OracleDbType.NVarchar2);
0 回复 -
信仰゛ VIP0
2025/12/12@fate sta:想要达到原生var param = new OracleParameter("p_name", OracleDbType.NVarchar2);的效果。
0 回复 -
fate sta VIP0
2025/12/12目前没有问题,是什么操作不生效,提供俱体代码。
0 回复 -
信仰゛ VIP0
2025/12/12@fate sta:执行能成功,但写入生僻字会变“?”或者乱码。用原生的方式就没问题。所以要指定数据库字段类型。
比如我的数据库NVarchar2的对应的字符集是AL16UTF16,插入生僻字“啓”。
0 回复 -
fate sta VIP0
2025/12/12[SugarColumn(ColumnDataType ="nvarchar2",SqlParameterDbType =typeof(Nvarchar2PropertyConvert) )]publicstringName {get;set; }这个正确用法。
0 回复 -
fate sta VIP0
2025/12/12用Nvarchar2PropertyConvert ,只指定DbType不能影响到非参数化的SQL(批量写入),这种特殊的要改用转换。
0 回复 -
信仰゛ VIP0
2025/12/17@fate sta:好的,问题已解决,感谢。
0 回复