初学MySQL基础知识笔记--01是哪些内容?
摘要:本人初入博客园,第一次写博客,在今后的时间里会一点点的提高自己博客的水平,以及博客的排版等。 在今天,我学习了一下MySQL数据库的基本知识,相信关于MySQL的资料网上会有很多,所以我就不在这里复制粘贴了,在这里留下一些本人在初学MySQ
本人初入博客园,第一次写博客,在今后的时间里会一点点的提高自己博客的水平,以及博客的排版等。
在今天,我学习了一下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的库目录,然后运行备份命令。
