数据库基本概念

数据库基本概念

一、为什么用数据库?

1.数据“持久化”
2.方便管理

二、什么是数据库?(DBMS)

SQL:结构查询语言

三、mysql免费开源(可自己定制)

SQL server微软后台
SQLlite安卓小数据库

四、mysql卸载

1.检查服务是否正在运行
DBMS是一个网络应用程序,属于TCP/IP协议,并且是一个服务端。
2.三种卸载方式:
控制面板、安装包卸载、360和电脑管家
3.如果你的安装路径默认的,文件在一个隐藏文件夹里C\ProgrammaData\Mysql要删除,不然下次安装安装不了
4.还不成功,清理注册表。

五、使用

1.启动服务器(net start mysql)
2.用客户端连接服务器端:1》命令行 2》Java程序 3》可视化工具
3. 1》确定环境变量是否正确配置
    2》mysql -h localhost(默认连接本机) -P 3306(默认3306端口号) -u root -p
4.mysql属于关系型数据库
客户端编码是gbk,而服务器端认为当前客户端是utf-8的编码:告知当前客户端是gbk编码:set name gbk;

六、mysql数据类型:
1.整型:

tinyint  1字节 范围:-128–127   unsigned之后为: 0–255
smallint  2字节
mediumint  3字节
int***   4字节
bigint 8字节
例:ID int(M) 这个M指宽度,如果单独使用(M)没有意义,必须结合zerofill(零填充) unsigned(无符号)使用。
ID int(8) zerofill unsigned: 1–>00000001

2.浮点型:float,double***

和Java种不同的的是SQL语句中float,double可以指定宽度和精度。double(M,D)M表示总共位数,D表示小数点后有几位(单独使用有用)
例如:double(5,2)存储范围是-999.99–999.99

3.定点型

decimal和numeric都是可以表示小数的

4.日期时间类型:

Date,time,timestamp,datetime,year
Date:日期***
time:时间***
timestamp***,datetime:日期加时间
year:年份
timestamp,datetime区别联系:
timestamp:底层使用毫秒表示,可以区分时区(同一毫秒值,在不同时区,显示的结果是适用当前时区)
范围1970年—2038年
datetime:底层用日期和时分秒表示,不区分时区,什么值就是什么值。(直观,但不利于计算)
范围1000年—9999年

5.字符串类型:

mysql中没有字符类型,都是字符串类型
char***,varchar***(支持全文检索),text
char和varchar区别:
char是定长字符串,例:char (8)不够8位,会用空白符补全八位(读写速度快)
varchar是变长字符串,例:varchar(8)实际占这个字节和这个字的字节数。(读写速度慢,但是节省空间)如果使用varchar必须指定宽度。
text:小短文(不支持全文检索)

6.其他类型:

xxxbit
xxxblob:二进制类型 存储二维码,小头像
枚举类型:预定义几个值,从中选一个
集合类型:预定义几个值,从中选多个

7.特殊值:null

mysql中所有类型都可以赋值为null
判断null值:is null或is not null
null值不能用来计算,计算之后所有成为null

七、sql语言规范:

1.不区分大小写,建议关键字尽量大写
2.除了数值类型,使用‘’
3.列、字段别名,尽量使用“”,并且不建议省略as
4.标点符号,英文状态。
5.(),“”,‘’必须成对。否则不会结束。
6.注释:单行注释:#插入语句、–(空格)插入语句
多行注释:/插入语句/
7.命名规则:
     1>A——Z,a–z,0-9共63个字符。
     2>取名不宜过长。
     3>不能用空格。数据可以有空格
     4>不能重名。
     5>某字段在不同的表中表示的意思相同,那么数据类型必须相同。

八、SQL语句

DDL:数据定义语言,定义库,表结构
DML:数据操作语言,增删改查
DCL:数据控制语言,权限,事务等控制语言

一、DDL语句

1.操作数据库语言:
show databases;
create database user;
drop database user;
use user;
2.操作表格
1–查看表格
show tables;
show tables from user;
2–创建表格
create table【数据库名.】user(
字段名1 数据类型,
字段名2 数据类型,
字段名3 数据类型,
字段名4 数据类型
);
3–查看表结构
desc user;
4–修改表结构
增加一列
alter table user add 字段名1 数据类型【after 字段名2/first】;{把字段1添加到字段2后面}
删除一列
alter table user drop 字段名;
修改列的类型,位置等
alter table 表名 modify 字段名1 char(2) after 字段名2;
修改列的名称
alter table 表名 change 旧字段名 新字段名 char(2) after 字段名2;
修改表名称
alter table 表名称 rename to 新名称;
删除表
drop table 表名称;

二、DML语句

1–添加数据
所有列:insert into 表名称 values(值列表);
部分列:insert into 表名称(字段列表) values(值列表);
一次性添加多行:insert into 表名称 values(值列表1),(值列表2),(值列表3),(值列表4);
2–修改数据
update 表名称 set 字段名1=字段值1,字段名2=字段值2,字段名3=字段值3 【where 条件】;
例:update user set age=34 where name=‘呼呼呼’;
3–删除数据
delete from 表名称 【where 条件】
4–查看数据
查看所有数据:select * from 表名称;
查看部分列:select 字段列表 from 表名称;
查看部分行:select 字段列表 from 表名称;
select * from 表名称 【where 条件】;
5–查询结果是给字段取别名。
select 字段1 as “别名1”,字段2 as “别名2”from 表名称 【where 条件】;
原则上as “”可以不写。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值