SQL:在乘以列时考虑数据类型

时间:2017-07-04 11:04:29

标签: c# database sqlite

我正在使用一个可以更改数据库列的小型c#工具。它还应根据用户输入将列乘以某个因子。 当然它适用于

UPDATE table SET column = column * factor

但是,这并不考虑列的数据类型,因此在用户输入错误的情况下,列中的数据类型为" TEXT"也将乘以没有任何错误消息导致零。

我知道我可以将列的类型输入到我的c#程序中并在更新之前对其进行测试,但是在我的情况下,这将是缓慢且不切实际的,因为我只使用来自我从

得到的sql
SELECT * FROM sqlite_master

有没有办法直接在sqlite中获得所需的反馈?

1 个答案:

答案 0 :(得分:0)

  

你应该使用typeof()过滤掉非数字值,如图所示   这个问题,例如typeof(column)='integer'

Panagiotis Kanavos的回答是正确的,我之前尝试过,但我使用大写字母(INTEGER与整数)来表示不起作用的类型。

答案谢谢!