1. 1.MySQL 是什么?
  2. 1)软件(Software):工具(解决问题)
  3. 2)数据库管理系统(DBMS)
  4. 3)关系型(Relation)数据库管理系统(RDBMS):类似Oracle
  5. 扩展:db-engines(db引擎网站)-----了解一些非关系型数据库(key-value,Document等等)
  6. 网站:www.mysql.com
  7. www.oracle.com
  8. db-engines.com/en/ranking
  9.  
  10. 2.MySQL 应用特点
  11. 1)简单
  12. 2)高效
  13. 3)可靠
  14. 4)...
  15.  
  16. 3.MySQL 应用场景
  17. 1)WEB站点系统(如:www.mysql.com...)
  18. 2)日志处理系统(输入+存储+处理+输出) MySQL支持一种引擎---MyISM(不支持事务)
  19. 3)数据仓储系统(主从复制架构)
  20. 4)嵌入式系统(MySQL的伸缩性非常强)
  21.  
  22. 4.MySQL 基本网络框架
  23. 1)Client
  24. 2)Server
  25. 3)TCP/IP
  26.  
  27. 5.MySQL 的登录与退出
  28. 1)登录(控制台)
  29. mysql -u root -p
  30. 其中root用户为本机最高权限(u root之间可以不需要空格)
  31. 2)退出 quit 或者 exit
  32. \c 结束当前命令
  33.  
  34. 6.MySQL 基本指令的应用
  35. 登录以后可以:
  36. 1)查看登录用户:select user();
  37. (了解)访问:mysql -u tedu -h 192.168.100.101 -p
  38. 2)显示当前系统mysql端口号:show variables like 'port';
  39. variables veərɪəbl/
  40.  
  41. 3)查看mysql的状态信息:status
  42. 4)显示当前系统的存储引擎:show variables like '%storage_engine%';
  43. 显示所有表的编码格式:show variables like '%character%';
  44. character_set_server设置指定的字符编码:set character_set_server=utf8;
  45. 5)显示mysql中支持的存储引擎:show engines;
  46. 6)查看系统函数相关的帮助:help functions; 或者使用 ? functions;
  47. 7)查看当前系统的时间日期:select now();
  48. 8)连接字符:select concat('My','S','QL');
  49. 9)忘记指命或这某个单词的拼写,可以使用帮助,如(显示存储引擎): ? show; 指令之后查看帮助即可
  50.  
  51. 面试题:
  52. 1)MySQL中的存储引擎是什么?
  53. 存储引擎:是mysql中负责存储及管理数据的一个服务.
  54. 2)MySQL中的存储引擎有哪些类型,有什么不同?
  55. 我了解的有InnoDB,MyISAM.
  56. InnoDB:支持事务,一般要保证数据安全(例如完整性,一致性)
  57. MyISAM:不支持事务,一般用于做日志存储(一般要求的是效率)
  58. 3)MySQL默认端口号?
  59. 3306,Oracle的是1521
  60.  
  61. 7.MySQL SQL基本应用(DML,DDL,DCL) ------ DML:操作; DDL:定义; DCL:控制
  62. (1)MySQL数据库相关操作?(创建/查看/使用/删除数据库)
  63. 1)查看当前用户下所有的库:show databases;
  64. 2)查看当前正在使用的数据库select database();
  65. 3)打开/使用test数据库:use test;
  66. 4)创建tedu数据库:create database tedu;
  67. 或者create database if not exists tedu;不存在就创建tedu数据库
  68. 或者create database if not exists tedu character set 'utf8'; 指定字符集
  69.  
  70. 5)查看创建数据库的语法: ? create database;
  71. 6)查看tedu数据库的格式:show create database tedu;
  72. 7)删除tedu数据库:drop database tedu;
  73. 或者drop database if exixts tedu;存在就删除tedu数据库
  74.  
  75. (2)数据中表的操作?
  76. 1)查看当前数据库中有哪些表(前提是要先打开数据库):show tables;
  77. 2)建pet表:
  78. create table pet (
  79. id int primary key auto_increment,name varchar(100) not null, //primary key:主键 auto_increment:自增长(默认从1开始)----(oracle中用序列sequence)
  80. createdTime datetime not null
  81. )engine=InnoDB;
  82. 3)显示pet表结构:desc pet;
  83. 4)显示pet表的创建语句:show create table pet;
  84. 5)删除表(语法参考 ? drop table)
  85. 删除pet表: drop table pet;
  86. 或者 drop table if exits pet;表存在就删除
  87.  
  88. (3)表中数据的操作:
  89. 1)插入数据:
  90. insert into pet(id,name,createdTime) values (null,'A',now());
  91. insert into pet values(null,'B',now());
  92. insert into pet(name,createdTime)values('C',now());
  93. insert into pet values(null,'D',now()),(null,'E',now());
  94.  
  95. 2)修改表中数据(update):
  96. update pet set name='AA' where id=1;
  97.  
  98. 3)删除表中数据(delete):-------(delete是删除表中数据,drop是删除整个表)
  99. delete from pet where id=6;
  100.  
  101. 4)查询表中数据(重点掌握mysql中分页查询)
  102. select * from pet; 查询pet表中所有数据
  103. select username,password from sys_users; 查看sys_users表中指定字段(如:username,password)
  104. select * from pet limit 2; 查询pet表中前两行数据
  105. select * from pet limit 2,4; 查询从第2条数据之后开始,依次显示4条数据(得到结果为:第3,4,5,6行的记录)
  106. select * from pet limit 2 offset 4; 从第5条数据开始显示开始,依次显示2条数据出来(得到结果为:5,6)
  107. 注:limit n,m 表示从第n条数据之后开始查找,依次查出m条数据
  108. limit n ofset m 表示从m条数据开始显示,依次显示n条数据出来.
  109.  
  110. a)现有10条记录,每页最多显示3条,总共有多少页?(Java代码)
  111. int rowCount = 10;(从数据库中获取)
  112. int pageSize = 3;(业务中定义)
  113. int pageCount = rowCount/pageSize;
  114. if(rowCount%pageSize != 0){
  115. pageCount++;
  116. }
  117.  
  118. b)获取第3页的数据?(通过SQL语句实现)
  119. select * from pet limit 6,3; //6是通过(3-1)*3得出的结果(要显示的页数-1)*每页几条数据
  120.  
  121. c)对查询结果按照id倒序排序?
  122. select * from pet order by id desc limit 6,3;
  123. mysql中例如有limit子句,那么此语句肯定是最后.
  124.  
  125. 8.MySQL source指令应用
  126. 1)登录mysql
  127. 2)执行文件:source d:/ttmswork/day01/test.sql ------window系统
  128. source //home/soft01/test.sql ----------linux系统
  129. 说明:使用source指令的时候,可能会出现乱码,解决方案:
  130. a)假如文件是utf8编码:
  131. step01:设置客户端的编码为utf8: 执行语句:set names utf8;
  132. step02:执行source指令,重新导入
  133. 当客户端查询显示还是乱码时,可以先执行set names gbk;
  134. 然后再执行查询操作.
  135.  
  136. Tmocat中端口占用解决方案:
  137. Tmocat文件夹目录下面的lib文件中启动终端,输入指令:
  138. ./shutdown.sh
  139. 若提示权限不够,输入指令:
  140. chmod + *.sh;即可

