MySQL的语法及其使用指南
2022-11-12 09:20:40
内容摘要
这篇文章主要为大家详细介绍了MySQL的语法及其使用指南,具有一定的参考价值,可以用来参考一下。
对此感兴趣的朋友,看看idc笔记做的技术笔记!先看看MySQL支持的SQL语句的分类1,数
文章正文
这篇文章主要为大家详细介绍了MySQL的语法及其使用指南,具有一定的参考价值,可以用来参考一下。
对此感兴趣的朋友,看看idc笔记做的技术笔记!
先看看MySQL支持的SQL语句的分类1,数据库的选取,创建,丢弃和变更usecreatedatabasedrapdatabasealterdatabase2,数据表和索引的创建,变更和丢弃createtabledroptablecreateindexdropindexalterindex3,从数据表检索信息selectunion4,事务处理begincommitrollbacksetautocommit5,对数据表里面的信息进行修改deleteinsertloaddatareplaceupdate6,管理型命令flushgrantrevoke一,命名规则1MySQL允许用在名字中的系统字符.任何字母数字加上”_”或“$”2名字的长度.数据库,数据表,数据列,索引等名字最多64个字母256别名最多256个字母3名字的限定符依据不同的上下文,有时需要给某些名字加上某个限制:如数据列的全限定,部分限定,以及无限制.这一点比较容易理解select*fromdb_name.tbl_name…二,MySQL中的大小写问题关键字和函数名:不区别数据库名数据表名:根据服务器主机系统而定数据列名索引名:不区别别名:区别大小写一般来说,不管系统是否区分数据库名和数据表名中的字母大小写情况,我们都应该在同一个查询语句里面以前后一致的字母大小写形式来写出这些名字,这是一个非常好的编程习惯。三,MySQL支持的名种数据表类型详解1,ISAM数据表这是3.23版本之前的MySQL支特的唯一一种表类型,目前己经过时,MyIASM处理程库逐步取代了ISAM处理程序,这种老式的表类型己经没有人在用了2,MyIASM数据表•这是目前中MySQL默认使用的数据表类型。其优点是•如果主机操作系统支持大尺寸文件,数据表长度就能够很大,就能客纳更多的数据.•数据表内容独立于硬件也就是说可以把数据表在机器之间随意拷贝•提高了索引方面的功能•提供了更好的索引键压缩效果•auto_incremnet能力加强•改进了对数据表的完整性检查机制•支持进行fulltext全文本搜索3,Merge数据表这是一种把相同结构的MyIASM数据表组织为一个逻辑单元的方法4,HEAP数据表这是一种使用内存的数据表,而且各个数据行的长度固定,这两个特性使得这种类型数据表的检索速度非常快,作为一种临时性的数据表,HEAP在某些特定情况下很有用。5,BDB数据表这种数据表支持事务处理机制具有良好的并发性能6,InnoBDB数据表这是最近加入MySQL的数据表类型,有许多新的特性支持事务处理机制崩溃后能够立刻恢复支持外键功能,包括级联删除具有并发功能7这种数据表在硬盘上的文件存储方式IASMFrmisdismMyISAMFrmmydmyiMergeFrmmrgHeapFrmBDBFrmdbInnoBDBfrm8数据表的可移植性通用方法:吧数据表的内容导出到一个文本文件中,然后拷贝到目的地硬盘上,在用脚本加载到数据库里面,这是首先我们应该掌握的方法。但就文件层次的操作来说,某些数据表是可以单独拷贝的。看表了ISAMNoMyIASMYesBDBNoInnoBDBYes四,索引的初步知识1,索引是加快数据表内容访问性能的基本手段,其基本特性:为可以索引单独的数据列也可以构造包含多个数据列的复合索引索引可以包含重复键值可以为一个数据表建立多个索引2,不同的数据表有着不同的索引特性使用的时候需要区别对待3,如何创建索引①用altertable命令创建索引②用createindex命令创建索引③在createtable时创建索引五,变更数据表的结构当发现某个数据表的结构己经不能满足我们的使用要求时,就要对其结构进行变更.可能需要这个数据表存放比以前更多的信息;也可能是这个数据表里面的某些信息己经没用;了或许是现有的某个数据列宽度太窄…在这些情况下都要用到alter语匀1,重新命名数据表altertableArenametoB//数据表A改名为BrenametableAtoB//数据表A改名为BrenameAtoC,BtoA,CtoA//数据表A和数据表B互换名字altertableS.ArenametoT.A//数据库S里面的表A移动到数据库B里面renametableS.AtoT.A//数据库S里面的表A移动到数据库B里面2,改变数据列的类型我们现在要把数据表A里面的一个smallintunsigned类型的数据列I再次改动为mediumintunsigned类型altertableAmotifyImediumintunsignedaltertableAchangeIImediumintunsigned注意change子句的特点:不仅能够改变数据列的类型,还能改变数据列的名字。这是modify子句所不能完成的。下面就把这个数据列改名了。altertableAchangeIJmediumintunsigned3,将数据表由可变长度数据行转变成固定长度数据行有的时候为了提高性能,需要做这样的转变,但有一点需要注意:必须用同一条alter命令来一次改变所有的数据列,不能仅仅改变一个数据列!举例如下:createtableA(namevarchar(40),addressvarchar(80))我们开始修改命令就应该是:altertableAmodifynamechar(40),modifyaddresschar(80);4,将数据表由固定长度数据行转变成可变长度数据行如果觉得空间利用率不高,那就需要再转变回来,这个就很简单了,没有特别要求altertableAmodifynamevarchar(40)5,转换数据表类型我们知道,MySQL数据库存在多种数据表类型,但每一种类型的特性并不相同。如果你想让你的数据表支持事务处理机制。那就必须把它搞成BDB或innoBDB格式altertableAtype=BDBaltertableAtype=InnoBDB注:关于MySQL的语法及其使用指南的内容就先介绍到这里,更多相关文章的可以留意
代码注释