首先弄什么是数据库?

  数据库就是用来存储和管理数据的仓库。

数据库存储数据的优点:

  1.可存储大量的数据  2.方便检索  3.保持数据的一致性,完整性  4.安全 可共享  5.通过组合分析,可以产生新的数据。

数据库的发展历程:

  1.没有数据库,使用磁盘文件来存储数据

  2.层次结构模型数据库

  3.网状结构模型数据库

  4.关系结构模型数据库  (使用二维表格存储数据)

  5.关系-对象模型数据库

注:关系模型由关系数据结构,关系操作集合,关系完整体约束三部分组成

  MySql是一个关系结构模型数据库。

常见的数据库:

  甲骨文:oracle与MySql      IBM:  DB2  微软:SQLServer  赛尔斯:Sybase

关系型数据库管理系统是由多个数据库+管理员=N个table

一个数据库可以有多个table

表格的创建:

  数据库表是一个多行多列的表格 ,创建时需指定表的列数,列名称,列类型。不用指定表的行数,因为行数是没有上限的。

在计算机的CMD中操作数据库:

  启动MySql服务器:net start mysql  关闭MySql服务器:net stop mysql

  登录MySql:mysql -uroot -p123 -hlocalhost  (-u后面是用户名,-r后面是密码,-h后面是服务器主机名,可以省略)

  退出MySql:quit或exit

SQL是什么?

  SQL是“结构化的查询语言,它是对关系型数据库的操作语言,可以应用到所有关系型数据库中”。

  虽SQL可用在所有关系型数据库中,但很多数据库都有属于自己的特有的语法。列如:MySql中的limit语句就是MySql独有的。

语法要求:

  SQL语句可单行或者多行书写,以分号结尾,可用空格或缩进增强语句的可读性,关键字不区分大小写,默认显示为大写,建议大写。

DDL:数据定义语言,用来定义数据库对象 ,库,表,列等

DML:数据操作语言,用来定义数据库的记录

DCL:数据控制语言,用来定义访问权限和安全级别

DQL:数据查询语言,用来查询数据记录

DDL:数据定义语言,用来定义数据库对象,库,表,列等

  基本操作:

    1.查看所有数据库名:show databases

    2.切换数据库: use  数据库名

  操作数据库

    1.创建数据库:create database 数据库名

    2.删除数据库:drop database 数据库名

    3.修改数据库编码:alter database 数据库名 character set utf8(注:修改数据库编码为utf-8,MySql中不能写-,因此省略)

  数据类型:MySql与java一样,也有数据类型,主要应用于列上

    int:整型  double:浮点型  注:例如double(5,2)表示最多5位,必须有2位数,即最大数为999.99

    decimal:精确小数类型,跟钱有关时使用  char:固定长度字符串类型  varchar:可变长度字符串类型

    text:字符串类型  blob:字节类型  date:日期类型 格式为:yyyy-MM-dd  time:时间类型 格式为:hh:mm:ss

  操作表:

    1.创建表

      create table 表名(

        列名  列类型  (可以还有一些属性),

      );

      例如:

      create table user(

        id  int,

        name  varchar(20),

        salary  double

      );

    2.查看当前数据库所有表的名称:show  tables;

    3.查看当前数据库指定表的创建时语句:show create table 表名;

    4.查看表的结构(列名列类型特有属性等):desc  表名;

    5.删除表:drop  table  表名

    6.修改表

      a.为表添加列:alter table stu add(name varchar(20));

      b.为表修改列类型:alter table stu modify gender char(2);

      c.为表修改列名:alter table stu change gender sex char(2);

      d.为表删除列:alter table stu drop name;

      e.修改表名:alter table stu rename to student;

DML:数据操作语言,用来定义数据库中的记录

  插入数据:insert into 表名(列名1,列名2) values(值1,值2);

  例如:insert into stu(id,name) values(001,'zs');

  修改数据:update 表名 set 列名1='值1',列名2='值2 where 条件;

  例如:update stu set name='zs' where id=01;

  删除数据:delete from 表名 where 条件;  例如:delete from stu where sex='m';

       truncate table 表名;  例如:truncate table stu;

  注:delete根据条件可以删除表里部分数据,而truncate则是删除表里全部数据

  两者都可以删除表里的所有记录,但原理不同:delete 没有truncate效率高

  其实truncate属于DDL语句,因为它是先drop table再create table 而且truncate删除的数据记录无法回滚(即无法恢复找回)

  但delete删除的数据记录可以回滚。

    

  

        

      

  

粗结MySql数据库基础知识点之一的更多相关文章

  1. MySQL数据库基础

    MySQL数据库基础 本文的所有操作是基于CMD环境,MySQL通过在命令行中输入SQL语句对数据库进行操作.配置问题可参考<打通MySQL的操作权限>中的内容,该文算是针对前期的环境配置 ...

  2. MySQL数据库基础知识及优化

    MySQL数据库基础知识及优化必会的知识点,你掌握了多少? 推荐阅读: 这些必会的计算机网络知识点你都掌握了吗 关于数据库事务和锁的必会知识点,你掌握了多少? 关于数据库索引,必须掌握的知识点 目录 ...

  3. mysql数据库基础的简单操作指南

    最近在学习mysql,本文是做的关于mysql学习的笔记,跟大家分享一下,希望对大家学习mysql知识有所助益.mysql现在几乎已经成了网站建设的主流数据库,很多php网站系统都采用了mysql数据 ...

  4. Mysql数据库基础学习笔记

    Mysql数据库基础学习笔记 1.mysql查看当前登录的账户名以及数据库 一.单表查询 1.创建数据库yuzly,创建表fruits 创建表 ) ) ,) NOT NULL,PRIMARY KEY( ...

  5. Mysql数据库基础操作

    Mysql数据库基础操作 在mysql数据库中开启使用tab键补全功能 1)修改主配置文件/etc/mysql/my.cnf(mysql和mariadb目录有些不同) vim /etc/mysql/m ...

  6. mysql数据库基础-2019-9-10(随堂笔记)

    mysql数据库基础 在cmd情况下启动mysql数据库:(配置path环境变量后可忽略) 运行mysql1. 进入mysql路径2. 执行:mysql -uroot -p,安装时的密码 1.数据库& ...

  7. php面试专题---15、MySQL数据库基础考察点

    php面试专题---15.MySQL数据库基础考察点 一.总结 一句话总结: 注意:只写精品 1.mysql定义int(3),那么我存1234就错了么? 不是:无影响:只会影响显示字符的个数:可以为整 ...

  8. PHP面试 MySQL数据库基础

    MySQL数据库基础 MySQL数据类型 整数类型:TINYINT   SMALLINT   MEDIUMINT   INT   BIGINT 属性:UNSIGNED 长度:可以为整数类型指定宽度,列 ...

  9. MySQL数据库--基础简述

    MySQL数据库--基础简述 1.15.1 MySQL简介 Mysql是最流行的RDBMS(Relational Database Management System:关系数据库管理系统),特别是在W ...

随机推荐

  1. [ SHOI 2001 ] 化工厂装箱员

    \(\\\) \(Description\) 传送带上按顺序传过来\(N\)个物品,一个有\(A,B,C\)三类. 每次装箱员手里只能至多拿十个,然后将手中三类物品中的一类装箱,才能接着拿或接着装箱, ...

  2. 右边根据左边的高度自动居中只需要两行CSS就可以完成

    右边根据左边的高度自动居中只需要两行CSS就可以完成 <style type="text/css" > div{ display: inline-block; vert ...

  3. (转)容易遗忘的JS知识点整理

    1.hasOwnProperty相关 为了判断一个对象是否包含自定义属性而不是原型链上的属性,我们需要使用继承自 Object.prototype 的 hasOwnProperty方法.hasOwnP ...

  4. Leetcode0143--Reorder List 链表重排

    [转载请注明]https://www.cnblogs.com/igoslly/p/9351564.html 具体的图示可查看 链接 代码一 /** * Definition for singly-li ...

  5. Android集成二维码扫描功能

    文章转载自  https://github.com/yipianfengye/android-zxingLibrary 在具体介绍该扫描库之前我们先看一下其具体的使用方式,看看是不是几行代码就可以集成 ...

  6. JS——滚动条

    1.核心思想与之前的拖拽盒子是一样的 2.完全将鼠标在盒子中的坐标给滚动条是错的,因为这样会使滚动条顶部立刻瞬间移动到鼠标位置 3.必须在鼠标按下事件时记住鼠标在滚动条内部的坐标,再将鼠标在盒子中的坐 ...

  7. Js配置资料下载

    1.使用windows.loaction.href链接下载: 此种下载在本页打开,eg:windows.location.href = http://www.xxx.xx/aa.apk; 2.使用wi ...

  8. Linux 之CentOS7使用firewalld打开关闭防火墙与端口

    一.firewalld的基本使用 启动: systemctl start firewalld 关闭: systemctl stop firewalld 查看状态: systemctl status f ...

  9. 最适合初学者的Linux运维学习教程2018版

    Linux运维工程师是一个新颖岗位,现在非常吃香,目前从行业的角度分析,随着国内软件行业不断发展壮大,越来越多复杂系统应运而生,为了保证系统稳定运行,必须要有足够多的Linux运维工程师.维护是软件生 ...

  10. ES6学习历程(字符串的扩展)

    字符串的扩展 在看这一节的时候前半部分写的都是关于unicode的内容,我个人感觉这部分在实际的开发中用的很少,所以不打算在做记录,等届时用到再有针对性的看,所以就将在ES6里面关于字符串操作的一些新 ...