数据库中数字与字符并存时应该用啥数据类型

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库中数字与字符并存时应该用啥数据类型相关的知识,希望对你有一定的参考价值。

就像33333-3333用什么数据类型

字符类型的话一般用
varchar或者char
不过varchar的话是不定长的,就是说你定义的是varchar(10)你存的abc2的话,那么他就是存的abc2,但是char类型的话是定长的,不足长度的自动补空,如果你定义的是char(4)你存的是abc2的话,那么他存的就是abc2 ,2的右边有个空格。
参考技术A 字符串型和日期在数据库中可以相互转换的,只要格式对。
一般前台程序中处理字符串型的比较方便,所以就用字符串来代替日期。
关键看你对日期要做啥操作,如果只是作为查询条件或简单分隔的话,是可以用字符的。
还是要看你进行什么操作。
进行排序的话,long和Date都很好用,对于Date类型,不同的数据库提供了一些很好的函数,操作都会很方便。
但要是想要做一个独立与数据库的程序,字符串也是个不错的选择。
用date比较方便。
一般日期用作比较的方面最多,
如果用字符串,比如varchar的话,就很难比较,
就如fivehun2001所说的"会出现2004-2-10>2004-12-10的情况"。
不过,date日期型的0日期是1970年1月1日。不能表示更早的日期。
参考技术B char 参考技术C varchar

mysql应该用啥编码格式储存在数据库里呢?

另外,我还要在同一个页面里同时显示中文和法语,请教达人们,我应该如何设置数据库的格式,页面显示的时候应该用何种编码格式?跪谢!!!

mysql中一般用UTF-8编码。

UTF-8(8-bit Unicode Transformation Format)是一种针对Unicode的可变长度字符编码,又称万国码。由Ken Thompson于1992年创建。现在已经标准化为RFC 3629。UTF-8用1到6个字节编码UNICODE字符。用在网页上可以同一页面显示中文简体繁体及其它语言(如英文,日文,韩文)。

修改数据库编码的命令为:

alter database app_relation character set utf8;

它相当于下面的三句指令:

SET character_set_client = utf8;
SET character_set_results = utf8;
SET character_set_connection = utf8;
参考技术A 用UTF-8,注意如果是Windows系统,则需要将[mysql]下的default-character-set设置成gbk,否则控制台中午乱码。 参考技术B 用国际化的UNICODE字符编码:UTF-8
mysql中这么设置:
① 首先把MySQL的服务停掉 在运行窗口输入:net stop mysql
② 把服务器和客户端的字符集改成utf8,具体操作为:打开mysql安装目录下的myini.tet;找到default-character-set,将其改为utf-8的字符集,要注意的是这里有两个default-character-set,用ctrl+f定位在文件最前面输入default就会找到,都要改过来;
③ 重启MySQL服务器,在运行窗口输入:net start mysql
④ 最重要的是一点是,可能依然还会出现乱码问题,这是因为我们现在的表被创建的时候用的是默认的字符集(latin1),所以这时候我们要把表删除,然后重建就可以了

页面上当然得同步的用UNICODE本回答被提问者采纳
参考技术C UTF-8默认的啊。

以上是关于数据库中数字与字符并存时应该用啥数据类型的主要内容,如果未能解决你的问题,请参考以下文章

java 金融数字用啥类型

sqlserver的bit类型在oracle中可以用啥类型表示

在java Web项目中 数据库中的主键类型integer类型那么实体类中应该用啥类型或最好用啥类型?为啥?

数据库中 number date 类型 在java的封装类中 应该用啥类型?int 还是string?

数据库中部门编号用啥数据类型

mysql中的timestamp类型到java来应该用啥类型???