蓝蓝高频面试之数据库系列第一期数据库基础20题

平时使用char类型定义字段时,往往会指定其长度M,即char(M)。其实M指的是字符数,即这个字段最多存储多少个字符,M可不指定,默认为1,范围是[0,255],单个字母、数字、中文等都是占用一个字符。utf8字符集下一个中文字符占用3个字节。这个怎么去测试呢。举个例子

先来创建一个表

CREATETABLE`char_lanlan1`(`col1`charDEFAULTNULL,`col2`char(5)DEFAULTNULL,`col3`char(10)DEFAULTNULL)ENGINE=InnoDBDEFAULTCHARSET=utf8;执行下方语句来测试char(x)中x的范围。

altertablechar_tb1addcolumncol4char(0);altertablechar_tb1addcolumncol4char(0);如果是下方的语句,则会报错了

altertablechar_tb1addcolumncol5char(256);VARCHAR用于存储可变字符串,是最常见的字符串数据类型。它比CHAR更节省空间,因为它仅使用必要的空间。VARCHAR需要1或2个额外字节记录字符串长度,如果列的最大长度不大于255字节则只需要1字节。

CHAR是定长的,根据定义的字符串长度分配足够的空间。CHAR会删除末尾空格。假如申请了char(10)的空间,那么无论实际存储多少内容.该字段都占用10个字符,而varchar是变长的,也就是说申请的只是最大长度,占用的空间为实际字符长度+1,最后一个字符存储使用了多长的空间.

CHAR适合存储很短的字符串,或所有值都接近同一个长度,例如存储密码的MD5值。对于经常变更的数据,CHAR也比VARCHAR更好,因为定长的CHAR不容易产生碎片。对于非常短的列,CHAR在存储空间上也更有效率,例如用CHAR来存储只有Y和N的值只需要一个字节,但是VARCHAR需要两个字节,因为还有一个记录长度的额外字节。

在检索效率上来讲,CHAR>VARCHAR,因此在使用中,如果确定某个字段的值的长度,可以使用char,否则应该尽量使用VARCHAR.例如存储用户MD5加密后的密码,则应该使用CHAR。

适用场景:字符串列的最大长度比平均长度大很多、列的更新很少、使用了UTF8这种复杂字符集,每个字符都使用不同的字节数存储。

什么是事务

事务由单独单元的一个或多个SQL语句组成,在这个单元中,每个SQL语句是相互依赖的。而整个单独单元作为一个不可分割的整体,如果单元中某条SQL语句一旦执行失败或产生错误,整个单元将会回滚。所有受到影响的数据将返回到事物开始以前的状态;如果单元中的所有SQL语句均执行成功,则事物被顺利执行。

