mysql - 我的 Tickets 表应该使用什么数据类型?

标签 mysql sqldatatypes

我正在创建一个表,该表设置为在我的数据库中列出特定旅游地点的门票价格。

由于游览在英国进行,因此价格必须以英国货币 (£0.00) 为单位。但是,在为价格列设置数据类型时,我不确定哪种数据类型可以适合英国货币的格式。所以我使用了 DOUBLE PRECISION 但是在尝试输入这些值时:

INSERT INTO `tbl_Tickets` (`Student_Price`, `Adult_Price`, `OAP_Price`, `Tourdate_id`)
VALUES ('£15.00', '£22.00' ,'£13.50', 1);

我得到一个 0,每个价格列。

我应该将我的价格列设置为哪种数据类型,以便正确适合英国货币?

最佳答案

您可能应该使用 fixed-point numeric类型来存储任何国籍的货币,例如。 DECIMAL(5, 2) 可存储最大为 999.99 的值。

正如 spencer7593 在下面指出的那样,没有必要像 DECIMAL type's storage format 那样吝啬位数。非常紧凑。

关于mysql - 我的 Tickets 表应该使用什么数据类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36229442/

相关文章:

php - 当我通过电子邮件地址选择时,为什么会出现 MySQL 语法错误 (1604)?

php - 在同一 Controller 函数内执行不同查询的问题

PHP/AJAX 只会提交一次表单结果。第一次点击有效,第二次是空白

postgresql - 在 PostgreSQL 中为临时变量分配特定数据类型

sql - Teradata SQL VARCHAR 和空格

mysql - 常量表设计 MySQL 最佳实践

mysql - 跨连接表的 Select 语句

php - html div 中的 href = php 变量

mysql - 如何确定 MySQL Checksum 列的类型?

c++ - 从 double 创建 std::chrono::high_resolution_clock::time_point ?