数据库常用命令

1、登录

  • 进入数据库,在win系统下,打开cmd,切换用户权限,进入root:
  • 沒权限,用root登录:
mysql -uroot
  • 如果root有密码:
mysql -uroot -p 

2、数据库创建

  • 查询所有数据库:
show databases;
  • 创建数据库:
create database  <数据库名>;
  • 删除数据库:
drop database  <数据库名>;
  • 进入数据库:
use  <数据库名>;

3、数据表的操作

1)查询数据库下表:

show tables;

2)创建表1:

create table student(id int(4) primary key,name char(20));
  • 注释: id为表的第一列;
  • int数字类型;
  • primary key主键的意思,列不能重复。
  • Name为表的第二列名字。
  • char:类型;

创建表2:

create table score(id int(4) not null,class int(2));
注释: not null字段不能为空。

创建表3:

create table student1(id int(4) not null,name char(20));

Field (列名),Type(字段类型),null(是否为空),key(主键)

3)查看表结构:

describe  student;    或      desc  student; 

4)修改表名:

alter table <表名> rename <表名>;

5)删除表:

drop table <表名>; 

6)修改表字段信息:

alter table student change id id int(20);

7)增加表字段信息:

alter table student1 add class int(4) not null after id; 

8)删除一个表字段:

alter table student1 drop number;

4、表数据的增删查改

提示:在数据库导入表时,要修改列的字段类型并设置主键;

主键:表中经常有一个列或多列的组合,其值能唯一地标识表中的每一行。这样的一列或多列称为表的主键,通过它可强制表的实体完整性。当创建或更改表时可通过定义 PRIMARY KEY 约束来创建主键。一个表只能有一个 PRIMARY KEY 约束,而且 PRIMARY KEY 约束中的列不能接受空值。由于 PRIMARY KEY 约束确保唯一数据,所以经常用来定义标识列

1) 表数据新增格式:

insert into 表格名(列名) values(值)

先导入student和score表,表为Excel,可以自己编写。

例子:

mysql> insert into student(id,class,number,name) values(81,4,19,'stu81');

mysql> insert into student(id,class,number) values(82,4,20);

mysql> insert into student values(83,4,21,'stu83');

mysql> alter table student change id id int(2) auto_increment;

注释:auto_increment以1为单位自增长的意思;

mysql> insert into student(class,number,name) values(4,22,'stu84');

mysql> alter table score change id id int(4) auto_increment;

注释:auto_increment自增长的意思。+1。输入该命令,表格会在新输入自动新增长新的一行,id也会成自增。

mysql> insert into score(class,number,maths,chinese,english) values(4,19,80,78,98);

mysql> insert into score(class,number,maths,chinese,english) values(4,20,98,88,68);

mysql> insert into score(class,number,maths,chinese,english) values(4,21,91,83,78);

mysql> insert into score(class,number,maths,chinese,english) values(4,22,67,83,88);

2) 查询表数据格式:

select  *  from <表名>  where

注释:语句以逗号做分隔,*通配符,select是展示的意思,where是条件;

例子: 查询学生信息表中所有信息:select * from student;

      查询成绩表中,列id,class,chinese的信息:select id,class,chinese from score;

3)表数据排序操作:

升序:order by         降序:升序语句末尾加 desc

例子:查询成绩表中,列id,chinese的信息并且以列chinese排序

select id,chinese from score order by chinese;(升序)

select id,chinese from score order by chinese desc;(降序)

4)表数据查询操作:

(1)查询1班与2班的成绩信息:
mysql> select * from score where class="1" or class="2";
(2)查询语文为77并且数学为88的成绩信息:

mysql> select * from score where chinese=77 and maths=88;  
(3)查询1,2,3班的成绩信息:
mysql> select * from score where class in (1,2,3); 查询不为4班的成绩信息:
mysql> select * from score where class not in
(4)查询不为4班的成绩信息:
mysql> select * from score where class !=4; 注释: !在数据库里面为否定的意思:
(5) 查询1班到3班的成绩信息:
mysql> select * from score where class between 1 and 3; 注释: between:在```之间,中间的意思:
(6) 查询不为3班与4班的成绩信息:
mysql> select * from score where class not in (3,4);
(7)查询语文成绩大于等于80小于等于90的成绩信息
mysql> select * from score where chinese>=80 and chinese<=90;
(8) 统计成绩表的总数:
mysql> select count(*) from score;
(9) 按照英语去重,显示英语成绩信息:
mysql> select distinct English from score;
注释: distinct 去除重复的意思;
(10) 显示4到7行的数据:mysql> select * from score limit 3,4;    

注释:数据库数据排列:0,1,2,3;  3显示第4行; 4,5,6,7共有4行;   3,4 ;  

3表示第4行,4表示从第3行开始到第7行,共有4行;
(11) 按chinese排序,显示4,5行数据:
mysql> select * from score order by chinese limit 3,2;
(12) 查询出学生姓名为stu10的学生信息:mysql> select * from student where name='stu10';

注释:只要不是数字,有汉字数字字母多种组成的形式都要加单引号,表示字符串。
(13) 查询出学生姓名为stu10或者stu15的学生信息: 

mysql> select * from student where name in ('stu10','stu15');
(14) 分组查询每个班的人数:
mysql> select class,count(*) from student group by class; 

4、作业:

1,查询4班的成绩信息:
select * from score where class="4";
2,查询4班,语文成绩大于80小于90的成绩信息:

select * from score where class in (4) and chinese>80 and chinese<90;
3,查询学生表中5到10行的数据:
select * from student limit 4,6;
4,显示3班语文成绩为90,数学成绩为68,的class与number信息,:

select class, number from score  where class="3"  and  chinese=90 and  maths=68;
5,查询出4班成绩并且按语文成绩倒序排序:

select * from score where class="4" order by chinese desc;
6,查询2班与3班,语文成绩与数学成绩都大于80的class与number信息:

select class, number from score where class in (2,3) and  chinese>80 and maths>88;

Mysql教程:(一)数据库常用基础命令的更多相关文章

  1. MySQL数据库入门常用基础命令

    MySQL数据库入门———常用基础命令      数据——公司的生命线,因此在大多数的互联网公司,都在使用开源的数据库产品,MySQL也因此关注度与使用率非常的高,所以做为运维的屌丝们,掌握它的一些基 ...

  2. Linux常用基础命令整理:关机命令、查看目录下文件命令等

    Linux常用基础命令整理:关机命令.查看目录下文件命令等 整理了一些Linux常用基础命令,欢迎指正. 首先记住四个热键,学会这四个键,收益一辈子. Tab按键---命令补齐功能Ctrl+c按键-- ...

  3. 【转】SQL Server、Oracle、MySQL和Vertica数据库常用函数对比

    SQL Server.Oracle.MySQL和Vertica数据库常用函数对比 Vertica数据库是HP公司新收购的用于BI方面的数据库. 1. 绝对值 S:select abs(-1) valu ...

  4. CentOS常用基础命令大全

    这篇文章主要介绍了CentOS常用基础命令大全,学习centos的朋友需要掌握的知识,需要的朋友可以参考下 1.关机 (系统的关机.重启以及登出 ) 的命令shutdown -h now 关闭系统(1 ...

  5. Docker 使用笔记-常用基础命令

    常用基础命令 环境:Linux Ubuntu 1.查看docker信息 docker version | docker info 2.启动docker服务 sudo systemctl start d ...

  6. Vertica的这些事(二)——SQL-Server、Oracle、MySQL和Vertica数据库常用函数对比

    SQL Server.Oracle.MySQL和Vertica数据库常用函数对比 Vertica数据库是HP公司新收购的用于BI方面的数据库. 绝对值 S:select abs(-1) value O ...

  7. Linux常用基础命令(二)

    Linux常用基础命令 一.-ls--列表显示目录内容 二.-alias--设置别名 三.-du--统计目录及文件空间占用情况 四.-mkdir--创建新目录 五.-touch--创建空文件 六.-l ...

  8. MySQL数据库入门———常用基础命令

    mysql 连接数据库命令: MySQL 连接本地数据库,用户名为“root”,密码“123”(注意:“-p”和“123” 之间不能有空格) mysql -h localhost -u root -p ...

  9. Mysql数据库常用的命令 数据备份 恢复 远程

    远程数据库 格式: mysql -h主机地址 -u用户名 -p用户密码数据库 mysql -h 42.51.150.68 -u yang -p discuz mysql设置密码 mysql>us ...

随机推荐

  1. Jmeter线程组设置

    添加线程组:右键测试计划->添加->Threads->线程组 左侧树形标签栏中,显示标签信息. 选中线程组,右侧内容栏中显示线程组的相关信息. 名称:可以给线程组设置一个个性化的命名 ...

  2. lua常用一些功能

    lua在openresty中获取请求的请求头 local head_table = ngx.req.get_headers() 由于table类型,无法直接使用ngx.say()显示,需要转换为cjs ...

  3. 『Python』matplotlib的imshow用法

    热力图是一种数据的图形化表示,具体而言,就是将二维数组中的元素用颜色表示.热力图之所以非常有用,是因为它能够从整体视角上展示数据,更确切的说是数值型数据. 使用imshow()函数可以非常容易地制作热 ...

  4. 关于Python中的深浅拷贝

    之前一直认为浅拷贝是拷贝内容的第一层,但是不开辟内存,只是增加新的指向原来的内容:深拷贝是拷贝是拷贝每一层并开辟内存. 其实这个是不严谨的不正确的. 从以上可以看出,浅拷贝中当时可变类型的时候,内存是 ...

  5. 当你创建了一个 Deployment 时,Kubernetes 内部发生了什么?

    我们通常使用 kubectl 来管理我们的 Kubernetes 集群. 当我们需要一个 Nginx 服务时,可以使用以下命令来创建: kubectl create deployment nginx ...

  6. P5056-[模板]插头dp

    正题 题目链接:https://www.luogu.com.cn/problem/P5056 题目大意 \(n*m\)的网格,求有多少条回路可以铺满整个棋盘. 解题思路 插头\(dp\)的,写法是按照 ...

  7. SVN服务器的环境搭建(图文并茂)

    SVN服务器的搭建与使用 本章读完,就可以创建代码版本库,传送门 https://www.cnblogs.com/zzpython/p/13348009.html TortoiseSVN 是 Subv ...

  8. 解决报错:Unable to process Jar entry [org/springframework/jmx/export/annotation/*****]

    情况说明:从gitub上clone的maven项目,pox.xml配置中的依赖,自己的repository都有,所以正常update project ,正常clean,install,整个过程无报错 ...

  9. Unity Event Trigger 事件响应(二维,三维)添加组件

    EventTrigger 上主要的方法有PointerEnter.PointerExit.PointerDown.PointerUp.PointerClick............都会显示在面板上面 ...

  10. Python中字符串常用方法

    capitalize() String.capitalize() 将字符串首字母变为大写 name = 'xiaoming' new_name = name.capitalize() print(ne ...