创建数据库和创建数据表

193 阅读4分钟

一、数据库操作语言

数据库在操作时,需要使用专门的数据库操作规则和语法,这个语法就是 SQL(Structured Query Language) 结构化查询语言。

SQL 的主要功能是和数据库建立连接,进行增删改查的操作。SQL是关系型数据库管理系统的标准语言。

SQL 语言的作用:

1. 数据定义语言 DDL(Data Definition Language) 。用于创建数据库,数据表。

2. 数据操作语言 DML(Data Manipulation Language) 。用于从数据表中插入、修改、删除数据。

3. 数据查询语言 DQL(Data Query Language) 。用于从数据表中查询数据。

4. 数据控制语言 DCL(Data Control Language) 。用来设置或修改数据库用户或角色的权限。

使用 SQL 操作数据库时,所有的 SQL 语句都以分号结束。(切换数据库时可以不用分号)

在 SQL 语句中,不区分大小写,编写 SQL 语句时可以根据情况用大小写的区别来增加可读性。

二、创建数据库

(1) 查看当前的数据库命令:show databases;

刚安装 MySQL 时,默认有四个数据库,information_schema,mysql,perfomance_schema,sys 。通常情况下,我们不会直接使用这四个数据库,但千万不要把这四个数据库删了,否则会带来很多不必要的麻烦。如果不小心删了,建议是重新安装 MySQL ,在重装之前把自己的数据迁移出来备份好,或者从其他服务器上迁移一个相同的数据库过来。

(2) 创建数据库命令:create database test;

(3) 创建数据库时设置字符编码:create database test character set utf8; 也可以缩写:create database test charset utf8;

character set 可以缩写成 charset ,效果是一样的。

直接创建的数据库,数据库的编码方式是 MySQL 默认的编码方式 latin1 (单字节编码) ,通常我们会在数据库中存放中文数据,所以最好把数据库的编码方式设置成 utf-8 ,这样中文才能正常显示。

(4) 修改数据库编码:alter database test character set utf8;

如果一个数据库的编码方式不符合使用需求,可以进行修改

(5) 进入或切换数据库:使用 use 数据库名 进入或切换数据库

进入到test:use test; 切换至test1:use test1;

(6) 显示当前数据库: select database();

进入数据库中,可以使用 select database(); 来查看当前处于哪个数据库中。长时间操作数据库时,在很多数据库中来回切换后,查看当前的数据库,避免操作错了数据库。

三、创建数据表

(1) 查看当前数据库中的表:使用 show tables;查看当前数据库中有哪些表。

新创建的数据库是空的。

(2) 创建表:create table test_table(id INT, name CHAR(20));

在 test 数据库中创建了一个叫 test_table 的数据表,这张表有两个字段 id,name。为了增加 SQL 的可读性,字段名我用的是小写,字段类型用大写。

comment ' ' 可以添加说明;

MySQL可以换行,但每个元素声明之间必须要有逗号隔开,否则就会报错,分号;加回车就可以执行代码了.

表名和字段尽量使用``括起来,所有的语句后面加逗号,最后一个不加,字符串使用单引号括起来,主键的声明一般放在最后,便于查看,不设置字符集编码的话,会使用MySQL默认的字符集编码Latin1,不支持中文,可以在my.ini里修改

格式:

CREATE TABLE IF NOT EXISTS `student`(
	'字段名' 列类型 [属性] [索引] [注释],
    '字段名' 列类型 [属性] [索引] [注释],
    ......
    '字段名' 列类型 [属性] [索引] [注释]
)[表的类型][字符集设置][注释]

(3) 显示表信息:用 show create table 表名; 来显示已创建的表的信息。show create table test_table;

使用 show create table 表名; 可以显示表的字段信息, MySQL 的引擎,和默认的字符编码等信息。与显示数据库信息一样,show 只能显示已经创建了的数据表的信息,不能在创建的同时显示信息。

如果想更好地展示表的字段信息,可以使用 desc 表名; 来显示表的字段信息。

(4) 给表增加字段:使用 alter table 表名 add 字段名 数据类型; 为已存在的表添加一个新字段。alter table test_table add color CHAR(20);

(5) 删除表的字段:使用 alter table 表名 drop 字段名; 删除一个表中已存在的字段。alter table test_table drop color;

(6) 修改字段的数据类型:使用 alter table 表名 modify 字段名 数据类型; 修改表中现有字段的数据类型。alter table test_table modify name VARCHAR(12);

(7) 修改字段的数据类型并且改名:使用 alter table 表名 change 原字段名 新字段名 数据类型; 修改表中现有字段的字段名和类型。alter table test_table change name pname CHAR(18);

四、删除数据库和数据表

删除数据库:drop database test;

删除数据表:drop table test_table;

删除表和删除库都是很危险的事,如果是自己不知道的表和库不要轻易删除,否则挽回需要巨大成本!!!