什么是sql语句?
mysql数据库中的简单语句称为sql语言;具体是对数据库进行查询和修改操作的语言。
sql语言的四个部分有什么?
1、数据定义语言(DDL):DROP、CREATE、ALTER等语句。
2、数据操作语言(DML):INSERT、UPDATE、DELETE等语句。
3、数据查询语言(DQL):SELECT语句
4、数据控制语言(DCL):GRANT、REVOKE、COMMIT、ROLLBACK等语句。
以上是sql语言中的四个部分,其中这些语句也就是一些常用到的sql语句。
数据库中包含了哪些内容?
数据库中包含了数据表、数据类型、主键、外键等。
1、数据表:在关系数据库中,数据库的表是一系列二维数据组的集合。用来存储数据和操作数据的逻辑结构。
2、数据类型:决定了数据在计算机中存储的格式,代表不同的信息类型:整数数据类型,浮点数数据类型,精确小数类型,二进制数据类型,日期/时间/类型 ,字符串类型等等。
3、主键:用于唯一地标识表中的每一条记录。
4、外键:用于约束主键。
接下来我们讲一讲一些简单的语句:
因为是在centos中安装的数据库,所以需要先进入数据库:
具体命令如下:
mysql -uroot -p密码 ###-uroot是以root的身份 -p密码(这个密码是数据库的密码,如果没有,就默认回车就好了)
进入数据库以后开始执行以下的操作
MariaDB [mysql]> show databases; ---显示存在的数据库有哪些
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
+--------------------+
4 rows in set (0.00 sec) ---默认有4个数据库
1、information_schema:在这个数据库中,数据存放整个数据库里面所有库名、表名、以及字段名称:简单地说是信息数据库。
需要记住3个表名,分别是schemata,tables,columns。
2、performance_schema:主要收集数据库服务器性能参数,用于监控服务器在一个较低级别的过程中资源消耗,资源等待等情况。
3、mysql:主要负责村塾数据库的用户、权限设置、关键字等mysql自己需要使用的控制和管理信息。
4、test:主要是用于测试
MariaDB [mysql]> use information_schema; --这个命令是用来进入数据库的
在数据库中也有一些简单的命令:
MariaDB [information_schema]> show tables; -- 用来查看这个数据库中有些什么数据表
MariaDB [information_schema]> select * from schemata\G -- 显示schemate表中的结构
MariaDB [(none)]> create database abc; --创建数据库 名字为abc
创建表的语法格式:
数据表属于数据库,在创建数据表之前,使用语句“USE <数据库名>”指定操作是才从哪个数据库中进行的,如果没有选择数据库会报错
语法:
create table <表名> (字段名1,数据类型[列级别约束条件][默认值] 字段名2,数据类型[列级别约束条件][默认值],);
具体例子如下:
MariaDB [abc]> create table tb_emp1 (表名为tb_emp1)
-> (
-> id int(11), ---字段名为id 类型为int(11)
-> name varchar(25), ---字段名为name 类型为varchar(25)
-> deptld int (11), ---字段名为deptld 类型为int(11)
-> salary FLOAT ---字段名为salary 类型为FLOAT
-> );
Query OK, 0 rows affected (0.00 sec)
###这个表创建完成以后可以去查看一下表的结构:
MariaDB [abc]> desc tb_emp1; (查看表结构)
+--------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| id | int(11) | YES | | NULL | |
| name | varchar(25) | YES | | NULL | |
| deptld | int(11) | YES | | NULL | |
| salary | float | YES | | NULL | |
+--------+-------------+------+-----+---------+-------+
4 rows in set (0.00 sec)
###可以看到刚才创建表已经生成,并且表的结构非常清晰。
###我们还可以来查看表的详细结构
MariaDB [abc]> show create table tb_emp1\G ---查看表的详细结构
*************************** 1. row ***************************
Table: tb_emp1
Create Table: CREATE TABLE `tb_emp1` (
`id` int(11) DEFAULT NULL,
`name` varchar(25) DEFAULT NULL,
`deptld` int(11) DE
FAULT NULL,
`salary` float DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1
1 row in set (0.00 sec)
一些创建表,查看表结构的简单命令就这些,希望对各位有帮助!
接着,我们来看看如何进行修改:
修改表名
语法:alter table (旧表名) rename (t0) <新表名> to可写可不写
例如:
MariaDB [abc]> alter table tb_emp1 rename ccc; (修改表名) ----将其修改为ccc(将tb_emp1的表修改为ccc)
修改字段的类型:
语法:ALTER TABLE(表名)MODIFY<字段名><数据类型>;
例如:
MariaDB [abc]> alter table ccc modify name varchar(30); (修改字段类型) ----修改表中的字段 将varchar(25)修改为varchar(30)
修改字段名
语法:alter table <表名> change <旧字段名><新字段名><新数据类型>
例如:
MariaDB [abc]> alter table ccc change salary sly float; (修改字段名) ----将salary修改为sly
添加字段
语法:alter table<表名> add <新字段名><数据类型>[约束条件][first|after 已存在字段名]
例如:
MariaDB [abc]> alter table ccc add aaa1 varchar(12) not null ; ---(添加一个新的字段aaa1)
MariaDB [abc]> alter table ccc add aaa2 varchar(20) first; ---(在表的第一行添加字段)
MariaDB [abc]> alter table ccc add aaa3 varchar(40) after name ; ---(在指定字段name后添加新字段)
删除字段:
语法:alter table <表名> drop <字段名>
例如:
MariaDB [abc]> alter table ccc drop id; ---删除ccc表中的id字段(会将这一字段的全部内容删除,包括数据类型)
修改字段的配列位置
语法:alter table <表名> modify <字段名> <字段类型> FIRST|AFTEER<字段2>;
例如:
MariaDB [abc]> alter table ccc modify aaa1 varchar(12) first; ---将aaa这个字段放到第一个位置
MariaDB [abc]> alter table ccc modify name varchar(30) after aaa3; ---将name字段放到aaa这个字段后面
删除表:
语法:drop table [if exists] 表1,表2 ...
例如:
MariaDB [abc]> drop table aaa; ---删除表aaa
将数据插入表中:
语法:insert into 表名(字段1、字段2,......) values (字段1的值,字段2的值......)
例如:
MariaDB [abc]> insert into ddd(ccc_id,name,sex,birth) ###表中的字段 values(250,'wy','M','.....'); ###表中字段的具体值
这个命令的意思就是将250 wy M .... 插入到ddd表中的ccc_id name sex birth 字段中。
这种方法是指定插入,其中插入的方法还有一个全部插入。
修改数据记录
语法:UPDATE 表名 SET 字段名1=字段名1 [字段名2=字段名2] WHERE 条件表达式
例如:
MariaDB [student]> update stu1 set sex='w' where name='cixi'; ##这句话的意思是将stu1中的sex中的内容改成为w 条件是name=cixi
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0
刷新数据库:
MariaDB [(none)]> flush privileges; ---这个语句可以将修改的数据库内容进行刷新
Query OK, 0 rows affected (0.00 sec)
删除数据记录:
语法:DELETE FROM 表名 WHERE 条件表达式
例如:
MariaDB [student]> delete from student.stu1 where name='cixi'; ##这个语句的意思是将student.stu1中的name=xici的这一个数据删除