环境信息

  安装环境 :Ubuntu 14 Desktop(桌面版)

m安装版本 :MySQL 5.7.23

安装步骤

  linux环境下安装过程很简单 三条命令行即可安装完成:

  1. sudo apt-get install mysql-server

  2. apt-get isntall mysql-client

  3.  sudo apt-get install libmysqlclient-dev
 
  安装完成之后输入  sudo netstat -tap | grep mysql  检查安装结果 若处于监听状态则安装成功 如下:
  

  如果在win平台下安装需要配置环境变量否则在控制台下是无法直接使用mysql命令的

  安装成功之后使用命令 mysql -u  -p 登陆     -u后面跟Mysql的用户名-p后面跟密码 当然也可以选择数据库监听端口 例如 mysql -uroot -p3307 ,输入后会提醒用户输入密码

简单操作

  创建数据库用户:

  首先,mysql数据库用户创建都是‘用户名@网络地址’这种格式来创建的 所以创建 同网段用户的时候可以用命令:

  create user ‘abc’@‘123’ identifind by ‘456’

  这种方式来创建 最后跟的是密码,该地址用户可以登陆数据库,若全网段用户均可访问则输入‘用户名@%’即可,但还需要配置一下用户权限问题如下:

  grant  create,delete,select,update,insert   on db1.*  to 'abc@123'

  分配给abc@123 这个用户 db1这个库下的所有表 创建,删除,查询,修改,插入权限,若配置全部权限则输入 all privileges 即可。

  数据库操作主要增删改查,其余命令稍后记录这里记载一些常用以及某些关键字作用与区别:

  1.show databases;不要忘记家S ,显示数据库列表

  2.use XXX; 例如 use mysql;选择数据库,相当于存储过程开始时use 表 一样

  3.show tables;显示当前库列表

  

  4.create database db1 charset utf8;db1数据库,并设置字符编码采用utf8编码

  5. show create database db1;显示创建db1的sql语句

  6.alter database db1 charset gbk;修改数据库编码方式为GBK

  

  7.drop database db1;删除数据库,注意删除之后不可恢复

  

MySQL基础知识

  基本术语:row:行 ,column:列,record:记录,field:字段,database:库,tabe:表,schema:库。

  数据库引擎

    innodb(默认存储引擎)  

      1.支持事务

      2.支持外键

      3.行级锁

    myisam

      1.不支持事务

      2.不支持外键

      3.表级锁

      4.查询较多建议该引擎 ,增删改不建议

    memory

      1.常住内存

      2.数据库重启等操作,数据消失

  数据类型

    数字

    unsigned 无符号类型,没有负数

    zerofill 用0填充结合位数设置使用

      例如 xx int(5) zerofill 则显示成5位,不足5位前面补0,超过5位则只显示5位

    tinyint 1字节 , smallint 2字节, int 4字节,bigint 8字节, float 4字节,double 8字节,decimal 定点数 例如 decimal(m,n) 精确显示数字 m(字节量)+小数位数量

    字符串

    char(n)  定长字符串 n一般不会超过255个字符

    varchar(n) 变长字符串 n 字符上线为65535 ,如果字符长度大于等于255则需要一个额外得字节来保存数据长度,若小于255则需要两个额外字节来保存长度

    text 最大存储65535字符串

    日期

    datetime :年月日时分秒  date :年月日 time: 时分秒 timestamp: 时间戳 时间只到2038年,随着其他字段修改而自动更新,插入数据时候会自动填入时间

表操作  

  首先,修改 db1 下 编码格式为 utf8 稍后用到

    alter database db1 charset utf8;

  其次选择 db1 下创建表 tb1 注意区分

    use db1;

    create table tb1(name varchar(20),gender char(1))engine = innodb , charset = utf8;

    show tables;

    

  查看表结构命令

    desc tb1;

  查看建表语句并纵向显示 

    show create table tb1\G

  

  修改表名

    rename table tb1 to user;

  修改引擎以及编码格式

    alter table user engine=myisam charset=GBK;

    show create table user\G

  

  添加新字段在第一行

    alter table user add id int first;

  添加新字段在指定字段后面

    alter table user add email varchar(100) after name;

  添加多行数据

    alter table user add(age int,height decimal(3,2));

    desc user;

  

  修改字段名称

    alter table user change gender sex char(1);

  修改字段类型

    modify sex varchar(2) NOT NULL DEFAULT 2;

  修改字段顺序

    modify email varchar(100) after id;//也可以用first 排列为第一个字段

  

  删除字段

    alter table user drop height;

  删除表

    drop table user;

    drop table if exists user;//如果有这个表的话就会删除  稳妥方式

  截断表,先删除再重新创建

    truncate table user;

  

JAVA基础--MySQL的更多相关文章

  1. Java基础-MySQL数据库扫盲篇

    Java基础-MySQL数据库扫盲篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.数据库概述 1>.什么是数据库 数据库就是存储数据的仓库,其本质是一个文件系统,数据按 ...

  2. JAVA基础--MySQL(二)

     数据库约束 1.基础限制 ① 单一表内字节量总和不能超过65535,null 占用一个字节空间 ② varchar存储255 以内字节占用一个字节表示长度,255以上自己则占用两个字节表示长度 ③ ...

  3. ava基础MySQL存储过程 Java基础 JDBC连接MySQL数据库

    1.MySQL存储过程   1.1.什么是存储过程 带有逻辑的sql语句:带有流程控制语句(if  while)等等 的sql语句   1.2.存储过程的特点 1)执行效率非常快,存储过程是数据库的服 ...

  4. Java基础知识➣发送Emai和访问MySQL数据库(七)

    概述 Java程序发送 E-mail 十分简单,但是首先你应该在你的机器上安装 JavaMail API 和Java Activation Framework (JAF) .Java访问数据则需要 使 ...

  5. [JavaWeb基础] 003.JAVA访问Mysql数据库

    上面两篇讲解了简单的JSP + Servlet的搭建和请求,那么后面我们肯定要用到数据交互,也就是操纵数据库的数据,包括对数字的增加,删除,修改,查询.我们就用简单的MySql来做例子 我们需要引入驱 ...

  6. [Java面经]干货整理, Java面试题(覆盖Java基础,Java高级,JavaEE,数据库,设计模式等)

    如若转载请注明出处: http://www.cnblogs.com/wang-meng/p/5898837.html   谢谢.上一篇发了一个找工作的面经, 找工作不宜, 希望这一篇的内容能够帮助到大 ...

  7. java 基础题 很基础, 很有趣

    都是一些非常非常基础的题,是我最近参加各大IT公司笔试后靠记忆记下来的,经过整理献给与我一样参加各大IT校园招聘的同学们,纯考Java基础功底, 老手们就不用进来了,免得笑话我们这些未出校门的孩纸们, ...

  8. java基础-java核心知识库

    本人从事java开发6年左右,主要从事互联网相关的开发,目前还是奋战在一线的码农,痛并快乐着.受互联网产品热潮的影响,关注高性能低成本架构,互联网开发框架,以下是我认为作为一个资深java程序员应该掌 ...

  9. Java基础题

    问题: 1.请对比一下重载和重写的区别. 2.请对比一下接口和抽象类的异同. 3.写出一个单例模式,并说明其优点. 4.用过String.StringBuffer吗,说出他们的异同. 5.什么是值传递 ...

随机推荐

  1. Linux学习笔记之文件读取过程

    0x00 概述 对于Linux系统来说,一切的数据都起源于磁盘中存储的文件.Linux文件系统的结构及其在磁盘中是如何存储的?操作系统是怎样找到这些文件进行读取的?这一章主要围绕这几个问题进行介绍(以 ...

  2. C#采集UVC摄像头画面并支持旋转和分辨率切换

    在项目中,我们会需要控制uvc摄像头,采集其实时画面,或者对其进行旋转.目前市面上大多数USB摄像头都支持UVC协议.那么如何采集呢?当然是采用SharpCamera!因为SharpCamera支持对 ...

  3. docker系列之一:初见docker

    什么是docker? docker是目前linux最流行的容器技术,Docker 将应用程序与该程序的依赖,打包在一个文件里面.运行这个文件,就会生成一个虚拟容器.程序在这个虚拟容器里运行,就好像在真 ...

  4. vue动画理解,进入、离开、列表过度和路由切换。

    vue的动画对于很多初学者,甚至对很多老鸟来说也是很费劲,不容易控制的. 这篇文章讲vue动画的理解.其实没那么难. 动画理解 一个元素从A状态变成B状态,如果这个过程通过某种方式反应在视图上了,那么 ...

  5. 英语caement单词caement水泥

    水泥石  又称净浆硬化体.是指 硬化后的水泥浆体,称为水泥石,在英语里是cement有时写作caement [1] ,是由胶凝体.未水化的水泥颗粒内核.毛细孔等组 成的非均质体. 中文名:水泥石 外 ...

  6. flask建表遇到的错误: flask,sqlalchemy.exc.OperationalError: (MySQLdb._exceptions.OperationalError) (1071, 'Specified key was too long; max key length is 767 bytes')

    error:flask,sqlalchemy.exc.OperationalError: (MySQLdb._exceptions.OperationalError) (1071, 'Specifie ...

  7. 阿里P7教你如何使用 Spring 配置动态数据源实现读写分离

    最近搭建的一个项目需要实现数据源的读写分离,在这里将代码进行分享,以供参考. 关键词:DataSource .AbstractRoutingDataSource.AOP 首先是配置数据源 <!- ...

  8. day 38

    目录 元类 什么是元类 元类的作用 怎么自定义创建元类 元类 什么是元类 用class关键字定义的类本身是一个对象,负责产生该对象的类称之为元类(元类可以简称为类的类),内置的元类为type 元类的作 ...

  9. 基于Chrominum的发行版本Microsoft Edge-Beta

    问题描述: Microsoft Edge -->Chromium Edge(未来Window的主力浏览器) 问题解决: 下载地址: https://www.microsoftedgeinside ...

  10. Elasticsearch 概念理解

    官方文档地址 Filebeat: https://www.elastic.co/cn/products/beats/filebeat https://www.elastic.co/guide/en/b ...