MySQL

  MySQL是一种关系数据库管理系统,是一种开源软件。可搭配PHP和Apache可以有更好的性能,也可以工作在众多的平台上。Orcale是一个数据库创建多个用户,MySQL是一个用户创建多个数据库。

  安装注意事项:

  端口:3306;默认用户:root;字符集:设置为gbk或者utf-8;

  安装时可以启用远程登陆,创建匿名用户;

  可以安装图形化界面,方便操作

MySQL列的类型:

 数值类型:

  smallint():占2个字节

  int():占4个字节,integer是int的同义词,也是占4个字节

  bigint():占8个字节

  float(x,y):占4个字节  其中x表示修饰数值一共x位,y表示小数点后一共y位

  double(x,y):8个字节  x,y和float用法一样

字符串类型:

  char():固定字符串的长度, sex char(2),不同于orcale中sex char(3),MySQL中子一个子占2个字节

  varchar():可变长度的字符串长度,不同于orcale中varchar2()表示可变长度的字符串

  varchar():使用起来比较灵活,char是处理速度比较快。

日期/时间类型:

  date:'YYYY-MM-DD',或者'YYYY/MM/DD',不同于orcale中日期的格式是'1-12月-2018'

  datetime:'YYYY-MM-DD HH:MM:SS'详细日期,包括时分秒

  timestamp:'YYYY-MM-DD HH:MM:SS' 时间戳

  datetime和timestamp的比较(了解即可,一般用datetime):

  相同点:datetime和timestamp列的显示格式相同,显示的格式都是固定在19个字符,格式为:YYYY-MM-DD HH:MM:SS

  不同点:范围不同。datetime格式显示和检索DATETIME值,支持的范围是'1000-01-01 00:00:00'到'9999-12-31      23:59:59'TIMESTAMP值不能早于1970或晚于2037

  储存不同。datetime:8个字节储存,实际格式是date格式,与时区无关;timestamp:4个字节储存,以UTC格式储存,并且有时区的转换,储存时对当前时区进行转换,检索时再转回当前时区。

  主键自增:auto_increment,不同于orcale使用sequence。

MySQL语法:

 1.数据定义语言(create,drop,alter等语句)

  create database school; //创建一个数据库 

  use school;    //指定默认的数据库进行操作,进行数据操作前提必须指定默认的数据库

  create table student();  //在默认数据库下创建一个学生信息表

  show columns from student;  //显示一个给定表中各列的信息,显示自定表的结构

  show tables;   //展示默认数据库下所有的表

  show databases;  //展示所有的数据库

  show create database  //显示用于给定数据库create database语句,也可以使用 show create schema;

  show create table student;   //显示建表sql语句,显示指定表结构

  drop table student;    //删除student表

  drop database school   //删除school数据库

 2.数据查询语言(select语句)

  select * from student;  //查询student表中的信息  

  select * from student where sno > 5 and sex = '男'

  select count(*) from student;  //查询表中数据总行数

  desc student;    //查看表的结构

 3.数据操作语言(insert,delete,update等语句)  针对的是表中的数据

  insert into student values();  //跟Orcale相似,都是在表中加数据

  insert into student (sno,sname,sex)values (1,'张三','男')

  delete from student where sno = 1;  //删除student表中编号是1的行数据

  update student set sname = 'lisi' where sno = 3;  //将student表中编号是3的行数据中的sname 覆盖为'lisi'

 4.数据控制语言(grant,revoke,commit,rollback等语句)  针对的是数据库或者表

 5.更改表结构语句:

  alter table student add email varchar() unique;  //给student表添加一列email,条件是:唯一不重复

  alter table student add (email varchar(30) unique)  //也是给student表增加一列信息

  alter table student rename to student2;  //修改表名,student变为student2

  alter table student modify email varchar(20)  not null;  //修改列的属性

  alter table student drop email;  //删除列

 6.多表查询和外键关联:

  多表查询都是建立在多个表之间外键关联的基础上。没有外键关联不存在多表查询

  //创建主人和宠物的表,通过mid和masterid外键关联

  alter table pet add constraint fk_masterid foreign key(masterid(外键)) references master(mid)(关联键)

  不同于Orcale中添加时使用constraints,其他的一样

  alter table pet drop foreign key fk_masterid;  //删除外键关联

  不同于Orcale中删除使用alter table pet drop fk_masterid;   

mysql> select * from master m join pet p on(m.mid = p.masterid);
+-----+----------+-----+-----+-----------+----------+
| mid | sname | age | pid | pname      | masterid |
+--+---------------+-----+------+--------------+-------------+
| 1 | zhangsan | 18  | 1     | luckey      |       1       |
| 1 | zhangsan | 18  | 2     | xiaoxiong |       1       |
| 1 | zhangsan | 18  | 4     |   luckey    |       1       |
| 2 |     lisi         | 18  | 3     |    uzi         |       2       |
| 2 |     lisi        |  18  | 5     | xiaoxiong |       2       |
| 3 | wangwu    | 18  | 6     |    uzi         |        3      |
| 4 | wangwu2 | 18   | 7     | luckey      |      4        |
| 4 | wangwu2 | 18   | 8     | xiaoxiong |      4        |
| 4 | wangwu2 | 18   | 9     |    uzi         |      4        |
+--+--------------+-------+-----+--------------+-------------+

7.分页语句:

  select * from table student limit (start-1)*limit ,limit;  //其中start是页码,limit是每页显示的条数

  在MySQL中以help_category为例

  select * from help_category limit 11,5;  //表示从第12行开始的,5个数据 

mysql> select * from help_category limit 11,5;
+------------------+-----------------------------------------------+--------------------+-----+
| help_category_id | name | parent_category_id | url |
+------------------+-----------------------------------------------+--------------------+-----+
| 12 | Encryption Functions | 39 | |
| 13 | LineString properties | 35 | |
| 14 | Miscellaneous Functions | 39 | |
| 15 | Logical operators | 39 | |
| 16 | Functions and Modifiers for Use with GROUP BY | 36 | |
+------------------+-----------------------------------------------+--------------------+-----+

8.导入和导出

  方法1(图形界面操作):直接对表进行操作,选中数据库---->右击选择 转储SQL文件----->选择地址保存sql文件;导入时选中要导入的数据库---->右击选择 运行SQL文件---->导入相应的sql文件。

  方法2(命令行操作):在DOS命令下操作

  导出:mysqldump -uroot -proot 数据库名 > 目录下的sql文件(d:\school.sql)    //到处整个数据库

  mysqldump -uroot -proot 数据库名 表名 >目录下的sql文件  //只到处一个表

  导入:mysql -root -proot 数据库名 < 目录下的sql文件  //一般使用这种

  mysql >source 目录下的sql文件

      

      

  

       

      

    

  

  

JavaSE基础篇—MySQL基础知识点的更多相关文章

  1. iOS开发基础篇-Button基础

    一.简单介绍  UIButton 的功能:响应用户操作.显示文字.显示图片.调整内部图片和文字的位置. 二. UIButton 的状态  UIControlStateNormal :普通状态,为默认情 ...

  2. JavaSE基础篇—MySQL三大范式—数据库设计规范

    1.概   念     范式是一种符合设计要求的总结,要想设计一个结构合理的关系型数据库,必须满足一定的范式.各个范式是以此嵌套包含的,范式越高,设计等级越高,在现实设计中也越难实现,一般数据库只要打 ...

  3. 重新整理 mysql 基础篇————— mysql 事务[三]

    前言 简单整理一下事务. 正文 事务有四大特性: 1.原子性(atomicity) 一个事务必须被视为一个不可分割的最小单元. 2.一致性(consistency) 数据库总是从一个一致性的状态转换到 ...

  4. mysql基础篇-----mysql简介

    2017-04-19 一.mysql简介 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品.MySQL 是最流行的关系型数据库管理系统之一,在 ...

  5. [MySQL实战-Mysql基础篇]-mysql架构

    1.基本组成 下面是mysql的基本架构示意图  图一 图二 我们可以从图上看出,mysql大体分为两个部分,一个是server层,另一个是引擎层. server层中包含了连接器.查询缓存.分析器.优 ...

  6. [MySQL实战-Mysql基础篇]-mysql的日志

    参考文章: https://www.cnblogs.com/f-ck-need-u/archive/2018/05/08/9010872.html https://dev.mysql.com/doc/ ...

  7. 大数据基础篇----jvm的知识点归纳-5个区和垃圾回收机制

    一直对jvm看了又忘,忘了又看的.今天做一个笔记整理存放在这里. 我们先看一下JVM的内存模型图: 上面有5个区,这5个区干嘛用的呢? 我们想象一个场景: 我们有一个class文件,里面有很多的类的定 ...

  8. python3 速查参考- python基础 9 -> MySQL基础概念、数据库create、alter、insert、update、delete、select等基础命令

    前置步骤: 下载一个绿色版的mysql数据库客户端连接工具 :http://wosn.net/821.html mysql平台为win7(以后会有CentOS上的) 学习目的: 掌握数据库的基本概念, ...

  9. Python学习之路基础篇--08Python基础+ 文件的基本操作和 注册小作业

    1 文件的基本操作 #1. 打开文件的模式有(默认为文本模式): r ,只读模式[默认模式,文件必须存在,不存在则抛出异常] w,只写模式[不可读:不存在则创建:存在则清空内容] a, 只追加写模式[ ...

随机推荐

  1. Spring Boot快速入门(四):使用jpa进行数据库操作

    原文地址:https://lierabbit.cn/articles/5 添加依赖 新建项目选择web,JPA,MySQL三个依赖 对于已存在的项目可以在bulid.gradle加入,spring b ...

  2. HashTable源码阅读

    环境jdk1.8.0_121 与HashMap有几点区别 在HashMap中,冲突的值会在bucket形成链表,当达到8个,会形成红黑树,而在HashTable中,冲突的值就以链表的形式存储 publ ...

  3. 高通secury boot过程

    整理内容网盘地址: 链接:https://share.weiyun.com/79c3920b4f2097d93b719b3149a7f3f9 (密码:4jm9cx) 相关内容网站: http://bl ...

  4. Mac效率:配置Alfred web search

    // 这是一篇导入进来的旧博客,可能有时效性问题. 想用搜索引擎搜东西,或者查字典时,一般的workflow是:打开浏览器-->打开搜索引擎/字典网站-->输入搜索关键字-->回车. ...

  5. cs231n spring 2017 lecture5 Convolutional Neural Networks听课笔记

    1. 之前课程里,一个32*32*3的图像被展成3072*1的向量,左乘大小为10*3072的权重矩阵W,可以得到一个10*1的得分,分别对应10类标签. 在Convolution Layer里,图像 ...

  6. Codeforces Beta Round #2 A,B,C

    A. Winner time limit per test:1 second memory limit per test:64 megabytes input:standard input outpu ...

  7. 51Nod 1289 大鱼吃小鱼(模拟,经典好题)

    1289 大鱼吃小鱼             题目来源:             Codility                     基准时间限制:1 秒 空间限制:131072 KB 分值: ...

  8. zoj 3228:Searching the String

    Description Little jay really hates to deal with string. But moondy likes it very much, and she's so ...

  9. Vijos P1784 数字统计【模拟】

    数字统计 背景 来自 NOIP2010 普及组 第一题 描述 请统计某个给定范围[L, R]的所有整数中,数字2出现的次数. 比如在给定范围[2, 22],数字2在数2中出现了1次,在数12中出现了1 ...

  10. c++(爬楼梯)

    前两天上网的时候看到一个特别有意思的题目,在这里和朋友们分享一下: 有一个人准备开始爬楼梯,假设楼梯有n个,这个人只允许一次爬一个楼梯或者一次爬两个楼梯,请问有多少种爬法? 在揭晓答案之前,朋友们可以 ...