关于oracle:c#中的某些数字,日期和电话号码使用什么数据类型?

What data type to use for some number, date and phone number in c#?

嗨,我是应用ASP.NET文本域包含四个号码,金额,日期和电话。当点击按钮在一个价值的论文有了Oracle数据库。本文用程序到保存的价值。Oracle数据库是在datatypes柱类型,数是数,数的量柱是柱类型是datetime类型的日期和phonenumber是类型数。我代表所有四个文本域的值,这样的论文是在适当的格式。我在我的代码传递的电话号码,日期,金额为字符串和双。这是最好的练习吗?如果任何一个需要的CAN数据类型我想我已经使用了4场(编号,数量,日期和电话号码)?


一般来说,您应该使用c中的decimal来表示数据库中的number字段;使用c中的DateTime来表示数据库中的DateTime字段。

我不建议使用number字段来存储只包含数字但不是实际数字的内容(如信用卡号码、电话号码、邮政编码和ssn)。字符串(varchar更好地表示这些值。


如果它有效,那就是"足够好"的练习。你不会在一个循环中做一百万次,所以效率不是问题。您所做的是清楚和可理解的,并且非常适合您处理的数据类型。日期和电话号码格式在编辑时很难处理。你需要处理国际日期(世界上大部分人都喜欢年-月-日)和非美国电话号码吗?我喜欢你的数据类型。


将金额(假设为货币)存储为数字(14,2)或类似的数字。不要使用双精度数,因为有些小数不能精确地表示为双精度数。在C中使用十进制类型,在Oracle中使用数字类型。

参见:双人间真的不适合用钱吗?