MYSQL命令的基本命令
1.查看数据库,语法格式 SHOW DATABASES [LIKE '数据库名’];
实例1:查看所有数据库
show databases;
图一
实例2:创建并查看数据库,先创建一个last_name的数据库,create dat
day 1.查看数据库,语法格式 SHOW DATABASES [LIKE '数据库名’]; 实例1:查看所有数据库
图一 实例2:创建并查看数据库,先创建一个last_name的数据库,create database last_name;在使用show databases进行查看,如下:
图二 实例三:使用 like 从句,使用 like 从句,查看last_name完全匹配的数据库:
图三 2)使用 like 从句,查看名字带有name的数据库:
图4 3)使用 like 从句mysql命令,查看名字以d开头的数据库:
图5 4)使用 like 从句,查看名字以name结尾的数据库:
图6 2.创建数据库,语法格式: create database [if not exists] [[default] character set ] [[default] collate ]; [ ]中的内容是可选的。语法说明如下: 实验1,若在此输入 create database last_name;语句,则系统会给出错误信息,如下:
图7 提示不能创建“last_name”数据库,数据库已存在。可以加上 if not exists从句,就可以避免类似错误,如下:
图8 实验2:创建MYSQL数据库时指定字符集和校对规则,使用mysql命令行工具创建一个测试数据库,命名为name_db_char,指定默认字符集utf8,默认校对规则utf8_chinese_ci,输入SQL语句与执行结果如下:
3.修改数据库,语法格式:ALTER DATABASE [数据库名] { [ DEFAULT ] CHARACTER SET | [ DEFAULT ] COLLATE } 语法说明如下: 实验1,查看last_name数据库的定义声明的执行结果如下:
使用修改命令,将数据库name_db的指定字符集修改为gb231,默认校对规则修改为gb231_chinese_ci,输入SQL语句如下:
4.删除数据库,语法格式:DROP DATABASE [ IF EXISTS ] 语法说明如下: 实验1:删除first_name数据库如下:
如果使用 if exists 从句,可以防止系统报此类错误,如下所示:
5.选择数据库,语法格式:use 实验1:使用last_name数据库,输入结果如下:
6.1创建数据表,其语法格式为:CREATE TABLE ([表定义选项])[表选项][分区选项]; 其中,[表定义选项]的格式为: [,…] CREATE TABLE 命令语法比较多,其主要是由表创建定义(create-definition)、表选项(table-options)和分区选项(partition-options)所组成的。 实例1:创建员工表tb_emp1,结构如下表所示。 选择创建表的last_name,创建tb_emp1数据表,输入SQL语句和运行结果如下:
6.2 修改数据表,其语法格式:ALTER TABLE [修改选项] { ADD COLUMN | CHANGE COLUMN | ALTER COLUMN { SET DEFAULT | DROP DEFAULT } | MODIFY COLUMN | DROP COLUMN | RENAME TO | CHARACTER SET | COLLATE } MySQL 通过 ALTER TABLE 语句来实现表名的修改,语法规则如下: ALTER TABLE RENAME [TO] ; 其中,TO 为可选参数,使用与否均不影响结果。 实验1:将 tb_emp1修改student,结果如下:
修改表字符集,语法规则如下:ALTER TABLE 表名 [DEFAULT] CHARACTER SET [DEFAULT] COLLATE ; 实验2:使用alter table 将数据表student的字符集修改为gb2312,校对规则修改为gb2312_chinese_ci。结果如下:
6.3 删除数据表 ,语法格式如下: DROP TABLE [IF EXISTS] 表名1 [ ,表名2, 表名3 ...] 对语法格式的说明如下: 实例1:选择数据库last_name,创建student_1数据表,输入SQL语句运行结果如下:
查看如下:
我们来删除数据表 student_1,输入sql语句结果如下:
执行结果可以看到,student_1数据库的数据表中已经不存在student_1的表了,证明删掉了。、 6.4 查看表的结构 DESCRIBE ; 或简写成:DESC ; 实验1:
实验2:使用 show create table 语句查看表 student的详细信息,结果如下:
6.5 在mysql数据表中添加字段,语法格式为ALTER TABLE ADD [约束条件]; 对语法格式的说明如下: 这种语法格式默认在表的最后位置(最后一列的后面)添加新字段。 注意:本节我们只添加新的字段,不关注它的约束条件。 实验1:在last_name数据库中新建school数据表,结果如下:
使用desc查看student表结构,SQL语句和运行结果如下:
使用alter table 语句添加一个INT 类型的字段age,结果如下:
在使用DESC查看school表结构,检验age字段是否添加成功。
在开头添加字段,语法格式如下语法格式如下: ALTER TABLE ADD [约束条件] FIRST; FIRST 关键字一般放在语句的末尾。 实验1:使用alter table 语句在表的第一列添加INT 类型的字段stuld,结果如下:
实验3:使用alter table 语句在student 表中添加名为stuno,数据类型为INT的字段,stuno字段位于name字段的后面,结果如下:
6.6 数据表查询语句:语法格式如下:SELECT {* | } [ FROM , … [WHERE [GROUP BY [HAVING [{ }…]] [ORDER BY ] [LIMIT[,] ] ] 实验1:从school表中查询所有字段的数据,结果如下: 实验2:列出表的所有字段,查询school表中所有数据,结果如下:
实验3:查询表中指定的字段,其格式为SELECT < 列名 > FROM < 表名 >;查询student表中的name列所有学生的姓名,结果如下:
实验4:从student表中获取id,name,stuno三列,结果如下:
6.7 插入数据 1) INSERT…VALUES语句 INSERT VALUES 的语法格式为: INSERT INTO [ [ , … ] ] VALUES (值1) [… , (值n) ]; 语法说明如下。 2) INSERT…SET语句 语法格式为: INSERT INTO SET = , = , … 此语句用于直接给表中的某些列指定对应的列值,即要插入的数据的列名在 SET 子句中指定,col_name 为指定的列名,等号后面为指定的数据,而对于未指定的列,列值会指定为该列的默认值。 由 INSERT 语句的两种形式可以看出: 在 MySQL 中,用单条 INSERT 语句处理多个插入要比使用多条 INSERT 语句更快。 当使用单条 INSERT 语句插入多行数据的时候,只需要将每行数据用圆括号括起来即可。 实验1:创建一个课程信息表 class,包含课程编码,课程名称,课程学分,和课程备注,结果如下
在class表中插入一条新纪录,class_id值为1,class_name 值为“Network”,class_grade 值为 3,info 值为“Computer Network”。
实验2:在class表中插入一条记录,class_id值为2,class_name值为“Database”,class_grade值为3,info值为“MYSQL”,结果如下:
向表中指定字段添加值,为表的指定字段插入数据,是在 INSERT 语句中只向部分字段中插入值,而其他字段的值为表定义时的默认值。 实验4:在class表中插入一条新纪录,class_name值为“System”,class_grade 值为3,class_info值为“Operating System”,结果如下:
使用 INSERT INTO…FROM 语句复制表数据, SELECT 子句返回的是一个查询到的结果集,INSERT 语句将这个结果集插入指定表中,结果集中的每行数据的字段数、字段的数据类型都必须与被操作的表完全一致。 在数据库 last_name 中创建一个与 tb_class 表结构相同的数据表 tb_class_new,创建表的 SQL 语句和执行过程如下所示。
实例5:从class表中查询所有记录,并将其插入class_new表中,结果如下:
6.8 修改数据 使用 UPDATE 语句修改单个表,语法格式为: UPDATE SET 字段 1=值 1 [,字段 2=值 2… ] [WHERE 子句 ] [ORDER BY 子句] [LIMIT 子句] 语法说明如下: 注意:修改一行数据的多个列值时,SET 子句的每个值用逗号分开即可。 实验1:在 class_new 表中,更新所有行的class_grade 字段值为 4,输入的 SQL 语句和执行结果如下所示。
实验2:根据条件修改表中的数据,class 表中,更新 class_id 值为 2 的记录,将 class_grade 字段值改为 3.5,将 class_name 字段值改为“DB”,输入的 SQL 语句和执行结果如下所示。
6.9 删除数据 使用 DELETE 语句从单个表中删除数据,语法格式为: DELETE FROM [WHERE 子句] [ORDER BY 子句] [LIMIT 子句] 语法说明如下: 注意:在不使用 WHERE 条件的时候,将删除所有数据。 实例1:删除class_new表中的全部数据,结果如下:
根据条件删除表中的数据 【实例 2】在 class 表中,删除 class_id 为 4 的记录,输入的 SQL 语句和执行结果如下所示。
6.10 清空表记录 TRUNCATE关键字用于完全清空一个表。其语法格式如下: TRUNCATE [TABLE] 表名 其中,TABLE 关键字可省略。 实验1;新建表 tb_student_course,插入数据并查询,SQL 语句和运行结果如下
使用 TRUNCATE 语句清空 tb_student_course 表中的记录,SQL 语句和运行结果如下:
TRUNCATE 和 DELETE 的区别 从逻辑上说,TRUNCATE 语句与 DELETE 语句作用相同,但是在某些情况下,两者在使用上有所区别。 总结 当不需要该表时,用 DROP;当仍要保留该表,但要删除所有记录时,用 TRUNCATE;当要删除部分记录时,用 DELETE。 (编辑:海南站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |