本人初入博客园,第一次写博客,在今后的时间里会一点点的提高自己博客的水平,以及博客的排版等。

  在今天,我学习了一下MySQL数据库的基本知识,相信关于MySQL的资料网上会有很多,所以我就不在这里复制粘贴了,在这里留下一些本人在初学MySQL时的一些笔记,以供有需要的同学来参考。以下内容绝无复制,仅仅是博主自己的一些总结。

  字段类型

  • 数字:int,decimal(小数)

  eg:decimal(5,2):一共包含5位数,小数部分有2位

  • 字符:char(存的字符是固定的),varchar(存的字符是可变的),text(大文本)

  eg:char(8)8个字符,不足补空格,varchar(8)自动截取

  • 日期:datatime
  • 布尔:bit

  eg:bit(8)表示存了8个二进制位,不写则默认一个

   约束

  • 主键:primary key
  • 非空:not null
  • 唯一:unique
  • 默认:default
  • 外键:foreign key

  终端(以分号结尾)

  • 终端连接服务器 mysql -uroot -p
  • 推出mysql:exit,quit,ctrl+c
  • 查看版本:select version();
  • 显示当前时间:select now();
  • 链接远程服务器:mysql -hip地址 -uroot -p

   (若修改端口,在后面写出,若没改,是原来的3306则不用管)

-h 后面写要连接的主机地址
-u 后面写要连接的主机名
-p 回车后写密码

  数据库操作

  • 创建数据库:create database 数据库名 charset=utf8;
  • 删除数据库:drop database 数据库名;
  • 切换数据库:use 数据库名;
  • 查看当前选择的数据库:select database();
  • 显示现有数据库:show databases;
  • 查看数据库中有哪些表:show tables;

  数据库中表操作

  • 创建表:creat table 表名(列及类型)auto_increment表示自动增长

  eg:creat table students(
    id int auto_increment primary key,
    name varchar(10) not null
    );

  上面截图中default将小括号去掉,空格代替

  • 查看表结构:desc 表名;(describe)
  • 修改表:alter table 表名 add|change|drop 列名 类型;

   eg:alter table students add birthday datatime;
   *注:修改列的时候列的名字不能修改,只能修改类型

  • 删除表:drop table 表名
  • 更改表名称:rename table 原表名 to 新表名
  • 查看表的常见语句:show create table ‘表名’;

  数据操作

  • 查询:select * from 表名;
  • 添加数据:

  全列添加:insert into 表名 values(…)
    eg:insert into students values(0,'曹操',1,'1999-2-3',0);*注:其中的0,并不一定生产0,而是内部自动会生成,此处写的0是为了占位。
  缺省插入:insert into 表名(列1,…)values(值1,…)
  同时插入多条数据:insert into 表名 values(…)(…)…;
  或:insert into 表名(列1,…) values(…)(…)…;

  • 修改:update 表名 set 列1=值1,…where 条件

  *注:where可以是id序列,不写则会导致所有行被修改

  • 删除:delete from 表名 where 条件(物理删除,一旦删除不可恢复)

  *对比:逻辑删除,其实就相当于修改再进行筛选。
    eg:delete from students where id=3;(物理删除)
      updata students set isDelete=1 where id=3;
      select * from students where isDelete=0;(逻辑删除)

  备份与恢复

  • 备份:首先进入MySQL的库目录,然后运行备份命令。

      mysqldump -uroot -p 数据库名 > 目标路径及文件名(.sql文件)

      按提示输入mysql的密码。

  • 恢复:

      mysqldump -uroot -p 新数据库名 < 已备份的文件(.sql文件)

初学MySQL基础知识笔记--01的更多相关文章

  1. 初学MySQL基础知识笔记--02

    查询部分 1> 查询数据中所有数据:select * from 表名 2> 查询数据中某项的数据:eg:select id,name from students; 3> 消除重复行: ...

  2. mysql基础知识笔记

    Mysql基础笔记 环境配置 基本概念 mysql命令行 进入 use show 查询 select order by where like 数据过滤regexp concat 文本函数 日期函数 数 ...

  3. Android基础知识笔记01—框架结构与四大组件

    -----------Andriod 01--------------->>> Andriod系统架构    linux内核与驱动层. 系统运行库层. 应用框架层. 应用层 内核驱动 ...

  4. MySQL 基础知识梳理

    MySQL 的安装方式有多种,但是对于不同场景,会有最适合该场景的 MySQL 安装方式,下面就介绍一下 MySQL 常见的安装方法,包括 rpm 安装,yum 安装,通用二进制安装以及源码编译安装, ...

  5. mysql基础知识大全

    前言:本文主要为mysql基础知识的大总结,mysql的基础知识很多,这里作简单概括性的介绍,具体的细节还是需要自行搜索.当然本文还有很多遗漏的地方,后续会慢慢补充完善. 数据库和数据库软件 数据库是 ...

  6. mysql基础知识语法汇总整理(二)

    mysql基础知识语法汇总整理(一) insert /*insert*/ insert into 表名(字段列表) values(值列表); --蠕虫复制 (优点:快速复制数据,测试服务器压力) in ...

  7. mysql基础知识语法汇总整理(一)

    mysql基础知识语法汇总整理(二)   连接数据库操作 /*连接mysql*/ mysql -h 地址 -P 端口 -u 用户名 -p 密码 例如: mysql -u root -p **** /* ...

  8. JS基础知识笔记

    2020-04-15 JS基础知识笔记 // new Boolean()传入的值与if判断一样 var test=new Boolean(); console.log(test); // false ...

  9. Java多线程基础知识笔记(持续更新)

    多线程基础知识笔记 一.线程 1.基本概念 程序(program):是为完成特定任务.用某种语言编写的一组指令的集合.即指一段静态的代码,静态对象. 进程(process):是程序的一次执行过程,或是 ...

随机推荐

  1. python 字符串格式化输出 %d,%s及 format函数

    旧式格式化方式:%s,%d 1.顺序填入格式化内容 s = "hello %s, hello %d"%("world", 100) print(s) 结果: ' ...

  2. linux之软件安装

    一.软件包管理简介 1)软件包分类 1.源码包 优点: 开源, 如果有足够的能力, 可以修改源代码 可以自由选择所需的功能 软件是编译安装, 所以更加适合自己的系统, 更加稳定也效率更高 卸载方便 缺 ...

  3. Python Cookbook(第3版)中文版:15.16 不确定编码格式的C字符串

    15.16 不确定编码格式的C字符串¶ 问题¶ 你要在C和Python直接来回转换字符串,但是C中的编码格式并不确定. 例如,可能C中的数据期望是UTF-8,但是并没有强制它必须是. 你想编写代码来以 ...

  4. 【BZOJ1008】【HNOI2008】越狱(组合数学)

    题面 题目描述 监狱有连续编号为1...N的N个房间,每个房间关押一个犯人,有M种宗教,每个犯人可能信仰其中一种.如果相邻房间的犯人的宗教相同,就可能发生越狱,求有多少种状态可能发生越狱 输入输出格式 ...

  5. [BZOJ2503][HAOI2006]均分数据

    BZOJ Luogu sol 如果已经确定了一个序列,现要求把这个序列分成m个连续段作为答案,那么就可以用一个显而易见的DP DP显然可以得到当前序列下的最优解. 所以模拟退火瞎JB改一改序列每次DP ...

  6. 【linux之软件安装,rpm,yum】

    一.软件管理 静态库 动态库静态库:在程序编译时会被连接到目标代码中,程序运行时将不再需要该静态库动态库:在程序编译时并不会被连接到目标代码中,而是在程序运行时才被载入. 链接是程序调用库的过程. 静 ...

  7. Eclipse常用不常用快捷键

    逼格高且常用的7个快捷键:Ctrl+O:列出该类下的所有方法   Ctrl+E:列出打开的所有类   Shift+Enter:在当前行下一行创建空白行(Ctrl+Shift+Enter:在当前行上一行 ...

  8. 一道java基础面试题

    package test; class A {    public A(){        System.out.println("A3");    }    {        S ...

  9. maven工程 java 实现文件上传 SSM ajax异步请求上传

    java ssm框架实现文件上传 实现:单文件上传.多文件上传(单选和多选),并且用 ajax 异步刷新,在当前界面显示上传的文件 首先springmvc的配置文件要配置上传文件解析器: <!- ...

  10. c# List实现原理

    在研究前辈们写的代码,总是搞不明白.word文中引文的索引和引文列表中的索引对应关系是什么呢?是如何对应上的?我冥思苦想,昨天又系统地看了下代码,才所有悟,所以记录下我的探索过程. 如下图所示: 图1 ...