mysql语法:MySQL的语法及其使用指南

先看看MySQL支持SQL语句分类
数据库选取创建丢弃和变更
use
create database
drap database
alter database
数据表和索引创建变更和丢弃
create table
drop table
create index
drop index
alter index
从数据表检索信息
select
union
事务处理
begin
commit
rollback
autocommit
对数据表里面信息进行修改
delete
insert
load data
replace
update
管理型命令
flush
grant
revoke
,命名规则
1MySQL允许用在名字中系统.
任何字母数字加上”_” 或 “$”
2名字长度.
数据库,数据表,数据列,索引等名字最多64个字母
256别名最多256个字母
3名字限定符
依据区别上下文,有时需要给某些名字加上某个限制:如数据列全限定,部分限定,以及无限制.这点比较容易理解
select * from db_name.tbl_name…
2MySQL中大小写问题
关键字和名:不区别
数据库名数据表名:根据服务器主机系统而定
数据列名索引名:不区别
别名:区别大小写
般来说不管系统是否区分数据库名和数据表名中字母大小写情况我们都应该在同个查询语句里面以前后字母大小写形式来写出这些名字这是个非常好编程习惯
3MySQL支持名种数据表类型详解
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这种数据表在硬盘上文件存储方式
IASM Frm isd ism
MyISAM Frm myd myi
Merge Frm mrg
Heap Frm
BDB Frm db
InnoBDB frm
8数据表可移植性
通用思路方法:吧数据表内容导出到个文本文件中然后拷贝到目地硬盘上在用脚本加载到数据库里面这是首先我们应该掌握思路方法但就文件层次操作来说某些数据表是可以单独拷贝看表了
ISAM No
MyIASM Yes
BDB No
InnoBDB Yes
4索引初步知识
1,索引是加快数据表内容访问性能基本手段,其基本特性:
为可以索引单独数据列也可以构造包含多个数据列复合索引
索引可以包含重复键值
可以为个数据表建立多个索引
2,区别数据表有着区别索引特性使用时候需要区别对待
3,如何创建索引
①用alter table命令创建索引
②用create index 命令创建索引
③在create table 时创建索引
5变更数据表结构
当发现某个数据表结构己经不能满足我们使用要求时,就要对其结构进行变更.可能需要这个数据表存放比以前更多信息;也可能是这个数据表里面某些信息己经没用;了或许是现有某个数据列宽度太窄…在这些情况下都要用到alter 语匀
1,重新命名数据表
alter table A rename to B //数据表A改名为B
rename table A to B //数据表A改名为B
rename A toC,B to A,C to A //数据表A和数据表B互换名字
alter table S.A rename to T.A //数据库S里面表A移动到数据库B里面
rename table S.A to T.A //数据库S里面表A移动到数据库B里面
2,改变数据列类型
我们现在要把数据表A里面个small unsigned类型数据列I再次改动为 medium unsigned 类型
alter table A moty I medium unsigned
alter table A change I I medium unsigned
注意change子句特点:不仅能够改变数据列类型还能改变数据列名字这是mody子句所不能完成下面就把这个数据列改名了
alter table A change I J medium unsigned
3,将数据表由可变长度数据行转变成固定长度数据行
时候为了提高性能需要做这样转变但有点需要注意:必须用同条alter命令来次改变所有数据列不能仅仅改变个数据列!举例如下:
create table A(name varchar(40),address varchar(80))
我们开始修改命令就应该是:
alter table A mody name char(40),mody address char(80);
4,将数据表由固定长度数据行转变成可变长度数据行
如果觉得空间利用率不高那就需要再转变回来这个就很简单了没有特别要求
alter table A mody name varchar(40)
5,转换数据表类型
我们知道MySQL数据库存在多种数据表类型但每种类型特性并不相同
如果你想让你数据表支持事务处理机制那就必须把它搞成BDB或innoBDB格式
alter table A type= BDB
alter table A type= InnoBDB
Tags:  mysql使用 mysqljoin语法 mysql基本语法 mysql语法

延伸阅读

最新评论

发表评论