好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

c# – 插入带有文化的浮点值,其中逗号(,)用于“浮点”

我有这样的事情:

foo { a = 1, b = 2, c = 98,3 }

我动态生成插入查询,最后得到:

insert foos(a,b,c) (1, 2, 98,3)

有谁知道如何解决这个问题?

简单回答:首先不要使用文本插入值.使用参数化SQL查询.

这不仅限于数字 – 它对日期和时间也特别重要.从概念上讲,你不是在处理“带逗号的数字” – 你正在处理一个数字. SQL恰好是我们在数据库和客户端之间传输数据的方式,但参数化SQL允许我们将值保持为值,而不会在其间进行无意义且容易出错的文本转换.最后,参数化查询在传输文本值时非常重要,可以防止SQL注入攻击.

基本上,将“值”(在参数中)和“SQL代码”的概念分开,它们保留在文本中.

只需重新格式化包含值的现有SQL,直到它发生工作,这是一个脆弱的解决方案.

查看更多关于c# – 插入带有文化的浮点值,其中逗号(,)用于“浮点”的详细内容...

  阅读:51次