在VB中怎样区分和使用integer\long\single\double\string等?

我记得有一次,在编程培训课上,有个学员问:“为什么我用的变量存不了那么多的数据?”我看着他电脑上的代码,他写的是用integer类型存储会员数。
我说:“你这是把会员数限制在了3 2 7 6 7 以内,超过了这个数字,系统就会崩溃。
”他一脸疑惑,我又解释说:“因为你用integer类型,它的存储范围有限,只能表示-3 2 7 6 8 到3 2 7 6 7 之间的整数。

然后我突然想到,还有个事,我之前遇到过一个人,他用long类型存储用户ID,结果因为用户数量超过了2 0亿,系统也出现了问题。
我告诉他:“你这是用long类型的限制,它虽然能表示更大的范围,但也有限制。

等等,还有个事,我发现很多初学者在使用字符串时,经常忽略字符编码的重要性。
我记得有一次,有个学员用UTF-8 编码存储了中文字符,结果在页面上显示出来乱码。
我花了很长时间才帮他解决这个问题。

这让我想到,编程的世界真是复杂,每种类型都有它的适用场景和限制。
那么,到底如何才能在编程的道路上走得更远呢?

vb中日期的两种表示方法

说实话,VB里面日期这事儿挺有意思的。
用数字符号()包起来,像1 9 9 3 -1 -1 这种,一看就懂,挺直观。
我当时也没想明白为啥1 8 9 9 年1 2 月3 0日是基准日,后来查了查资料才知道,可能是微软开发VB的时候,觉得这个日子比较靠前,方便做日期计算。

除了这种直接看懂的写法,VB还支持用双精度浮点数表示日期。
这方法挺特别的,整数部分代表从1 8 9 9 年1 2 月3 0日开始,到那个日期隔了多少天。
要是日期在基准日之前,整数就带负号。
小数部分呢,就是从午夜到具体时间点,过了多少秒,占一天的比例。
比如2 01 2 年5 月5 日1 7 :3 5 :5 0,用浮点数表示就是4 1 03 4 .7 3 3 2 1 7 5 9 2 6 4 1 03 4 就是从1 8 9 9 年1 2 月3 0日到2 01 2 年5 月5 日隔的天数,小数0.7 3 3 2 1 7 5 9 2 6 就是当天过了多少比例的时间。

用浮点数表示日期,好处是做日期计算方便。
比如算两个日期差多少天,直接相减就行。
跨年这种,也不复杂。
跟数据库打交道的时候,这种表示法也用得多。
数据库很多地方也是这么处理日期的。

两种方法都有用。
直接写1 9 9 3 -1 -1 这种,代码好看,人看得懂。
浮点数那种,计算方便,跟外部系统对接也方便。
关键是看你在啥场景下用。
要是写个简单程序,直接用符号就行。
要是要做复杂计算,或者要跟数据库交互,用浮点数可能更合适。

数据库中所有的数据类型?

哈,你这是对SQL数据库数据类型做个小总结啊。
我来帮你详细聊聊。

上周有个客人问我,MySQL和SQL Server的数据类型有什么区别,我给他解释了一下。
首先说MySQL,这货的数据类型确实挺丰富。

1 . Text类型:这主要是用来存储文本的,比如文章、评论啥的。
MySQL里有几种Text类型,比如TINYTEXT、TEXT、MEDIUMTEXT和LONGTEXT,区别主要在于能存储的文本长度。

2 . Number类型:这可是数据库里的老朋友了。
MySQL的Number类型包括整数和浮点数。
整数里有个特别的地方,就是可以加个UNSIGNED,这样你的数字就只能从0开始,不能再是负数了。

3 . Date类型:这类型用来存储日期和时间。
MySQL里有个DATETIME和TIMESTAMP,虽然它们显示的格式差不多,但工作方式可大不相同。
DATETIME是手动设置的,而TIMESTAMP会自动记录插入或更新记录的时间,而且它还能接受多种格式的输入,比如YYYYMMDDHHMMSS。

再来说说SQL Server,它也跟MySQL差不多,也有String、Number和Date类型。

1 . String类型:SQL Server的String类型主要是VARCHAR和CHAR,VARCHR是可变长度的字符串,而CHAR是固定长度的。

2 . Number类型:SQL Server的Number类型比MySQL稍微复杂一点,有INT、FLOAT、DECIMAL等。

3 . Date类型:这跟MySQL的Date类型类似,用来存储日期和时间。

至于Microsoft Access,这货的数据类型也差不多,就是比MySQL和SQL Server简单一些。

总之,每种数据库的数据类型都有自己的特点和用途,用的时候得根据实际情况来选择。
反正你看着办,数据类型选对了,数据库管理起来才轻松。
我还在想这个问题呢,不同数据库的数据类型还有哪些细微的差别,等你告诉我哦。