MySql使用总结
来源:SegmentFault
时间:2023-02-24 13:40:06 468浏览 收藏
本篇文章给大家分享《MySql使用总结》,覆盖了数据库的常见基础知识,其实一个语言的全部知识点一篇文章是不可能说完的,但希望通过这些问题,让读者对自己的掌握程度有一定的认识(B 数),从而弥补自己的不足,更好的掌握它。
数据库的五个概念
- 数据库服务器
- 数据库
- 数据表
- 数据字段
- 数据行
那么这里下面既是对上面几个概念进行基本的日常操作。
数据库引擎使用
这里仅仅只介绍常用的两种引擎,而InnoDB是从MySQL 5.6.版本以后InnoDB就是作为默认启动使用的存储引擎。
(1) InnoDB a,支持ACID,简单地说就是支持事务完整性、一致性; b,支持行锁,以及类似ORACLE的一致性读,多用户并发; c,独有的聚集索引主键设计方式,可大幅提升并发读写性能; d,支持外键; e,支持崩溃数据自修复; InnoDB设计目标是处理大容量数据库系统,它的CPU利用率是其它基于磁盘的关系数据库引擎所不能比的。 它是一个可靠地事务处理引擎,不支持全文本搜索 (2) MyISAM a,不支持 每次查询具有原子性 b,只支持表所 c,强调的是性能,其执行数 度比InnoDB类型更快,但是不提供事务支持 d,如果执行大量的SELECT,MyISAM是更好的选择 e,缺点:就是不能在表损坏后恢复数据。(是不能主动恢复)
既然知道了这俩种引擎的优缺点,那么写一下几个常用的API操作。
show engines; --显示所有可用的引擎 show table status from myDB; --查看myDB数据库下的所有表使用的引擎 show create table 表名; --指定查看表名的所有段名以及引擎 create table 表名(id int primary key, name varchar(50)) engine=MyISAM; --建表的时候指定引擎 alter table 表名 Engine= MyISAM; --建完表后修改引擎为MyISAM
当然,也可以通过修改配置文件
>net start mysql //启动数据库和停止net stop mysql >mysql -u root -p //默认登陆本机(-h是主机地址) >SELECT USER(); //显示当前用户 >create database 数据库名; //创建数据库 >SELECT DATABASE(); //显示当前使用数据库 >SHOW DATABASES //显示所有数据库列表 >USE DATABASE 库名; //使用该数据库 >DROP DATABASE 库名 //删除数据库 >CMD终端:mysqladmin -u用户名 -p旧密码 password 新密码 //修改密码 >mysql语句:set password for 用户名@localhost = password('新密码');
数据表操作
>SHOW TABLES; //列出库中所有的表 >DESCRIBE table1; //查看表结构 >show columns from 数据表; //显示表的所有段名以及类型 >CREATE TABLE 表名 (字段名 VARCHAR(20), 字段名 CHAR(1)); //增加数据表和字段名 >DROP TABLE 表名; //删除表 >alter table stu rename as students; //将旧表明stu改为新表明students。
表字段操作
添加字段
语法:ALTER TABLE 表名 ADD COLUMN 字段名 字段类型 DEFAULT NULL; 示例:ALTER TABLE dictionary ADD COLUMN calss VARCHAR(10) DEFAULT NULL; -- dictionary是表名
修改字段名称
语法:ALTER TABLE 表名 CHANGE 旧字段名 新字段名 新字段类型 DEFAULT NULL; 示例:ALTER TABLE dictionary CHANGE calss class VARCHAR(10) DEFAULT NULL;
删除字段
语法:ALTER TABLE 表名 DROP COLUMN 字段名 示例:ALTER TABLE dictionary DROP COLUMN calss;
批量增加字段
bagin; //事务开始 alter table em_day_data add f_day_house7 int(11); alter table em_day_data add f_day_house8 int(11); alter table em_day_data add f_day_house9 int(11); alter table em_day_data add f_day_house10 int(11); commit; //提交事务,事务结束
数据增删改查
MySQL语句忽略大小写的。每张数据表只能存在一个主键。
Tip: 由于数据表的首个字段名(就是主键,假如是id)是不能重复命名的(建议使用id,因为每张表只能存在一个主键),所以建议删除的时候使用(where id=1)键名来定位匹配更好。
查
var sql = 'SELECT * FROM websites'; --查询整个websites表所有数据 var sql = 'SELECT name FROM websites'; --查询整个websites表name字段数据
增
-- websites表必须存在(Id,name,url,alexa,country)这些字段名 var addSql = 'INSERT INTO websites(Id,name,url,alexa,country) VALUES(2,"taobao","http://wwww.taobao.com","3","CN")'; insert into table1(id,name,url,country) values(6,"lucas","https://wwww.lucas.com","CN");
改
-- where是定位到上面的增加数据(可以使用任何"字段名=值"来匹配),并更改俩个数据 var modSql = 'UPDATE websites SET name = "facebook",url = "http://www.facebook.com" WHERE Id = 2'; var modSql = 'update websites SET alexa="12" where name="taobao"'; --定位name字段为taobao并更新了alexa字段的值
删
var delSql = 'DELETE FROM websites where id=2'; -- 删除id=2的数据(当然) -- 删除name=lucas的数据(建议使用id,因为每张表只能存在一个主键),因为他会将表中所有name=lucas的值全部删除 delete from websites where name="lucas";
以上就是《MySql使用总结》的详细内容,更多关于mysql的资料请关注golang学习网公众号!
声明:本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
-
499 收藏
-
244 收藏
-
235 收藏
-
157 收藏
-
101 收藏
最新阅读
更多>
-
475 收藏
-
266 收藏
-
273 收藏
-
283 收藏
-
210 收藏
-
371 收藏
课程推荐
更多>
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 542次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 507次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 497次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 484次学习