1.6 MySQL基本操作(SQL)
SQL:
SQL 是用于访问和处理数据库的标准的计算机语言。
SQL语言规范
1 在数据库系统中,SQL语句不区分大小写,建议用大写 2 SQL语句可单行或多行书写,以“;”结尾 3 关键词不能跨多行或简写 4 用空格和缩进来提高语句的可读性 5 子句通常位于独立行,便于编辑,提高可读性
注释:
SQL标准: -- 注释内容 单行注释,注意有空格 /*注释内容*/ 多行注释 MySQL注释: 注释内容
常用SQL操作指令
DDL: Data Defination Language 数据定义语言
CREATE,DROP,ALTER
DML: Data Manipulation Language 数据操作语言
INSERT,DELETE,UPDATE
DQL:Data Query Language 数据查询语言
SELECT
DCL:Data Control Language 数据控制语言
GRANT,REVOKE,COMMIT,ROLLBACK
库管理命令
创建数据库 create database db1; create database IF NOT EXISTS db2 CHARACTER SET 'utf8'; 修改数据库 ALTER DATABASE db1 character set utf8; 删除数据库 drop database db1; 查看数据库 show databases; show create database db1; 切换数据库 use db2; 显示数据库中的表 show tables;
数据库命名规则 ——可以使用数字/字母/下划线,但不能纯数字 ——区分大小写,具有唯一性,不能重复 ——不可使用指令关键字、特殊符号
表管理命令 DDL
创建表 新建指定名称的表 create table 库名.表名( 字段名1 字段类型(宽度) 约束条件, 字段名2 字段类型(宽度) 约束条件, .. .. .. 字段名N 字段类型(宽度) 约束条件 ); 创建一个存储用户信息的表,表字段为姓名、性别、爱好 mysql> create table user( -> name char(10), -> gender char(10), -> hobby char(50) -> ); 也可以通过查询现存表创建和复制现存的表的表结构创建
查看表 查看支持的engine类型 SHOW ENGINES; 查看表: SHOW TABLES [FROM db_name] 查看表结构: DESC [db_name.]tb_name SHOW COLUMNS FROM [db_name.]tb_name 查看表创建命令: show create table student; 查看表状态: SHOW TABLE STATUS LIKE 'tbl_name' 查看库中所有表状态 SHOW TABLE STATUS FROM db_name
修改和删除表 删除表 DROP TABLE [IF EXISTS] 'tbl_name'; 修改表 ALTER TABLE 'tbl_name' #字段: #添加字段:add ADD col1 data_type [FIRST|AFTER col_name] #删除字段:drop #修改字段: alter(默认值), change(字段名), modify(字段属性) 查看修改表帮助 Help ALTER TABLE
RENAME TABLE `cc`.`test` TO `cc`.`test1`;
将test表修改为test1
记录管理命令DML
insert INSERT tbl_name [(col1,...)] VALUES (val1,...), (val21,...)
INSERT INTO `user` (`name`, `gender`, `hobby`) VALUES ('亚瑟', '男', '战士'); update UPDATE student_tbl SET s_title='学习 C++' WHERE s_id=3; 注意:一定要有限制条件,否则将修改所有行的指定字段 可利用mysql 选项避免此错误: mysql -U | --safe-updates| --i-am-a-dummy [root@centos8 ~]#vim /etc/my.cnf [mysql] safe-updates delete DELETE FROM student_tbl WHERE s_id=3; 删除表中数据,但不会自动缩减数据文件的大小。
注意:一定要有限制条件,否则将清空表中的所有数据 如果想清空表,保留表结构,也可以使用下面语句,此语句会自动缩减数据文件的大小。 TRUNCATE TABLE tbl_name;

浙公网安备 33010602011771号