非后端开发Mysql日常使用小结

数据库的五个概念

  1. 数据库服务器
  2. 数据库
  3. 数据表
  4. 数据字段
  5. 数据行

那么这里下面既是对上面几个概念进行基本的日常操作。

数据库引擎使用

这里仅仅只介绍常用的两种引擎,而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";   

原文地址:https://www.cnblogs.com/jing-tian/p/11687588.html

时间: 2024-10-04 07:31:59

非后端开发Mysql日常使用小结的相关文章

web前端开发和后端开发有什么区别?

web前端分为网页设计师.网页美工.web前端开发工程师 首先网页设计师是对网页的架构.色彩以及网站的整体页面代码负责 网页美工只针对UI这块儿的东西,比如网站是否做的漂亮 web前端开发工程师是负责交互设计的,需要和程序猿进行交互设计的配合. web前端需要掌握的有脚本技术javascript DIV+CSS现下最流行的页面搭建技术,ajax和jquery以及简单的后端程序等. 后端的话可供开发的语言有 asp.php.jsp..NET 这些后端开发语言的话搭建环境都不一样,具体如果你想学的话

[转]Java后端,应该日常翻看的中文技术网站 -江南白衣

Java后端,应该日常翻看的中文技术网站 1.内容生产者 InfoQ 中文技术第一站,佩服霍老板,真金白银地为中国程序员们生产内容. ImportNew 专门面向Java的内容生产者兼聚合者,偶然也有些面向入门的小白文. 并发编程网 面向高并发,Java,开源的社区. 2. 内容聚合者 现在写博客,没人用RSS读了,在微博里的传播也就一两天,好在有它们负责挖掘整理散落在各个角落的技术文章. 开发者头条 与 <码农周刊> 人气慢慢上来了,我博客阅读量很大一部分源于它, APP也好用. <编

app后端开发系列文章目录

一点废话 每一个程序员心中,都有一个大牛梦.我们在晨曦之光中敲击着代码,在寒冬覆雪中思考着0与1.夏练三伏 冬练三九这说的就是我们这群[江湖]中人.在这里我们门派林立,C语言派历史悠久,在程序界就是嵩山少林,他们自视甚高,常常鄙视JAVA与C++.而JAVA与C++他们两派之间又常常互相瞧不起.更不说还有Python.C#.PHP.以及新秀GO等等,这些之间的恩怨情仇,非一言而能道清楚. 我只是这个江湖中的一个小人物,或者还称不上人物,也不想去挑战天下名门,华山论剑而一战成名.只想筚路蓝缕.以启

1.APP后端开发系列:登陆系统设计中的注意问题

github博客-首发地址 想写这个系列很久了,因为之前做这个东西花费了大量的精力,有必要分享出来与大家共享.以前也写了一些关于 APP后端开发的系列文章 由于当初功力不够,很多问题描述不清楚或者解决方案过于复杂.不严谨等. 这一次查了很多资料,问了很多相关人士.准备再结合自己实际工作中的问题再次进行一些补充.就先从登陆的设计开始吧! 越想越糊涂 之前再做这一部分的时候,总想着复杂的技术,说出去多屌炸天呀.一般来说登陆的流程是: 当时对于安全性过度痴迷,确走偏了道路.首先提交的时候怕信息被人劫持

html5二八杠棋牌开发后端开发究竟是什么?

html5二八杠棋牌开发(h5.ttkmwl.com)软件应用程序就像冰山一样.用户看到的只是应用程序的一部分--在大多数情况下--应用程序的最大部分是看不到的.这就是令人难以捉摸又神秘的"后端". 在Web开发的篇章中,我们主要讨论Web开发,因为它涉及与最终用户的直接互动--我们可以称之为"前端Web开发". 在大多数应用中,非用户接口代码比用户接口代码多得多.复杂系统是在后台发生的各种使其工作的逻辑. 我们需要存储和检索数据,需要遵循业务逻辑和规则,并且需要对

app后端开发系列文章文件夹

一点废话 每个程序猿心中,都有一个大牛梦.我们在晨曦之光中敲击着代码,在寒冬覆雪中思考着0与1. 夏练三伏 冬练三九这说的就是我们这群[江湖]中人.在这里我们门派林立,C语言派历史悠久,在程序界就是嵩山少林.他们自视甚高.经常歧视JAVA与C++. 而JAVA与C++他们两派之间又经常互相瞧不起.更不说还有Python.C#.PHP.以及新秀GO等等,这些之间的恩怨情仇,非一言而能道清晰. 我仅仅是这个江湖中的一个小人物,或者还称不上人物,也不想去挑战天下名门,华山论剑而一战成名.仅仅想筚路蓝缕

Java后端开发从初学者玩成大牛的学习路线

如果你是在校学生,务必要在学好基础(比如计算机系统.算法.编译原理等等)的前提下,再考虑去进行下面的学习.第一部分:对于尚未做过Java工作的同学,包括一些在校生以及刚准备转行Java的同学. 一.Java基础首先去找一个Java的基础教程学一下,这里可以推荐一个地址,或者你也可以参照这个地址上去找相应的视频.学习Java基础的时候,应该尽量多动手,很多时候,你想当然的事情,等你写出来运行一下,你就会发现不是这么回事儿,不信你就试试.学完以上内容以后,你应该对Java有一个基本的了解了,你可以用

大话后端开发的奇淫技巧大集合

Hi,大家好,很荣幸有这个机会可以通过写博文的方式,把这些年在后端开发过程中总结沉淀下来的经验和设计思路分享出来 模块化设计 根据业务场景,将业务抽离成独立模块,对外通过接口提供服务,减少系统复杂度和耦合度,实现可复用,易维护,易拓展 项目中实践例子: Before: 在返还购APP里有个[我的红包]的功能,用户的红包数据来自多个业务,如:邀请新用户注册领取100元红包,大促活动双倍红包,等各种活动红包,多个活动业务都实现了一套不同规则的红包领取和红包奖励发放的机制,导致红包不可管理,不能复用,

移动web开发问题和优化小结

1.前言 到目前为止,互联网行业里,手机越来越智能化,移动端占有的比例越来越高,尤其实在电商,新闻,广告,游戏领域.用户要求越来越高,网站功能越来越好,效果越来越炫酷,这就要求我们产品质量越来越高,web前端开发而言是一个挑战,是一个难题,也是一个机遇.如何让我们所开发的手机页面能有更好的交互体验,就是这篇文章的主旨:移动web开发问题和优化小结.这个只是我自己在开发的时候知道的坑,如果大家有遇到什么别的坑,欢迎补充,或者觉得我哪里写错了,欢迎指点! 2.Meta标签 页面在手机上显示时,增加这