string strInsert = "INSERT INTO tblPProductPart (PartID,PartDesc,PartPrice) VALUES ('" ;
strInsert += PartID + "', '" ;
strInsert += PartDesc + "', '" ;
strInsert += m_decPartPric + "')" ;
m_decPartPric所写往的字段的数据类型是money。C#无money类型,我试验着将m_decPartPric 值转化为 decimal 或 float 类型的数据,都报错“不允许从数据类型varchar 到数据类型money的隐性转换”
请高手指教,如果不改变数据库的money类型,用什么办法将数据写入?
strInsert += PartID + "', '" ;
strInsert += PartDesc + "', '" ;
strInsert += m_decPartPric + "')" ;
m_decPartPric所写往的字段的数据类型是money。C#无money类型,我试验着将m_decPartPric 值转化为 decimal 或 float 类型的数据,都报错“不允许从数据类型varchar 到数据类型money的隐性转换”
请高手指教,如果不改变数据库的money类型,用什么办法将数据写入?
strInsert += PartID + "', '" ;
strInsert += PartDesc + "', cast('" ;
strInsert += m_decPartPric + "' as money))" ;
strInsert += PartID + "', '" ;
strInsert += PartDesc + "', " ;
strInsert += "Convert(money, '"+ m_decPartPric+"'))"; 以下是一些转化的示例,
SELECT Convert(money, '$123456.78') --美元,
SELECT Convert(money, '€100.45') --英镑
如果需要保存币值,请在单独的列中进行记录。
SqlDbType.Money我的也有啊。。
string strInsert = "INSERT INTO tblPProductPart (PartID,PartDesc,PartPrice) VALUES ('" ;
strInsert += PartID + "', '" ;
strInsert += PartDesc + "', " ;
strInsert += m_decPartPric + ")" ; 可以使用decimal,不要用单引号把money类型的引起来