根据定义,数据库管理系统的目的就是管理数据。即使一条简单的SELECT 1语句也涉及表达式求值以产生一个整型数据值。MySQL中的每个数据值都有类型。例如, 37.4 是一个数,而“ a b c”是一个串。有时,数据的类型是明显的,因为在使用CREATE TABLE 语句时指定了作为表的组成部分定义的每个列的类型,如:
而有时,数据类型是不明确的,如在一个表达式中引用直接值时,将值传送给一个函数,或使用从该函数返回的值,如:
INSERT 语句完成下列操作,这些操作全都涉及数据类型:
■ 将整数值14 赋给整数列i n t _ c o l。
■ 将串值“ a”和“b”传递给函数C O N C AT( )。C O N C AT( ) 返回串值“a b”,这个串值被赋予串列s t r _ c o l。
■ 将整数值1999 0 115 赋给日期列date _ c o l。而这是不匹配的,因此, MySQL将自动进行数据类型转换。要有效地利用MySQL,必须理解其怎样处理数据。本章描述了MySQL能够处理的数据类型,并讨论了在处理这些数据类型时所出现的问题,主要内容如下:
■ 通用数据类型,包括NULL 值。
■ 特殊数据类型,以及描述每种列类型的属性。有些列类型是相当常见的,如CHAR 串类型。而有的如AUTO_INCREMENT 整型和T I M E S TAMP 日期类型,其性能很特殊,应该加以理解以免出错。
■ 恰当地选择表的列类型。在创建表时,重要的是要了解怎样为自己的目的选择最好的类型,以及在几种类型都可以用于想要存储的值时选择一种类型。
■ 表达式求值规则。MySQL提供了许多可用于表达式的运算符和函数,以便对数据进行检索、显示和处理。表达式求值的规则包括类型转换规则,在一种类型的值用于另一类型的值的情况时需用到类型转换规则。理解何时进行类型转换以及怎样进行转换很重要;有的转换没有意义而且会产生错误值。将串“13”赋给整数列结果为值13,但是将串“a b c” 赋给该列得到0 值,因为“a b c”不是一个数。更坏的是,如果进行比较而不了解值的转换,可能会带来很大的危险,如在打算只对几行进行操作时,可能会更新或删除了表中的所有行。附录B和附录C提供了MySQL列类型、运算和函数的更多信息。
2.1MySQL数据类型
MySQL有几种数据类型,下面分别进行介绍。
1. 数值值
数值是诸如48 或193.62 这样的值。MySQL支持说明为整数(无小数部分)或浮点数(有小数部分)的值。整数可按十进制形式或十六进制形式表示。整数由数字序列组成。以十六进制形式表示的整数由“ 0 x”后跟一个或多个十六进制数字(” 0”到“9”及“a”到“f”)组成。例如, 0x0a 为十进制的10,而0 x ffff 为十进制的6 5 5 3 5。十六进制数字不区分大小写,但其前缀“ 0 x”不能为“ 0 X”。即0x0a 和0x0A 都是合法的,但0X0a 和0X0A 不是合法的。浮点数由一个阿拉伯数字序列、一个小数点和另一个阿拉伯数字序列组成。两个阿拉伯数字序列可以分别为空,但不能同时为空。MySQL支持科学表示法。科学表示法由整数或浮点数后跟“ e”或“E”、一个符号(“+”或“-”)和一个整数指数来表示。1.34E+12 和43.27e-1都是合法的科学表示法表示的数。而1.34E12 不是合法的,因为指数前的符号未给出。指数前的“ e”也是一个合法的十六进制数字,因此有可能会弄错。数值前可放一个负号“ -”以表示负值。
2. (字符)串值 串是诸如“Madison, Wi s c o n s i n”或“patient shows improvement”这样的值。既可用单引号也可用双引号将串值括起来。串中可使用几个转义序列,它们用来表示特殊的字符,见表2 - 1。每个序列以一个反斜杠(“/”)开始,指出临时不同于通常的字符解释。注意NUL 字节与NULL 值不同;NUL 为一个零值字节,而NULL 为没有值。
要在串中包括一个引号,可有如下三种选择:
■ 如果串是用相同的引号括起来的,那么在串中需要引号的地方双写引号即可。如:
■ 如果串是用另外的引号括起来的,则不需要双写相应引号。如:
■ 用反斜杠方式表示;这种方法不去管用来将串括起的是单引号还是双引号。如:
在串的环境中,可用十六进制常数来指定串值。其语法与前面描述的数值值相同,但是每对十六进制的数字都被看作ASCII 代码并转换为字符,其结果用于串。例如, 0 x 6 16 2 6 3作为串时为“ a b c”。
3. 日期和时间值
日期和时间是一些诸如“ 1999 - 0 6 - 17”或“12 : 3 0 : 4 3”这样的值。MySQL还支持日期/时间的组合,如“ 1999-06-17 12:30:43”。要特别注意这样一个事实,即MySQL是按年-月-日的顺序表示日期的。MySQL的初学者通常对这一点很惊奇,其实这是ANSI SQL 的标准格式。可以利用DATE _ F O R M AT( ) 函数以任意形式显示日期值,但是缺省显示格式首先显示年,而且输入值也必须首先给出年。
4. NULL 值
NULL 是一种“无类型”的值。它过去惯常表示的意思是“无值”、“未知值”、“丢失的值”、“溢出值”以及“没有上述值”等。可将NULL 值插入表中、从表中检索它们,测试某个值是否是NULL,但不能对NULL 值进行算术运算(如果对NULL 进行算术运算,其结果为NULL)。
相关推荐
Minio HTTPS证书配置实战:从申请到部署全流程
本文详细介绍了Minio HTTPS证书配置的全流程,从申请到部署,确保对象存储服务的安全性。内容包括证书类型选择、文件处理、服务配置调整及常见问题解决,帮助用户在生产环境中快速实现HTTPS加密传输,提升数据安全。
C++服务端春招面试问题总汇
记录了本人求职时期遇到的一些面试问题
告别“单打独斗”:Oh My Open Code 如何用多模型协作重塑 AI 编程范式
介绍"Oh My OpenCode"——一个能协调多个专业AI模型完成复杂开发任务的智能编程框架。您将看到它如何分配任务、发挥不同模型的独特优势,并通过并行处理和实时纠错等功能解决AI编程流程中的常见痛点。
【面试】搞定面试就这么简单!!!
参数化类型”,类型由具体的类型参数化,把类型也定义成参数形式(称之为类型形参),然后在使用/调用时传入具体的类型(类型实参)。泛型的本质是把参数的类型参数化,也就是所操作的数据类型被指定为一个参数,这种参数类型可以用在类、接口和方法中。使用泛型编写的程序代码,要比使用 Object 变量再进行强制类型转换的代码,具有更好的安全性和可读性。多种数据类型执行相同的代码使用泛型可以复用代码// 定义一个泛型方法,用于打印数组元素// 创建一个 Integer 数组。
UR5 机械臂手眼标定(Eye-in-Hand)实战:OpenCV 求解 AX=XB,误差 < 2mm
本文详细介绍了UR5机械臂在Eye-in-Hand配置下的手眼标定实战,通过OpenCV实现高精度标定,最终达到误差小于2mm的工业级精度要求。文章涵盖了标定基础原理、环境搭建、数据采集策略、核心算法实现及误差分析与优化,为视觉机械臂的自主抓取提供了实用指南。
SPAD 单光子雪崩二极管
SPAD,全称为,是一种高灵敏度的光电探测器件,能够在非常低的光照水平下检测单个光子。SPAD在工作时,当一个光子被探测器吸收后,能够触发一个雪崩效应,产生一个可以被检测到的电信号。
Docker 学习:术语、使用、Compose、Swarm
Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从 Apache2.0 协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。
AI 模型优化与部署秘籍:从理论到实战
本文系统介绍了AI模型优化与部署的关键技术。模型剪枝通过去除冗余参数减小模型规模,量化技术降低计算精度以提升效率,蒸馏方法实现知识从大模型到小模型的迁移。TensorRT通过层融合和精度校准加速GPU推理,ONNX格式实现跨框架模型转换,TFLite则优化移动端部署。这些技术共同解决了AI模型在资源受限环境下的部署难题,显著提升了模型运行效率,为AI应用落地提供了重要支撑。
工作中使用到的单词(软件开发)
1.エイリアス alias 别名 powershell使用 get-help 命令时,会得到与此命令 相关(别名)的命令 2.プロキシ proxy 代 理 3.プロモート promote 促进,提升 开发的系统新功能上线发布,有时会使用到这个词,比如 STプロモート 还有使用リリース这个词的。比如STリリース。个人认为两者含义相同。 4.見逃し み................................................................
168、OIS光学防抖系统设计:陀螺仪标定、音圈马达驱动与滚珠式/悬丝式结构选型
本文总结了OIS光学防抖系统设计中的关键问题与解决方案。作者通过实际案例指出,陀螺仪标定需重视零偏、灵敏度和温度补偿问题,音圈马达驱动需采用电流环控制并优化相位补偿。在机械结构选型方面,滚珠式适合大角度补偿但存在回差问题,悬丝式精度高但受重力影响,需根据应用场景选择。系统联调建议从开环到闭环逐步验证,注意陀螺仪与驱动频率匹配。最后给出5条经验建议:关注陀螺仪信噪比而非分辨率、预留标定余量、重视机械结构公差、配备专业调试工具、协调OIS与电子防抖的分工配合。文章强调OIS调试需针对不同模组特性进行反复测试与标
【人工智能】向量数据库全生命周期数据安全防护体系:破解向量化与检索双环节泄露风险
大模型时代,向量数据库已成为RAG(检索增强生成)架构、语义检索、多模态应用的核心基础设施,解决了大模型幻觉、长上下文窗口限制、私有知识落地等核心痛点。但行业普遍存在认知误区:将Embedding向量等同于“无害的语义压缩乱码”,忽视了向量数据原生的泄露风险。
安装 MongoDB、与SQL语法对比、Python (异步)操作 mongodb:增、删、改、查
安装 MongoDB、与SQL语法对比、Python (异步)操作 mongodb:增、删、改、查
LPDDR6来了!带你一文看懂它和LPDDR5/5X的差距 + 技术演进逻辑全解析
🧠从速率到架构,从总线宽度到协议设计,LPDDR6 每一个改动都不是拍脑袋做的,它针对的是AI / HPC / 云计算 / 下一代笔记本平台的真实需求。作为工程师的我们,不仅要“用得上”,更要“测得准”,因为没有测试验证,就没有量产落地!🎯LPDDR6不是未来,而是现在进行时!
爬虫教程( 4 ) --- scrapy-redis、集群、curl-cffi、scrapy-stealth、aio-scrapy、omnicrawl-core、反检测(反爬)浏览器
分布式爬虫 scrapy-redis、集群
华为的C语言编程规范.pdf
华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。
Data-Structures-and-Algorithm-Analysis-in-Java.pdf
作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...
Java开发八股准备V1.1
反射是一种在程序运行阶段,动态获取类和执行方法的能力,该方法突破了Java编译时确定类型的限制,为动态编程提供了底层支持,很多主流框架。
ET2012新版免狗免安装绿色软件
ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,
电子书专题
EXE电子书与垃圾 作者:马健邮箱:stronghorse@tom.com主页:http://stronghorse.yeah.net 目前EXE格式的电子书在网络上比较流行,制作工具五花八门,eBook Workshop和eBook Edit Pro是其中比较流行的两个。但是又有多少人知道,在你打开用它们制作的电子书的时候,其实它们已经在你的系统中悄悄产生了一些垃圾,包括注册表项、文件等。而且目
SAP B1中文培訓教材_SDK
公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说
三款常用IP发包工具介绍
AntPower 版权所有© 2003 技术文章http://www.antpower.org 第1 页共14 页AntPower-技术文章三款常用IP 发包工具介绍小蚁雄心成员郎国军著lgj@qingdao.cngb.comURL修订版本版本时间修订人说明AntPower 版权所有© 2003 技术文章http://www.antpower.org 第2 页共14 页1. 简介在从事网络产品尤其
windows网关详解 【了解网关的重要性,增加网络性能】【FreeXploiT综合文】
理解Windows中的路由表和默认网关 每一个Windows系统中都具有IP路由表,它存储了本地计算机可以到达的网络目的地址范围和如何到达的路由信息。路由表是TCP/IP通信的基础,本地计算机上的任何TCP/IP通信都受到路由表的控制。 理解路由表 你可以运行 route print 或 netstat -r 显示本地计算机上的路由表,如下图所示: C:/Documents
stunnel使用详解
http://www.stunnel.org/faq/args.htmlhttp://www.colasoft.com.cn/support/monitor_stunnel.php科来网络分析系统与stunnel结合使用科来网络分析系统是一款强大的网络检测分析工具,可对网络中未加密的数据传输进行检测分析并实时显示分析结果,包括用户的邮件收发、Web访问以及各种网络登录等操作。所以,未经加密的数据传
HYDRA 4.5 中文使用说明
H Y D R A (c) 2001-2004 by van Hauser / THC vh@thc.org> http://www.thc.orgVER 4.5HYDRA 4.5 中文使用说明(我特别补充了几个使用例子,本说明是意译)Term : FreeXploiT Author : ALLyeSNODate : 2
WinRoute 全攻略
http://www.winroute.com.cn/ 中文http://www.winroute.com/http://www.yzce.com/ygwl/proxy/winroute.htm 代理知识(详细)现在网络共享软件很多,主要分代理服务器和软网关两种方式,代理服务器是使得一个整个计算机网络同时共享一个(或多个)连接,其中代理服务器最典型是Wingate。而软网关方式是在一台
D - F e n d 簡 單 教 學 (DOSBOX Easy Shell) 【玩DOS游戏的必备软件】
D - F e n d 簡 單 教 學■ 寫 在 前 面自去年無意間接觸到DOSBox的前導程式之一-D-Fend之後,我就興起了要做一篇D-Fend簡單教學網頁的念頭,因為D-Fend真的是一套很棒的工具!相信大多數初次使用DOSBox的人,在看到英文的文字設定檔時,都會有種無力感,甚至不是很想去面對這種麻煩又擾人的設定方式,有鑑於此,有不少熱心的玩家便針對DOSBox寫出了一些便利的前導程式
FreeXploiT 成立三年感言!
04年成立的,和一个朋友,现在那个朋友不知所踪了(他叫菜菜,很早就玩汇编了)后来的两年基本是我一个人更新里面的blog我这个算是最早的安全聚合blog吧? 暗礁的也挺早 不过是团队形式的 鬼仔的05年 neeao的04.10.26我的04.10.15那时候就是想弄点资料自己收藏着看看 ,当然也有很长远的目标 就是想做一个网站 先拿blog练练手一练就是三年啊 哈。。blo
Stunnel加密通道的架设指南
在普通模式下很简单.(不用远程TELNET那么偷偷摸摸) 首先用CCPROXY架设一个本地代理,服务项目和端口都可以随意设定,以HTTP和SOCKS为例,分别开在8080和1080端口;唯一注意的是一定要选中"不允许局域网外部连接",防止无聊的人来猜密码.在用户里面可以选择用户/密码这种验证方式. 然后就是配置Stunnel.生成Stunnel.pem这个自验证加密文件的过程我就省略了,请大家参考
Mcafee(麦咖啡) 无法升级的解决办法 附:进程详解,设置指南
一直在用Macfee 8.0版杀毒软件,近日添加了两块新硬盘后,Macfee 不能升级了,提示fffff95b @ 2 返回错误,卸载后重装,升级时提示变成“初始化常规更新程序子系统失败,确保McAfee Franework Service正在运行。McAfee Common Framework 返回错误80040154@1”进服务控制台手动启动McAfee Common Framework 服务
Metasploit Framework all part 1-3
Metasploit Framework, Part 1 Pukhraj Singh, K.K. Mookhey 2004-07-12 <!--This article provides an elaborate insight into the Open Source exploit framework, the Metasploit Fra
433



被折叠的 条评论
为什么被折叠?



