数据库介绍及基础SQL语句

@[TOC](文章目录)

目录

@[TOC](文章目录)

一、数据库(DB)

1.DB介绍

2.数据库分类

3.MySQL简介

4.数据库服务器、数据库和表的关系

5.命令行中连接和退出MySQL的命令

6.SQL介绍

二、数据库常用操作命令

1.创建、查看、删除、使用数据库

(1)创建数据库(create)



一、数据库(DB)


1.DB介绍


DB(Data base):是一个文件系统,用来存储数据的仓库,可以对存储的数据进行增删改查操作。

2.数据库分类


(1)关系型数据库(RDBMS):建立在关系模型基础上的数据库。(关系型数据库中存储的数据之间可以有关联关系,是以二维表的形式存储数据),包括MySQL,Oracle,DB2,SQL Server…
(2)非关系型数据库:通常指数据之间无关系的数据库。(非关系型数据库之间的数据是完整的,独立存在的,相互之间无关联),包括mongodb,redis…

3.MySQL简介


(1)MySQL是一个关系型数据库管理系统,是世界上最流行的几款数据库之一
(2)MySQL优点:是一款轻量级数据库(免费、开源)
(3)MySQL数据库适用于中大型的网站

4.数据库服务器、数据库和表的关系

在这里插入图片描述

(1)Client(客户端):navicat,命令行客户端
(2)服务器端:MySQL
(3)所谓安装数据库服务器,只是在机器上装了一个数据库管理系统(比如MySQL),用来管理多个数据库,一般开发人员会针对每一个应用创建一个数据库(DB)。
(4)为保持应用中实体的数据,一般会在数据库创建多个表,以保存程序中实体的数据。

5.命令行中连接和退出MySQL的命令


(1)连接MySQL: mysql -h(ip地址) -u(用户名) -p(密码)
注:为安全起见,密码不直接跟在-p后面,而是-p后先回车再输入密码。 

在这里插入图片描述

(2)退出MySQL:exit

在这里插入图片描述


6.SQL介绍


(1)SQL(Structured Query Language):结构化查询语言。
(2)SQL是专门为数据库而建立的操作命令集,是一种功能齐全的数据库语言。
(3)SQL语法特点:

 1、不区分大小写
 2、关键字  字段名  表名 需要用空格或者逗号隔
 3、 每一个SQL语句是用分号结尾    
 4、语句可以写一行也可以分开写多行


二、数据库常用操作命令


1.创建、查看、删除、使用数据库


(1)创建数据库(create)


1  create  database 数据库名;
在这里插入图片描述

在这里插入图片描述  


(2)查看数据库(show)
   show databases; (查看所有数据库)
在这里插入图片描述


show  create  database  数据库名; (查看创建数据库的信息)
1


(3)删除数据库(drop)
drop  database  数据库名;
1


(4)使用数据库(use)
use  数据库名; (使用/选中某个数据库)
1


2.数据表中列的数据类型
(1)数值型

注:decimal(n,m)表示这个数值总共有n位,小数部分有m位,整数部分n-m位。

(2)字符型

char定长字符串和varchar变长字符串的区别:


char类型不管存储的值的长度是什么,都会占用()里设置的字节数。(所以字段长度能够确定的话,比如手机号这类的字段可以用char类型来存储)
varchar类型则占用实际长度+1个字节。
1
2
(3)日期型

datetime和timestamp的区别:

 - 两者存储方式不同
timestamp是把客户端插入的时间从当前时区转化为世界标准时间进行存储。查询时,又将其转化为客户端当前时间进行返回。
datetime则是原样输入和输出。
 - 两者所能存储的时间范围不同
timestamp所能存储的时间范围为:‘1970-01-01 00:00:01.000000’到‘2038-01-19 03:14:07.999999’
datetime所能存储的时间范围为:‘1000-01-01 00:00:00.000000’到‘9999-12-31 23:59:59.999999’
1
2
3
4
5
6
3.创建、查看、删除、修改数据表
(1)约束条件
    unsigned:无符号(值从0开始,无负数)
    zerofill:零填充(当数据的显示长度不够的时候可以使用填补0的效果填充至指定长度,字段会自动添加unsigned)
    not  null:非空约束(表示该字段的值不能为空)
    default:表示如果插入数据时没有给该字段赋值,那么就使用默认值。
    primary key:主键约束(表示唯一标识,不能为空,且一个表只能有一个主键)
    auto_increment:自增长(只能用于数值列,默认起始值从1开始,每次增长1)
    unique  key:唯一值(表示该字段下的值不能重复,可以为空,可以有多个)
1
2
3
4
5
6
7
注:如果一列同时有unsigned,zerofill,not null这几个约束,unsigned,zerofill必须在not null前面,否则会报错。

(2)创建表(create)
    create table 表名
(
    field1  datatype,
    field2  datatype,
    field3  datatype
);
1
2
3
4
5
6
field:指定列名 datatype:指定列类型
注:创建表前,要先使用(use 数据库名)语句选中某个数据库;

创建带约束条件的表:

(3)查看表(show,desc)
show tables;  (查看所有表)

desc  表名;(查看表结构(表中的字段,类型及约束条件等))
1
2
3

(4)删除表(drop)
    drop  table  表名;
1


(5)修改表(alter)
 - 向数据表中添加一列:
    alter  table  表名  add  列名  类型  [约束];(默认自动添加到数据表字段的末尾)
    如果要加在第一列则在最后面加个:first
    如果要加在某一列的后面,则在最后面加:after 列名
1
2
3
4

如果要加在第一列则在最后面加个:first

如果要加在某一列的后面,则在最后面加:after 列名


 - 删除数据表中的某一列:
    alter  table 表名  drop  列名;
1
2


 - 修改列的类型和名称:
    alter  table  表名  modify  列名  新的类型;(修改列的类型)
    alter  table  表名  change  旧列名   新列名  类型;(可以只修改列名;也可以同时修改列名和列的类型)
    修改的同时可以设置默认值;
1
2
3
4
alter table 表名 modify 列名 新的类型;(修改列的类型)

alter table 表名 change 旧列名 新列名 类型;(可以只修改列名;也可以同时修改列名和列的类型)


修改的同时可以设置默认值;


4.数据表中数据的增、删、改、查
(1)增加数据(insert)
insert  into(“字段1”,“字段2”,…)  values(值1,值2,…);
1

批量插入:

insert  into(“字段1”,“字段2”,…)  values(值1,值2,…),(值1,值2,..)..;
1


注:

 - 插入的数据应与字段的数据类型相同            
 - 数据的大小应在列的规定范围内        
 - 在values中列出的数据位置必须与被加入的列的排列位置相对应            
 - 字符应包含在引号中(数值型的数据可以不加引号)
1
2
3
4
(2)删除数据(delete)
delete  from 表名  where  条件;
1
注:

 - 删除数据库和数据表用drop,删除数据表中的数据用delete
 - 如果不使用where子句,将删除表中所有数据
 - delete语句不能删除某一列的值(可使用update)
 - 使用delete语句仅删除符合where条件的行的数据,不删除表中其他行和表本身;
1
2
3
4


(3)修改数据(update)
update  表名 set  列名=新值  where  列名=某值;
1
注:

 - update语法可以用新值更新原有表中的各列
 - set子句指示要修改哪些列和要给予哪些值    
- where自居指定应更新哪些列(如没有where子句,则更新所有的列)
1
2
3


update可用于删除某一列中对应的某一行的值(=‘ ‘ 或= null)’ ‘是空字符串,和null不同

(4)查询数据(select)
select  *  from 表名;  (查询所有列)
1


select  字段1,字段2,..  from  表名; (查询指定列)
1


在select语句中可使用as语句(起别名):select  字段  as  别名  from  表名;
1

————————————————
版权声明:本文为CSDN博主「biying923」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/biying0923/article/details/105613091

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值