数据库是能够长期储存在计算机内、有组织、可共享的、统一管理的大量数据的数据集合。
数据库中的数据按照一定的数据模型组织、描述和储存,具有较小的冗余度,较高的数据独立性和易扩展性,并可为各种用户共享。
整一个数据库在建立和维护时由数据库管理系统统一管理、统一控制。用户能够方便地定义数据和操纵数据,并保证数据的安全性、完整性、多用户对数据的并发使用及发生故障后的数据恢复。
create database 数据库名;
show databases;
drop database 数据库名;
数据表是储存在数据库中,用于存储数据,类似Excel表格的文件。
数据表的创建比数据库创建要多一些列名的定义,而且在创建数据表之前要指定使用哪一个数据库,不然就会报错。
use 数据库名;
create table students(
列名1 数据类型1,
列名2 数据类型2,
列名3 数据类型3,
...
);
show tables;
但这却是查看数据库中的表有哪些,那如何查看我们创建的表的详情呢:
describe 数据表名;
从这里我们就可以看到数据表中有哪几列,每一列的数据类型,是否能为空,是不是主键等等信息。
insert into 数据表名 values(值1,值2,值3 ...);
然后利用
select * from students;
查看整一个数据表数据
除此之外,我们还可以一次性输入多个数据:
insert into 数据表名(列名1,列名2,列名3 ...) values
(值11,值12,值13),
(值21,值22,值23),
(值31,值32,值33)
...;
如上所示,如果查找所有信息的话就是:
select * from students;
但如果只是查找某几列的话就是:
select 列名1,列名2 ... from students;
另外,select也有其他用处:修改列名,使显示出来的信息更加人性化
select 列名1 as 新列名1,
列名2 as 新列名2,
列名3 as 新列名3 from students;
update 数据表名 set 列名 = 值;
但我们一般需要修改的只是和一个或一类人的信息,因此要在原语句上加上一些逻辑条件:
update 表名 set 列1 = 值1,列2 = 值2 .....
where 条件;
除此之外,where 语句后面的逻辑语句一般有:列名 = (>或者<或者>=或者<=或者<>)值
也可以是多个逻辑语句的and或者or或者not
最后也可以自己定义一些需要修改的数据:列名 in (值1,值2,值3)
删除单个信息:
delete from 数据表名 where 列名 =值;
truncate 数据表名;
最后是整一个数据表的内容,结构从数据库中删除,也就是数据表的删除:
drop table 数据表名;
在数据库基础入门知识的学习中,除了以上增删改查几个知识点外,也学到一些其他的知识;也遇见的一些问题,最后找到解决的方法。
主键(PRIMARY KEY)的完整称呼是“主键约束”,是 MySQL 中使用最为频繁的约束,具有唯一性和排他性。
创建具有主键的数据表,并查看数据表详情:可以看到作为主键的id是不可以为空的;
另外,不同的数据不可以具有相同的主键。
首先查看一个关于文件导入的全局变量
show global variables like 'local_infile';
发现它是OFF的,说明不可以导入文件,需要将它改成ON
SET GLOBAL local_infile = 1;
然后还需要在cmd中输入mysql -u root -p --local-infile=1
,打开另一个端口才可以导入文件
load data local infile '文件路径'
into table 数据表名(列1,列2,列3 ...);