增加语句有:1、CREATE DATABASE语句,用于增加数据库,语法“CREATE DATABASE 数据库名;”;2、CREATE TABLE语句,用于增加数据表,语法“CREATE TABLE 表名(列名 类型);”;3、ALTER TABLE语句,可向数据表添加字段,语法“ALTER TABLE 表名 ADD 字段名 类型;”;4、INSERT语句,可向字段添加数据。
本教程操作环境:windows7系统、mysql8版本、Dell G3电脑。
1、MySQL增加数据库(CREATE DATABASE
语句)
在 MySQL 中,可以使用 CREATE DATABASE 语句创建数据库,基本语法格式如下:
CREATE DATABASE [IF NOT EXISTS] 数据库名 [CHARACTER SET 字符集名] [COLLATE 校对规则名];
IF NOT EXISTS:在创建数据库之前进行判断,只有该数据库目前尚不存在时才能执行操作。此选项可以用来避免数据库已经存在而重复创建的错误。
CHARACTER SET:指定数据库的字符集。指定字符集的目的是为了避免在数据库中存储的数据出现乱码的情况。如果在创建数据库时不指定字符集,那么就使用系统的默认字符集。
COLLATE:指定字符集的默认校对规则。
MySQL 的字符集(CHARACTER)和校对规则(COLLATION)是两个不同的概念。字符集是用来定义 MySQL 存储字符串的方式,校对规则定义了比较字符串的方式。后面我们会单独讲解 MySQL 的字符集和校对规则。
示例:创建一个名为 test_db 的数据库
CREATE DATABASE test_db;
查看或显示数据库
SHOW DATABASES;
2、MySQL增加数据表(CREATE TABLE
语句)
在 MySQL 中,可以使用 CREATE TABLE 语句创建表。其语法格式为:
CREATE TABLE <表名> ([表定义选项])[表选项][分区选项]);
其中,[表定义选项]的格式为:
<列名1> <类型1> [,…] <列名n> <类型n>
CREATE TABLE 命令语法比较多,其主要是由表创建定义(create-definition)、表选项(table-options)和分区选项(partition-options)所组成的。
提示:使用 CREATE TABLE 创建表时,必须指定以下信息:
要创建的表的名称不区分大小写,不能使用SQL语言中的关键字,如DROP、ALTER、INSERT等。
数据表中每个列(字段)的名称和数据类型,如果创建多个列,要用逗号隔开。
示例:在指定的数据库中创建表
注:数据表属于数据库,在创建数据表之前,应使用语句“USE<数据库>”指定操作在哪个数据库中进行,如果没有选择数据库,就会抛出 No database selected 的错误。
选择创建表的数据库 test_db,创建 tb_emp1 数据表:
CREATE TABLE tb_emp1 ( id INT(11), name VARCHAR(25), deptId INT(11), salary FLOAT );
语句执行后,便创建了一个名称为 tb_emp1 的数据表,使用 SHOW TABLES;
语句查看数据表是否创建成功
3、MySQL数据表添加字段(ALTER TABLE语句)
在 MySQL 中可以使用 ALTER TABLE 语句来改变原有表的结构,例如增加或删减列、更改原有列类型、重新命名列或表等。
一个完整的字段包括字段名、数据类型和约束条件。MySQL 添加字段的语法格式如下:
ALTER TABLE <表名> ADD <新字段名><数据类型>[约束条件];
对语法格式的说明如下:
<表名> 为数据表的名字;
<新字段名> 为所要添加的字段的名字;
<数据类型> 为所要添加的字段能存储数据的数据类型;
[约束条件] 是可选的,用来对添加的字段进行约束。
这种语法格式默认在表的最后位置(最后一列的后面)添加新字段。
示例:在tb_emp1 数据表中添加字段
使用 DESC 查看 tb_emp1 表结构
DESC tb_emp1;
使用 ALTER TABLE 语句添加一个 INT 类型的字段 age
ALTER TABLE tb_emp1 ADD age INT(4);
4、MySQL添加数据(INSERT语句)
数据库与表创建成功以后,需要向数据库的表中插入数据。在 MySQL 中可以使用 INSERT 语句向数据库已有的表中插入一行或者多行元组数据。
INSERT 语句有两种语法形式,分别是 INSERT…VALUES 语句和 INSERT…SET 语句。
1)、 INSERT…VALUES语句
INSERT VALUES 的语法格式为:
INSERT INTO <表名> [ <列名1> [ , … <列名n>] ] VALUES (值1) [… , (值n) ];
语法说明如下。
<表名>:指定被操作的表名。
<列名>:指定需要插入数据的列名。若向表中的所有列插入数据,则全部的列名均可以省略,直接采用 INSERT<表名>VALUES(…) 即可。
VALUES 或 VALUE 子句:该子句包含要插入的数据清单。数据清单中数据的顺序要和列的顺序相对应。
2)、INSERT…SET语句
语法格式为:
INSERT INTO <表名> SET <列名1> = <值1>, <列名2> = <值2>, …
此语句用于直接给表中的某些列指定对应的列值,即要插入的数据的列名在 SET 子句中指定,col_name 为指定的列名,等号后面为指定的数据,而对于未指定的列,列值会指定为该列的默认值。
注:当使用单条 INSERT 语句插入多行数据的时候,只需要将每行数据用圆括号括起来即可。
示例:向表中的全部字段添加值
在 test_db 数据库中创建一个课程信息表 tb_courses,包含课程编号 course_id、课程名称 course_name、课程学分 course_grade 和课程备注 course_info
CREATE TABLE tb_courses ( course_id INT NOT NULL AUTO_INCREMENT, course_name CHAR(40) NOT NULL, course_grade FLOAT NOT NULL, course_info CHAR(100) NULL, PRIMARY KEY(course_id) );
在 tb_courses 表中插入一条新记录,course_id 值为 1,course_name 值为“Network”,course_grade 值为 3,info 值为“Computer Network”
在执行插入操作之前,查看 tb_courses 表
SELECT * FROM tb_courses;
查询结果显示当前表内容为空,没有数据,接下来执行插入数据的操作
INSERT INTO tb_courses (course_id,course_name,course_grade,course_info) VALUES(1,'Network',3,'Computer Network');
可以看到插入记录成功。在插入数据时,指定了 tb_courses 表的所有字段,因此将为每一个字段插入新的值。
【相关推荐:mysql视频教程】
以上是mysql增加语句有哪些的详细内容。更多信息请关注PHP中文网其他相关文章!