非后端开发Mysql日常使用小结
数据库的五个概念
- 数据库服务器
- 数据库
- 数据表
- 数据字段
- 数据行
那么这里下面既是对上面几个概念进行基本的日常操作。
数据库引擎使用
这里仅仅只介绍常用的两种引擎,而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
当然,也可以通过修改配置文件my.ini在[mysqld]最后添加为上default-storage-engine=InnoDB,重启服务,数据库默认的引擎修改为InnoDB。
数据库操作
>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日常使用小结的更多相关文章
- 招聘前端、Java后端开发、测试、Mysql DBA
		公司介绍: http://www.lagou.com/gongsi/43095.html http://www.yamichu.com 简历发到: zhuye@yamichu.com 招聘职位: JA ... 
- 后端开发实践——Spring Boot项目模板
		在我的工作中,我从零开始搭建了不少软件项目,其中包含了基础代码框架和持续集成基础设施等,这些内容在敏捷开发中通常被称为"第0个迭代"要做的事情.但是,当项目运行了一段时间之后再来反 ... 
- ABP开发框架前后端开发系列---(14)基于Winform的ABP快速开发框架
		前面介绍了很多ABP系列的文章,一步一步的把我们日常开发中涉及到的Web API服务构建.登录日志和操作审计日志.字典管理模块.省份城市的信息维护.权限管理模块中的组织机构.用户.角色.权限.菜单等内 ... 
- 后端开发实践:Spring Boot项目模板
		在我的工作中,我从零开始搭建了不少软件项目,其中包含了基础代码框架和持续集成基础设施等,这些内容在敏捷开发中通常被称为"第0个迭代"要做的事情.但是,当项目运行了一段时间之后再来反 ... 
- 同事内推的那位Linux C/C++后端开发同学面试没过......
		最近同事内推了一位 Linux C/C++ 后端开发的同学到我们公司面试,我是一面的面试官,很遗憾这位工作了两年的同学面试表现不是很好.我问了如下一些问题: "redis持久化机制,redi ... 
- 规范——Java后端开发规范
		Java后端开发规范 一.技术栈规约 二.命名规范 三.Java代码规范(注释规范.异常与日志.代码逻辑规范) 四.Mybatis与SQL规范 五.结果检查(单元测试及代码扫描) 六.安全规范 一.技 ... 
- Java后端开发——美团(牛客)
		Java后端开发--美团(牛客) Java的基本数据类型,各自的字节数  老生常谈,不多说了. 类型 字节数 byte 1字节 short 2字节 int 4字节 long 8字节 float 4字 ... 
- 2022美团Java后端开发春招实习面经
		2022美团Java后端开发春招实习面经 一面 1.讲一下计算机网络的五层架构,每层分别有什么协议  五层架构:应用层.运输层.网络层.数据链路层.物理层  2.什么是 Http 协议,各种 Ht ... 
- 零基础入门 Java 后端开发,有哪些值得看的视频?
		目前网络上充满了大量的 Java 视频教程,然而内容却鱼龙混杂,为了防止小伙伴们踩坑,一枫结合自己的学习经验,向大家推荐一些不错的学习资源. 作为一名非科班转码选手,可以说,我是在哔哩哔哩上的研究生! ... 
随机推荐
- Mysql的事务及行级锁
			转自:http://www.cnblogs.com/edwinchen/p/4171866.html 以签到为例,每个用户每天只能签到一次,那么怎么去判断某个用户当天是否签到呢?因为当初表设计的时候, ... 
- m6A甲基化及预测方法工具总结
			DNA.RNA和蛋白三个层面的可逆修饰示意图(Fu et al. Nature Reviews Genetics, 2014) DNA和蛋白存在各种修饰,RNA也不例外,目前已知的RNA修饰已经超过上 ... 
- 为什么Hashtable ConcurrentHashmap不支持key或者value为null
			ConcurrentHashmap HashMap和Hashtable都是key-value存储结构,但他们有一个不同点是 ConcurrentHashmap.Hashtable不支持key或者val ... 
- 2019沈阳网络赛B.Dudu's maze
			https://www.cnblogs.com/31415926535x/p/11520088.html 啊,,不在状态啊,,自闭一下午,,都错题,,然后背锅,,,明明这个简单的题,,, 这题题面不容 ... 
- 为什么有的编程规范要求用 void 0 代替 undefined
			Undefined Undefined 类型表示未定义,它的类型只有一个值,就是 undefined. 任何变量在被赋值前它的值都是 undefined,但是在 JavaScript 引擎中,unde ... 
- 【干货推荐】Android开发该学习哪些东西?
			开篇: 本人也是众多Android开发道路上行走的一员,听了不少大神的知乎live,自己也看了不少书,也和不少前辈交流过,所以在这里分享一下Android开发应该学习的书籍以及知识,当然,也包括一些方 ... 
- 解决android splash 启动白屏问题
			有时我们会发现 ,在splash 页面启动之前会有那么零点几秒的白屏, 真的很让人抓狂 解决办法其实也很简单 . 1.在style.xml中定义一个样式, 这里引入 splash页面的 图片, 注意不 ... 
- CoDeSys
			CoDeSys是全球最著名的PLC内核软件研发厂家德国的3S(SMART,SOFTWARE,SOLUTIONS)公司出的一款与制造商无关的IEC 61131-1编程软件.CoDeSys 支持完整版本的 ... 
- 右键没有新建word选项
			两类解决办法 一. 1. 新建一个txt文本,并插入如下内容: Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\.doc] @=&quo ... 
- Day 25 网络基础2
			ip地址划分 ip地址由32位二进制组成. 什么是二进制?0101 10进制 0-9 10 2进制 0-1 10 二进制1100 ==1X2^3+1X2^2+0X2^1+0X2^0 =12 十进制15 ... 
