请教一下 在sql server数据库中 设置性别 用什么样的数据类型
是不是用char数据类型呢 ? 在设置时候加上约束 只能输入‘男’、‘女’和‘null’?
只是在数据库中创建table 请高手指点一下 非常感谢 展开
2017-07-21 · 知道合伙人软件行家
数据库中性别选择存储数据类型的分析。
常见的数据库保存性别信息的方案有
一、整型
方案1、使用0,1,2,3,4,5 进行存储,值的含义如图
方案2、使用0,1,2进行存储,值的含义如图
二、字符型
方案1、直接使用字符 ”未知 “,”男“ ,”女 “ 来存储
方案2、直接使用字符 ”N“,”M“ ,”F“ 来存储,值的含义如图:
方案的选择主要依照个人习惯,和手机应用的需要。因为实际应用中,无论选择哪种方案,对数据库性能、即操作复杂度都影响可以忽略。
当然直接使用字符 ”未知 “,”男“ ,”女 “ 来存储,在书写SQL语句要稍简单,检索不需要对值和实际含义进行转换。而使用0,1,2,3,4,5 进行存储,则可以实现一些特殊的条件查询。
至于为什么采用tinyint,而不用字符串。因为int的执行效率(性能)比字符串快很多,因此常用的这种只有几个值的字符串都采用int。tinyint在数据库以一个字节存储的,smallint是2个字节,int是四个字节存储的,当然tinyint是最快的。
的确程序存在转换问题,要明白数据库一般情况下是系统的核心,保持它的高性能那是非常必要的。做一些程序转换是给数据库减轻负担的,因此也是非常必要的。
用tinyint吧,比方说男用0表示,女用1表示。
美国Microsoft公司推出的一种关系型数据库系统。SQL Server是一个可扩展的、高性能的、为分布式客户机/服务器计算所设计的数据库管理系统,实现了与WindowsNT的有机结合,提供了基于事务的企业级信息管理系统方案。
SQL Server 是一个关系数据库管理系统。它最初是由Microsoft Sybase 和Ashton-Tate三家公司共同开发的,于1988 年推出了第一个OS/2 版本。在Windows NT 推出后,Microsoft与Sybase 在SQL Server 的开发上就分道扬镳了,Microsoft 将SQL Server 移植到Windows NT系统上,专注于开发推广SQL Server 的Windows NT 版本。Sybase 则较专注于SQL Server在UNIX 操作系统上的应用。
enum('男','女');