在终端或命令行中和数据库软件建立连接

mysql -uroot -p

数据库相关SQL

  • 查看所有数据库

    show databases;
  • 创建数据库

    create database 数据库名;

    create database db1;
  • 查看数据库详情

    show create databse 数据库名;

    show create database db1;
  • 创建数据库指定字符集

    create database 数据库名 character set utf8/gbk;

    create database db2 character set gbk;
  • 删除数据库

    drop database 数据库名;

    drop database db1;
  • 使用数据库

    use 数据库名;

    use db1;

表相关的SQL 前提需要使用了某个数据库

  • 查询所有表 show tables;

  • 创建表

  • create table 表名(字段1名 字段1类型,字段2名 字段2类型);

    create table person(name varchar(10),age int);

  • 查看表详情

    show create table person;

  • 表引擎:

    innodb:支持数据库的高级操作包括:事务、外键等

    myisam:只支持数据基础的增删改查操作

  • 创建表指定引擎和字符集

    create table 表名(字段1名 字段1类型,字段2名 字段2类型) engine=myisam/innodb charset=utf8/gbk;

    create table t1(name varchar(10),age int) engine=myisam charset=gbk;

  • 查看表字段

    desc 表名;

    desc hero;

  • 删除表

    drop table 表名;

    drop table hero;

  • 修改表名

  • rename table 原名 to 新名;

    create table t1(name varchar(10));

    rename table t1 to t2;

  • 修改表引擎和字符集

    alter table 表名 engine=myisam/innodb charset=utf8/gbk;

    alter table t2 engine=myisam charset=gbk;

  • 添加表字段

    -- 最后面添加格式: alter table 表名 add 字段名 字段类型;

    -- 最前面添加格式: alter table 表名 add 字段名 字段类型 first;

    -- xxx后面添加格式: alter table 表名 add 字段名 字段类型 after xxx;

    alter table t2 add age int;

    alter table t2 add sal int first;

    alter table t2 add id int after name;

  • 删除表字段

    alter table 表名 drop 字段名;

    alter table t2 drop id;

  • 修改字段名和类型

    alter table 表名 change 原名 新名 新类型;

    alter table t2 change sal salary varchar(10);

  • 修改字段类型和位置

    alter table 表名 modify 字段名 新类型 first/after xxx;

    alter table t2 modify salary int after age;

数据相关的SQL

  • 插入数据

    insert into 表名 values (值1,值2,值3);

    insert into person values(1,'Tom',20);

    insert into 表名 (字段1,字段2) values(值1,值2);

    insert into person (id,name) values(2,'Jerry');
  • 查询数据

    select 字段信息 from 表名 where 条件;
  • 修改数据

    update 表名 set 字段名=值,字段名=值 where 条件;
  • 删除数据

    delete from 表名 where 条件;

中文乱码问题

通过在终端中执行 set names gbk;

主键约束

  • 什么是主键:用于表示数据唯一性的字段称为主键
  • 什么是约束: 就是创建表的时候给字段添加的限制条件
  • 主键约束: 插入数据必须是唯一且非空的

主键约束+自增

  • 自增数值只增不减
  • 从历史最大值基础上+1

注释

  • 对表的字段进行描述

    create table t3(id int primary key auto_increment comment '主键字段',name varchar(10) comment '这是姓名');

is null 和 is not null

别名

select ename as '姓名',sal as '工资' from emp;

select ename '姓名',sal '工资' from emp;

select ename 姓名,sal 工资 from emp;

去重 distinct

select distinct job from emp;

mysql基础整理01的更多相关文章

  1. MySQL基础整理(一)之SQL基础(未完成)

    大家好,我是浅墨竹染,以下是MySQL基础整理(一)之SQL基础 1.SQL简介 SQL(Structure Query Language)是一种结构化查询语言,是使用关系模型的数据库应用语言. 2. ...

  2. MySQL基础篇(01):经典实用查询案例,总结整理

    本文源码:GitHub·点这里 || GitEE·点这里 一.连接查询 图解示意图 1.建表语句 部门和员工关系表: CREATE TABLE `tb_dept` ( `id` int(11) NOT ...

  3. MySql基础整理

    http://hovertree.com/menu/mysql/ use abccs;select * from mytable2 limit 3,4;call sp_name1(1,@nn);sel ...

  4. mysql基础整理02

    比较运算符 > < = >= <= !=和<> !=和<>都是一个意思,都是不等于的意思 and和or and 并且&& 需要同时满足多 ...

  5. Mysql 经典案例总结(学习之前需要有Mysql基础)01

    Sql 经典案例 gb 4.2 ** 1 检索记录 (1) 主要介绍 Sql的基本SELECT查询语句 使用 SELECT * from 表 查询数据 查询该表的每一列数据 * 代表所有的意思 也可以 ...

  6. 01 mysql 基础一 (进阶)

    mysql基础一 1.认识mysql与创建用户 01 Mysql简介 Mysql是最流行的关系型数据库管理系统之一,由瑞典MySQLAB公司开发,目前属于Oracle公司. MySQL是一种关联数据库 ...

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

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

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

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

  9. 重新整理 mysql 基础篇————— 介绍mysql[一]

    前言 准备整理mysql的基础篇了,前面整理了sql语句序列的的<sql 语句系列(八百章)>,感觉很多用不上,就停下来了,后续还是会继续整理. mysql 基础篇主要是对一些基础进行整理 ...

随机推荐

  1. ETC的发展演变

      ETC是不停车电子收费系统,ETC专用车道是给那些装了ETC车载器的车辆使用的,采用电子收费方式. ETC( Electronic Toll Collection ) 不停车收费系统是目前世界上最 ...

  2. 背水一战 Windows 10 (102) - 应用间通信: 剪切板

    [源码下载] 背水一战 Windows 10 (102) - 应用间通信: 剪切板 作者:webabcd 介绍背水一战 Windows 10 之 应用间通信 剪切板 - 基础, 复制/粘贴 text ...

  3. Java的简单类型不能够精确的对浮点数进行运算

    由于Java的简单类型不能够精确的对浮点数进行运算,这个工具类提供精确的浮点数运算,包括加减乘除和四舍五入. import java.math.BigDecimal; /** * 由于Java的简单类 ...

  4. eclipse遇到的问题

    引用不了R文件,可能是导包导错了cannot be resolved or is not a field:首先检查你的XML是否保存了,再检查你的import导入的R文件是你包名+R还是android ...

  5. PHP调用百度地图API

    //百度地理位置接口API $lat = 39.912108791024; $lng = 116.48299016095; $ak = "5slgyqGDENN7Sy7pw29IUvrZ&q ...

  6. 转:Python: 什么是*args和**kwargs

    今天看源码的时候发现一个是*args和**kwargs,一看就能知道args是神马,就是所有参数的数组,kwargs就不知道了,google一下,一个人的blog写的比较简单明了,秒懂了~~kwarg ...

  7. 安卓ListView行详细内容展示页编写和下拉刷新实现

    ListView行详细内容展示页: 使用轻量级的Fragment实现Listview行内容简单的详细信息展示: 值得注意的是: 1. 主布局(打开它的Activity)必须是FrameLayout布局 ...

  8. iReport官方文档(英文版本)+ iReport中文教程

    背景介绍 最近学习iReport,但是网上找到的博客里都是断断续续,几乎没有很详尽的资料文档,要么下载收费,要么不全.很是困扰. 在此,我提供给大家两个官网文档: JasperReports Libr ...

  9. Unity 5 使用Roslyn编译器支持C# 7

    Unity 2017可选使用新的Mono编译器,支持.NET 4.6和C# 6,解决bug的同时,代码优化更佳. Unity 5可以使用社区开源方案:https://bitbucket.org/ale ...

  10. Linux编程 10 (shell外部命令与内建命令,alias ,type命令)

    一.  内部命令 Linux命令有内部命令(内建命令)和外部命令之分,内部命令和外部命令功能基本相同,但也有些细微差别.内部命令不需要使用子进程来执行,它们已经和shell编译成一体,作为shell工 ...