• 数据库概念和一些数据类型


    1.事务的四个特性以及对应的子系统:
     
    (1)原子性(A):安全性管理子系统;
     
    (2)一致性(C):完整性管理子系统;
     
    (3)隔离性(I):并发控制子系统;
     
    (4)持久性(D):恢复管理子系统;
     
    2.MySQL中Decimal类型和Float Double等区别
     MySQL DECIMAL数据类型用于在数据库中存储精确的数值。我们经常将DECIMAL数据类型用于保留准确精确度的列,例如会计系统中的货币数据。
    MySQL中存在float,double等非标准数据类型,也有decimal这种标准数据类型。
    其区别在于,float,double等非标准类型,在DB中保存的是近似值,而Decimal则以字符串的形式保存数值。
    float,double类型是可以存浮点数(即小数类型),但是float有个坏处,当你给定的数据是整数的时候,那么它就以整数给你处理。这样我们在存取货币值的时候自然遇到问题,我的default值为:0.00而实际存储是0,同样我存取货币为12.00,实际存储是12。
    mysql提供了两个数据类型:decimal,这种数据类型可以轻松解决上面的问题:decimal类型被 MySQL 以同样的类型实现,这在 SQL92 标准中是允许的。他们用于保存对准确精度有重要要求的值,例如与金钱有关的数据。
    amount DECIMAL(6,2);

    在此示例中,amount列最多可以存储6位数字,小数位数为2位; 因此,amount列的范围是从-9999.999999.99

    浮点数如果不写经度和标度,会按照实际精度值保存,如果有精度和标度,则会自动将四舍五入后的结果插入,系统不会报错;定点数如果不写精度和标度,则按照默认值decimal(10,0) 来操作,如果数据超过了精度和标度值,系统会报错。

    3.VARCHAR(M)是长度可变的字符串,M表示最大列长度,varchar的最大实际长度由最长的行的大小和使用的字符集确定,实际占用空间为字符串实际长度加1,如varchar(50),如果插入字符只有10个字符,则实际存储的字符串为10个字符和一个字符串结束字符。在值保存和检索时尾部的空格仍保留

    而char(M)是固定长度字符串,保存时,右侧填充空格以达到指定的长度。检索到char值时,尾部的空格将被删除掉。

  • 相关阅读:
    按位与、或、非、异或总结
    Linux 挂载命令
    Linux 文件系统常用命令
    Linux 系统命令sudo权限
    Linux 文件系统属性chattr权限
    Linux 文件特殊权限-Sticky BIT
    Linux 文件特殊权限-SetGID
    Linux 文件特殊权限-SetUID
    Linux 递归acl权限和默认acl权限
    Linux 最大有效权限与删除ACL
  • 原文地址:https://www.cnblogs.com/ffaiss/p/10762791.html
Copyright © 2020-2023  润新知