MySQL数据库操作基础的更多相关文章

  1. (转)总结之:CentOS 6.5 MySQL数据库的基础以及深入详解

    总结之:CentOS 6.5 MySQL数据库的基础以及深入详解 原文:http://tanxw.blog.51cto.com/4309543/1395539 前言 早期MySQL AB公司在2009 ...

  2. Python进阶----数据库的基础,关系型数据库与非关系型数据库(No SQL:not only sql),mysql数据库语言基础(增删改查,权限设定)

    day37 一丶Python进阶----数据库的基础,mysql数据库语言基础(增删改查,权限设定) 什么是数据库:    简称:DataBase ---->DB    数据库即存放数据的仓库, ...

  3. php : mysql数据库操作类演示

    设计目标: 1,该类一实例化,就可以自动连接上mysql数据库: 2,该类可以单独去设定要使用的连接编码(set names XXX) 3,该类可以单独去设定要使用的数据库(use XXX): 4,可 ...

  4. php MySQL数据库操作类源代码

    php MySQL数据库操作类源代码: <?php class MySQL{ private $host; //服务器地址 private $name; //登录账号 private $pwd; ...

  5. 设计模式 - 单例模式mysql数据库操作类

    待续... index.php 调用方法: <?php header('Content-Type:text/html; charset=utf8'); require 'instance.php ...

  6. MySQL数据库操作常用命令

    MySQL数据库操作常用命令DOS连接数据库1.安装MySQL配置好环境2.运行cmd命令net start mysql3.找到mysql文件根目录输入命令mysql -h localhost -u ...

  7. Python/MySQL(四、MySQL数据库操作)

    Python/MySQL(四.MySQL数据库操作) 一.数据库条件语句: case when id>9 then ture else false 二.三元运算: if(isnull(xx)0, ...

  8. Java通过JDBC 进行MySQL数据库操作

    转自: http://blog.csdn.net/tobetheender/article/details/52772157 Java通过JDBC 进行MySQL数据库操作 原创 2016年10月10 ...

  9. Mysql 数据库操作之DDL、DML、DQL语句操作

    Mysql 数据库操作之DDL.DML.DQL语句操作 设置数据库用户名密码 l  Show databases 查看数据库列表信息 l  查看数据库中的数据表信息 ,格式: use 数据库名: sh ...

随机推荐

  1. axios请求报Uncaught (in promise) Error: Request failed with status code 404

    使用axios处理请求时,出现的问题解决 当url是远程接口链接时,会报404的错误: Uncaught (in promise) Error: Request failed with status ...

  2. vscode插件推荐

    在扩展(Ctrl+Shift+X)中直接搜索这些插件的名字安装即可 1.HTML Snippets 超级使用且初级的H5代码片段以及提示 2.HTML CSS Support 让HTML标签上写cla ...

  3. 【MSDN】 SqlServer DBCC解析

    汇总学习下SqlServer的DBCC指令. DBCC:Transact-SQL 编程语言提供 DBCC 语句以作为 SQL Server 的数据库控制台命令. 数据库控制台命令语句可分为以下类别. ...

  4. js原生拖拽

    style样式 <style type="text/css"> #box{ width: 100px; height: 100px; background: deepp ...

  5. 闭包中的this

    var name="pushline";//全局变量 var obj=new Object(); obj.name="jms"; obj.getName=fun ...

  6. C语言字符数组与字符串

    研究几个案例: 输出图案: #include <stdio.h> void main() { ][] = { {', ' ', ' '}, {', ' '}, {'}, {', ' '}, ...

  7. ubuntu GITLAB完全导入SVN(提交历史,用户)项目

    从SVN导入到GITLAB目前没有直接的方案,通常需要通过GIT转换:SVN –>GIT –>GITLAB.通过这种方式,将SVN的提交历史,用户信息一并导入到gitlab 注:本文只适用 ...

  8. Ckrule业务规则管理系统简介

    1.   简述 Ckrule业务规则管理系统(BRMS)是一个集成的应用程序存储.管理.执行和测试的平台,允许组织定义.部署.监控和维护运营系统使用的各种复杂决策逻辑.Ckrule BRMS 独立于核 ...

  9. Zygote和System进程的启动过程

    ##init脚本的启动 +------------+ +-------+ +-----------+ |Linux Kernel+--> |init.rc+-> |app_process| ...

  10. SpringBoot热部署插件

    1.配置在 maven工程中的pom.xml文件中 2.SpringBoot框架中提供的一个热部署插件,利用该热部署插件,我们可以在修改代码后不用重启应用,大大提高开发效率: