【MYSQL-1】

目录

 

一、基础知识

1、什么是数据库

2、表

3、数据类型

4、主键

5、SQL语言

6、数据库访问接口

7、什么是Mysql

二、数据库的基本操作

1、创建数据库

2、删除数据库

 

三、数据表的基本操作

1、创建数据表

2、使用主键约束

3、使用外键约束

4、使用非空约束

5、使用唯一性约束

6、使用默认约束

7、设置表的属性值自动增加

四、查看数据表结构

1、查看表基本结构

2、查看表详细结构

五、修改数据表

1、修改表名

2、修改字段的数据类型

3、修改字段名

4、添加字段

5、删除字段

6、删除表的外键约束

7、更改表的存储引擎

8、删除表


一、基础知识

1、什么是数据库

    数据库由一批数据构成有序的集合,这些数据被存放在结构化的数据表里。数据表之间相互关联,反映了客观事物间的本质联系。数据库系统提供对数据的安全控制和完整性控制。

  数据库的发展大致分为:人工管理阶段文件系统阶段数据库系统阶段高级数据库阶段。其种类有3种:层次式数据库网络式数据库关系式数据库

2、表

    在关系型数据库中,数据库表是一系列二维数组的集合,用来存储数据和操作数据的逻辑结构。行称为记录,是组织数据的单位;列称为字段,每一列表示记录的一个属性,都有相应的描述信息。

数据表
序号 用户名 密码 年龄
1 admin 123456 20
2 root admin 18

3、数据类型

    数据类型决定了数据在计算机中存储格式,代表不同的信息类型。常用的数据类型有:整数型、浮点型、二进制型、日期时间型、字符串型等。

4、主键

    主键(Primary Key)又称主码,用于唯一地标识表中的每一条记录。可以定义表中的一列或多列为主键,主键列上不能有两行相同的值,也不能为空值。以上表为例,可以标识序号为主键,其他字段的记录可以有重复值故不能当作主键。

5、SQL语言

    对数据库进行查询和修改操作的语言叫做SQL(结构化查询语言)。SQL有许多不同的类型,各大数据库厂商提供不同版本的SQL。SQL包含以下4个部分:

1、数据定义语言:DROP、CREATE、ALTER等

2、数据操作语言:INSERT、UPDATE、DELETE等

3、数据查询语言:SELECT语句

4、数据控制语言:GRANT、REVOKE、COMMIT、ROLLBACK语句等

6、数据库访问接口

    不同的程序设计语言会有不同的数据库访问接口,程序语言通过这些接口,执行SQL语句,进行数据库管理。主要的数据库访问接口有:

1、ODBC:开放数据库互联技术为访问不同的SQL数据库提供了一个共同接口。所有的数据库操作由对应的DBMS的ODBC驱动程序完成。

2、JDBC:java数据库连接,它由一组用java语言编写的类和接口组成。

3、ADO.NET:是微软在.NET框架下设计的一组和数据源进行交互的面向对象类库。

4、PDO:是PHP访问数据库定义的一个轻量级的接口,提供了一个数据访问抽象层,是PHP5新加入的一个功能。

7、什么是Mysql

    Mysql是一个小型关系型数据库管理系统,与其他大型数据库管理系统(Oracle、DB2、SQL Server等)相比,Mysql规模小、功能有限。但体积小、速度快、成本低,这些特性使得MySQL成为了目前流行的开放源代码数据库。

    MySQL的命令机制由3个数字和1个后缀组成,如MySQL-5.7.10。

第一个数字(5)是主版本号,第二个数字(7)是发行级别,第三个数字(10)是在此发行系列的版本号。

二、数据库的基本操作

1、创建数据库

    MySQL安装完成后,将会在其data目录下自动创建几个必须的数据库,可以使用show databases;语句来查看当前所有存在的数据库:

创建数据库基本SQL语法格式为:create database name_db;

创建完成后可以使用show create database name_db;命令来查看数据库的定义;

2、删除数据库

    删除数据库语法格式为:drop database name_db;使用该删除命令不能恢复数据,请谨慎使用。

 

三、数据表的基本操作

1、创建数据表

    创建表的语法格式:create table 表名

(

字段名1,数据类型 [列级别约束条件] [默认值],

字段名2,数据类型 [列级别约束条件] [默认值],

......

[表级别约束条件]

)

2、使用主键约束

    主键约束要求主键列的数据唯一,且不允许为空。可以结合外键来定义不同数据表之间的关系,加快查询的速度。分为两种主键:单字段主键多字段联合主键

1、单字段主键:由一个字段组成:

可以在定义列的同时指定主键:字段名 数据类型 primary key

在定义完所有列后之后定义主键:primary key 字段名

多字段联合主键:primary key(字段1,字段2,....字段n)

3、使用外键约束

    外键用来在两个表的数据之间建立连接,它可以是一列或多列。一个表可以有一个或多个外键。一个表的外键可以是空值,若不为空值必须是另一个表中主键的某个值。定义外键后,不允许删除在另一个表中具有关联关系的行。

创建外键的语法格式:[constraint 外键名] foreign key 字段名1 references 主键列1

demo:constraint text1 foreign key(tid) references tb_id(id)

4、使用非空约束

    非空约束指字段的值不能为空。语法格式如下:字段名 数据类型 not null

5、使用唯一性约束

    唯一性约束要求该列唯一,允许为空,但只能出现一个空值。语法格式:字段名 数据类型 unique

唯一性约束与主键的区别是:一个表中可以有多个字段声明为唯一性约束,但只能有一个主键声明;声明为主键的列不允许有空值,但是声明为唯一性约束的字段允许空值null存在。

6、使用默认约束

    默认约束指定某列的默认值,语法格式为:字段名 数据类型 default 默认值

自动填充password字段值为123456

7、设置表的属性值自动增加

    一个表中只能有一个字段使用此约束,且该字段必须为主键的一部分,默认的自增字段id的值从1开始,每次添加一条新纪录,该值自动加1。

语法格式如下:字段名 数据类型 auto_increment

四、查看数据表结构

1、查看表基本结构

    describe/desc语句可以查看表的字段信息,语法格式如下:desc 表名

2、查看表详细结构

    show create table语句可以查看用来显示创建表时的create table语句。

五、修改数据表

1、修改表名

语法格式:alter table <旧表名> rename [to] <新表名>;

修改表名:alter table user rename user_1;

2、修改字段的数据类型

语法格式:alter table <表名> modify <字段名> <数据类型>

修改前:

修改username字段:alter table user modify username varchar(50);

3、修改字段名

语法格式:alter table <表名> change <旧字段名> <新字段名> <新数据类型>;

修改username字段名:alter table user change username uname varchar(25) not null;

如果旧字段名与新字段名相同,则只修改数据类型,和modify效果一样。

4、添加字段

语法格式:alter table <表名> add <新字段名> <数据类型> [约束条件] [ first | after 已存在字段名]

“first”为可选参数,作用是将添加的字段置为第一个字段;“after”为可选参数,作用是将新添加的字段添加到指定存在的字段后面

添加一个age字段:alter table user add age int(10) not null;

5、删除字段

语法格式:alter table <表名> drop <字段名>

6、删除表的外键约束

语法格式:alter table <表名> drop foreign key <外键约束名>

外键约束名指在定义表constraint关键字后面的参数。

7、更改表的存储引擎

MySQL的存储引擎有:MyISAM、InnoDB、HEAP、BDB等,可以使用show engines查看:

语法格式:alter table <表名> engine=<更改后的存储引擎名>;

demo:alter table user engine=innoDB;

8、删除表

语法格式:drop table [if exists] 表1,表2,......表n;

参数if exists用于删除前判断删除的表是否存在,加上该参数,再删除表时,如果表不存在则sql可以顺利执行,但会发出警告。

猜你喜欢

转载自blog.csdn.net/a15803617402/article/details/81264054
今日推荐