mysql人民币怎么定义 mysql中rename的用法

mysql设置默认值为rmb用mysql建数据表设置默认值,代码为【stuSex varchar(2) default '男' check(stuSex in('男', '女'))】 。
mysql设置默认值的方法:
create table stu(
stuId varchar(30) primary key,
stuName varchar(50) not null,
stuSex varchar(2) default '男' check(stuSex in('男', '女')),
stuJg varchar(30),
stuDept varchar(40)
)
用mysql建数据表设置默认值:
int 类型:default 1; (直接加数值)
varchar类型:default 'aaa'(用单引号)
另:经试验,在mysql中default 要写在 check之前,否则报错
mysql存储金额类型,用什么数据类型比较可靠,一般企业数据用什么数据类型?对于游戏币等代币,一般存储为int类型是可行的 。问题在于越界,int类型长度为11位 。
在存储人民币相关的金额的时候,则只能存储到9长度的人民币,也就是说,最大只能存储999999999,不到10亿的数值,如果业务增长很快的话,就会给自己留下隐患 。
Decimal:Decimal为专门为财务相关问题设计的数据类型 。
DECIMAL从MySQL5.1引入,列的声明语法是DECIMAL(M,D) 。在MySQL5.1中,参量的取值范围如下:M是数字的最大数(精度) 。其范围为1~65(在较旧的MySQL版本中,允许的范围是1~254),M的默认值是10 。
D是小数点右侧数字的数目(标度) 。其范围是0~30,但不得超过M 。说明:float占4个字节,double占8个字节,decimail(M,D)占M+2个字节 。
如DECIMAL(5,2)的最大值为9999.99,因为有7个字节可用 。能够解决数据的范围和精度的问题 。
扩展资料
MySQL数据类型DECIMAL用法:
MySQL DECIMAL数据类型用于在数据库中存储精确的数值 。我们经常将DECIMAL数据类型用于保留准确精确度的列 , 例如会计系统中的货币数据 。
要定义数据类型为DECIMAL的列 , 请使用以下语法:column_nameDECIMAL(P,D);
在上面的语法中:
P是表示有效数字数的精度 。P范围为1?65 。
D是表示小数点后的位数 。D的范围是0~30 。MySQL要求D小于或等于(=)P 。
DECIMAL(P,D)表示列可以存储D位小数的P位数 。十进制列的实际范围取决于精度和刻度 。
与INT数据类型一样,DECIMAL类型也具有UNSIGNED和ZEROFILL属性 。如果使用UNSIGNED属性,则DECIMALUNSIGNED的列将不接受负值 。
如果使用ZEROFILL,MySQL将把显示值填充到0以显示由列定义指定的宽度 。另外,如果我们对DECIMAL列使用ZEROFILL,MySQL将自动将UNSIGNED属性添加到列 。
mysql 建表时的价格用什么类型定义?MySQL中可以用来做价格的字段一般有float、double、decimal
如定义一个money字段类型为float(9,2),则money字段最大长度为9,整数位是6位,小数位是2位 。
以下摘自MySQL 5.1参考手册:
1、FLOAT[(M,D)] [UNSIGNED] [ZEROFILL]
小(单精度)浮点数 。允许的值是-3.402823466E+38到-1.175494351E-38、0和1.175494351E-38到3.402823466E+38 。这些是理论限制,基于IEEE标准 。实际的范围根据硬件或操作系统的不同可能稍微小些 。
M是小数总位数,D是小数点后面的位数 。如果M和D被省略,根据硬件允许的限制来保存值 。单精度浮点数精确到大约7位小数位 。
如果指定UNSIGNED,不允许负值 。
【mysql人民币怎么定义 mysql中rename的用法】使用浮点数可能会遇到意想不到的问题,因为在MySQL中的所有计算用双精度完成 。参见A.5.7节 , “解决与不匹配行有关的问题” 。
2、DOUBLE[(M,D)] [UNSIGNED] [ZEROFILL]
普通大小(双精度)浮点数 。允许的值是-1.7976931348623157E+308到-2.2250738585072014E-308、0和2.2250738585072014E-308到 1.7976931348623157E+308 。这些是理论限制,基于IEEE标准 。实际的范围根据硬件或操作系统的不同可能稍微小些 。

推荐阅读