THE END
1.人际关系的句子关于人际关系的句子描写人际关系的好句人际关系的句子、描写人际关系的句子、关于人际关系的句子、金句、经典语句文案欣赏:1.我其实并不孤僻,简直可以说开朗活泼,但大多时候我很懒,懒得经营一个关系,还有一些时候,就是爱自由,觉得任何一种关系都会束缚自己。当然最主要的,还是知音难觅。我老觉得跟大多数https://www.mingyantong.com/tags/168461
2.关于人际关系的句子讨厌复杂的人际关系的说说网络文章关于人际关系的句子 1、有一种人总希望别人在耕种时身强力壮,收获时却染病死去。2、人际关系是人与人https://bbs.openke.cn/thread-509554-1-1.html
3.伯特·海灵格先生关于和母亲关系论述的95句经典语句在这个特殊的日子里,特别收集并整理了伯特·海灵格先生关于和母亲关系论述的99句经典语句。在此诚挚地祝福天下所有的妈妈——母亲节快乐! 1.所有的疗愈指向唯一的成功途径:就是让人们和他们的父母联结。 2.关于传承生命,父母每件事情都做对了,其中没有发生任何错误,在这根本的问题里,所有的父母都是完美的。 https://www.jianshu.com/p/03bd0543a78d
4.高中数学知识点总结大全(最新版复习资料)⑷三角函数:有关概念、同角关系与诱导公式、和、差、倍、半公式、求值、化简、证明、三角函 数的图象与性质、三角函数的应用 ⑸平面向量:有关概念与初等运算、坐标运算、数量积及其应用 ⑹不等式:概念与性质、均值不等式、不等式的证明、不等式的解法、绝对值不等式、不等式的应 http://www.360doc.com/document/17/1129/17/34152255_708367180.shtml
5.自考《互联网数据库》实践考核模拟题汇总自考C.把表单信息传送到任何关系数据库中 D.很容易地把SQL语句传送到任何关系数据库中 29.成员Java.sql.DataTruncation属于JDBC中的( ) A. Java JDBC异常类 B. Java JDBC接口类 C. Java JDBC数据传输类 D.普通Java JDBC类 30.下列关于ASP的说法中,错误的是( ) https://www.educity.cn/zikao/145525.html
6.常见的关联词语例(21)中“要”用于假设复句中,承接前面表递进关系的语句,又与表递进的关联副词“也”形成关联,多重语义关系连用,意义已经虚化。 3.怕(4例) “怕”表假设,义为“如、若、倘”,是宋金元时的俗语词。《琵琶记》中共有4处“怕”表假设关系的用例,且全位于假设分句前一小句的句首。如: https://www.360wenmi.com/f/file5gd79m34.html
7.Oracle从入门到精通(笔记)夏寥寥当执行创建索引、查询等操作时,Oracle可能会使用一些临时存储空间,用于暂时的保存解析过的查询语句以及在排序过程中产生的临时数据。 2.2.4 表空间 表空间是数据库的最大逻辑划分区域,通常用来存放数据表、索引、回滚段等数据对象,任何数据对象在创建时都必须被指定存储在某个表空间中。 http://blog.chinaunix.net/uid-28266791-id-5752386.html
8.遴选公文写作能力提升16种常用标点符号的正确写法及用法为了表示句与句之间,段与段之间的紧密关系,特意将破折号置于语句或段落的末尾,起到导引下文的作用。 如:飞机场的贵宾室里,张学良夫妇被蜂拥而至的记者们团团围住—— 记者:您是在何时和李登辉总统谈到希望出国的? I、用于总结上文 其特点是破折号后面是对前面的内容进行概括性的总结。 https://www.gongxuanwang.com/articleDetail/20347
9.文言文断句技巧和练习有些要求断句的文段在结构上存在较明显的结构关系:或并列关系,语句间无明显的主次之分;或总分关系,语句间会有中心句与支撑句,在支撑句的展开上一般也存在一定的逻辑关系;或转折关系,语句间的转折会从语意上体现出来,有时也会有鲜明的词语提示(如“而”“然”“然则”等);或因果关系,语句间会有隐含的因果联系https://www.360doc.cn/article/64176506_1059192976.html
10.2022年河南公务员考试行测试题卷(考生回忆版)9.下列语句与其作者的对应关系正确的有几项? ①要恢复民族的地位,便先要恢复民族的精神——孙中山 ②我自横刀向天笑,去留肝胆两昆仑——谭嗣同 ③面壁十年图破壁,难酬蹈海亦英雄——周恩来 ④如烟往事俱忘却,心底无私天地宽——陶铸 A.1 B.2 C.3 https://gwy.haedu.cn/henangongwuyuan/2022/0718/1178485.html
11.嘉兴教育学院教学评价2003年高考语文试题分析按照合理的顺序,下面的内容应该先叙述“草原带”,再叙述“森林带”。第②句是写草原上的情景,而①③⑤是写与森林有关的内容。于是,几个句子排列的顺序应为④②①③⑤,各个语句之间形成合理的逻辑关系,构成一个连贯的语段。这种总——分的叙述方式是考生常见常用的。因此,本题的难度不大。http://www.jxjy.com.cn/art/2004/9/13/art_1121_238828.html
12.形而上学中的柏拉图主义(斯坦福哲学百科)柏拉图主义者坚持存在着很多不同种类的这种句子。接下来,我们会考虑试图建立数学对象(比如,数),命题,性质,关系,语句类型,可能世界,逻辑对象,和虚构对象之存在的这一论据的各种版本。 4.1数学对象 关于数学对象的柏拉图主义主张我们的数学理论的定理——如“3是素数”这样的句子(一个算术定理)以及存在无穷多的超限基数https://www.douban.com/note/725864042