写在前面的话: 一直有这个想法,就是把自己在项目上工作中遇到的知识,系统性的记下来,写下来,这样当自己忘了的时候,能打开翻翻,能找到根源,或者有人要问我的时候,我不用絮絮叨叨从头讲,直接把链接推给人家就好。
不管是什么原因吧,这个想法一直没落地,现在准备实施了,主要的思路是先讲基本技能篇,然后是进阶篇,然后是实战篇。但是文章的内容可能会 在中间有所穿插,有时候一讲就讲多了,毕竟不是写书的,读者们请见谅。
好了说完废话,直接聊下今天的主题:SQL里的数据类型。
按我的理解,SQL server的类型可以分成两大类:
系统数据类型 和 用户自定义数据类型
系统数据类型:
Sql Server 提供的系统数据类型 共25种 ,每种类型有固定的取值范围,超过了就会报错。在数据库下面依次点开可编程性--类型--系统数据类型,就能看到明细的分类。
实际上日常使用中,不用记住这么多,我们记住常用的几种类型就行了:
(1)整数数值型:bigint >int >smallint >tinyint
大于号表示取值范围的对比;
(2)浮点数值型:主要有float, numeric(10,2), decimal(10,2)这样的,
其中括号里面10 代表总长度,2代表两位小数,这两个可以自行定义;
(3)字符串型: 如varchar(256) ,nvarchar(256),这里256就代表长度是256个字节,可以存128个中文字符。注意中文字符不单单指汉字,也包括在中文状态下输入的各种符号;
(4)日期时间型:如date 指日期, time 指时间 ,datetime 指日期和时间;
(4)其他类型: text 文本型,money 货币型 ,实际上可以看做是字符型和数值型更深化的应用形式。
2.用户自定义数据类型:理解了系统数据类型,看到用户自定义类型就很好理解了,自定义类型就是为了方便调用而预先定义好的类型。
打开数据库对象资源管理器,依次点开数据库--可编程性--用户定义数据类型,就能查看已经自定义好的数据类型。
自定义数据类型的使用和系统数据类型使用方法是一样的,只要用的多,能记得住名字,就会很方便。自定义的语句如下:
exec sp_addtype 类型名称 ,'系统数据类型','是否为空'
如:
exec sp_addtype homeAddress 'varchar(120)','not null'
这就定义了一个自定义类型 homeAddress ,本质上是个字符型varchar(120) ,那么在以后的应用场景中,我们定义变量或创建表结构的时候,就可以直接拿homeAddress 这个来用了。
那么说到变量 和表了,这是个什么概念呢,请关注公众号我们下期讲吧,有问题欢迎在评论区讨论!