MySQL基本操作

– 查看表的数据结构
– 语法 describe <表名>
– show create table <表名>
describe inp_entrealation
show create table inp_entrealation
– 简写
desc inp_entrealation;

– 修改字段数据类型
– 语法 alter table <表名> MODIFY <字段> <数据类型>
alter table inp_entrealation MODIFY REFPARKID varchar(32)

– 修改字段名(以及数据类型-数据类型必须加上)
– 语法 alter table <表名> change <旧字段> <新字段> <数据类型>
alter table inp_entrealation change REFPARKID refparkids varchar(33)
alter table inp_entrealation change refparkids REFPARKID varchar(32)

– 添加字段
– 语法 alter table <表名> add <字段> <数据类型>
– [约束条件] [first | after <字段>] first 放在第一位,after 放在某个字段后面
alter table inp_entrealation add testziduan varchar(22)

– 删除字段
– 语法 alter table <表名> drop <字段>
alter table inp_entrealation drop testziduan

– 修改字段排列位置
– 语法 alter table <表名> modify <字段1> <数据类型> first | after <字段2>
alter table inp_entrealation modify REFPARKID varchar(32) after RID

describe inp_entrealation

show engines

show create table inp_entrealation

– 删除表的外键约束
– alter table <表名> drop foreign key <外键约束名>

– 删除数据表
– 语法 drop table [if exists] 表1,表2,表3
drop table if exists inp_entrealation

show tables

– MySQL存储引擎比较
MySQL常用的存储引擎为MyISAM、InnoDB、MEMORY、MERGE,其中InnoDB提供事务安全表,其他存储引擎都是非事务安全表。

  1. MyISAM
    MyISAM是MySQL的默认存储引擎。MyISAM不支持事务、也不支持外键,但其访问(读)速度快,对事务完整性没有要求。
    MyISAM除了提供ISAM里所没有的索引和字段管理的大量功能,MyISAM还使用一种表格锁定的机制,来优化多个并发的读写操作,其代价是你需要经常运行OPTIMIZE TABLE命令,来恢复被更新机制所浪费的空间。MyISAM还有一些有用的扩展,例如用来修复数据库文件的MyISAMCHK工具和用来恢复浪费空间的MyISAMPACK工具。MYISAM强调了快速读取操作,这可能就是为什么MySQL受到了WEB开发如此青睐的主要原因:在WEB开发中你所进行的大量数据操作都是读取操作。所以,大多数虚拟主机提供商和INTERNET平台提供商只允许使用MYISAM格式。MyISAM格式的一个重要缺陷就是不能在表损坏后恢复数据。
    InnoDB存储引擎提供了具有提交、回滚和崩溃恢复能力的事务安全。但是比起MyISAM存储引擎,InnoDB写的处理效率差一些并且会占用更多的磁盘空间以保留数据和索引。

2.MEMORY/HEAP
MEMORY(又叫HEAP)存储引擎使用存在内存中的内容来创建表。每个MEMORY表只实际对应一个磁盘文件。MEMORY类型的表访问非常得快,因为它的数据是放在内存中的,并且默认使用HASH索引。但是一旦服务关闭,表中的数据就会丢失掉。 HEAP允许只驻留在内存里的临时表格。驻留在内存里让HEAP要比ISAM和MYISAM都快,但是它所管理的数据是不稳定的,而且如果在关机之前没有进行保存,那么所有的数据都会丢失。在数据行被删除的时候,HEAP也不会浪费大量的空间。HEAP表格在你需要使用SELECT表达式来选择和操控数据的时候非常有用。
MEMORY主要用于那些内容变化不频繁的代码表,或者作为统计操作的中间结果表,便于高效地堆中间结果进行分析并得到最终的统计结果。

  1. MERGE
    MERGE存储引擎是一组MyISAM表的组合,这些MyISAM表必须结构完全相同。MERGE表本身没有数据,对MERGE类型的表进行查询、更新、删除的操作,就是对内部的MyISAM表进行的。
    MERGE用于将一系列等同的MyISAM表以逻辑方式组合在一起,并作为一个对象引用它。MERGE表的优点在于可以突破对单个MyISAM表大小的限制,通过将不同的表分布在多个磁盘上,可以有效的改善MERGE表的访问效率。

MyISAM与InnoDB的区别
  InnoDB和MyISAM是许多人在使用MySQL时最常用的两个表类型,这两个表类型各有优劣,视具体应用而定。基本的差别为:MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持。MyISAM类型的表强调的是性能,其执行数度比InnoDB类型更快,但是不提供事务支持,而InnoDB提供事务支持已经外部键等高级数据库功能。

MyISAM表还支持3中不同的存储格式:
1 静态表
2 动态表
3 压缩表
静态表是默认的存储格式,静态表中的字段都是非变长的字段,优点是:存储非常迅速,容易缓存,出现故障容易恢复;缺点是:占用的空间通常比动态表多。(注意: 在存储时,列的宽度不足时,用空格补足,当时在访问的时候并不会得到这些空格)
动态表的字段是变长的,优点是:占用的空间相对较少,但是频繁地更新删除记录会产生碎片,需要定期改善性能,并且出现故障的时候恢复相对比较困难。
压缩表占用磁盘空间小,每个记录是被单独压缩的,所以只有非常小的访问开支。

InnoDB存储方式为两种:1 使用共享表空间存储 2 使用多表空间

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值