程序员通过sql运行dbms(data base management system),来处理db(data base)
sql语句分为:
dql(数据查询语言):查询语句,select
dml(数据操作语言):对数据进行增删改,insert delete update
ddl(数据定义语言):对表结构的增删改,create drop alter
tcl(事务控制语言):commit提交事务,rollback回滚事务
dcl(数据控制语言):grant授权,revoke撤销权限
导入数据:
第一步:登录mysql数据管理系统
dos命令窗口(cmd):
mysql -uroot -p666
第二步:查看有哪些数据库
show databases;(mysql命令,一定要带分号)
第三步:创建属于我们自己的数据库
create database bjpowernode;(mysql命令,一定要带分号)
第四步:使用bjpowernode数据
use bjpowernode;(mysql命令,一定要带分号)
第五步:查看当前数据库中的表
show tables;(mysql命令,一定要带分号)
第六步:初始化数据
mysql> source 表格数据地址(可以直接从文档里拖到cmd)
以.sql结尾的文件,被称为“sql脚本”(文件扩展名是.sql,并且文件中编写了大量的sql语句)
source命令可以执行sql脚本
sql脚本数据太大时,无法打开,可以用source命令完成初始化
删除数据库:
drop database bjpowernode;
mysql> show tables;
+-----------------------+
| Tables_in_bjpowernode |
+-----------------------+
| dept |(部门)
| emp |(员工)
| salgrade |(工资等级)
+-----------------------+
查看表的结构:
mysql> desc dept;
+--------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| DEPTNO | int(2) | NO | PRI | NULL | |
| DNAME | varchar(14) | YES | | NULL | |
| LOC | varchar(13) | YES | | NULL | |
+--------+-------------+------+-----+---------+-------+
mysql> desc emp;
+----------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| EMPNO | int(4) | NO | PRI | NULL | |
| ENAME | varchar(10) | YES | | NULL | |
| JOB | varchar(9) | YES | | NULL | |
| MGR | int(4) | YES | | NULL | |
| HIREDATE | date | YES | | NULL | |
| SAL | double(7,2) | YES | | NULL | |
| COMM | double(7,2) | YES | | NULL | |
| DEPTNO | int(2) | YES | | NULL | |
+----------+-------------+------+-----+---------+-------+
mysql> desc salgrade;
+-------+---------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+-------+
| GRADE | int(11) | YES | | NULL | |
| LOSAL | int(11) | YES | | NULL | |
| HISAL | int(11) | YES | | NULL | |
+-------+---------+------+-----+---------+-------+
查看表的数据:
mysql> select*from emp;
+-------+--------+-----------+------+------------+---------+---------+--------+
| EMPNO | ENAME | JOB | MGR | HIREDATE | SAL | COMM | DEPTNO |
+-------+--------+-----------+------+------------+---------+---------+--------+
| 7369 | SMITH | CLERK | 7902 | 1980-12-17 | 800.00 | NULL | 20 |
| 7499 | ALLEN | SALESMAN | 7698 | 1981-02-20 | 1600.00 | 300.00 | 30 |
| 7521 | WARD | SALESMAN | 7698 | 1981-02-22 | 1250.00 | 500.00 | 30 |
| 7566 | JONES | MANAGER | 7839 | 1981-04-02 | 2975.00 | NULL | 20 |
| 7654 | MARTIN | SALESMAN | 7698 | 1981-09-28 | 1250.00 | 1400.00 | 30 |
| 7698 | BLAKE | MANAGER | 7839 | 1981-05-01 | 2850.00 | NULL | 30 |
| 7782 | CLARK | MANAGER | 7839 | 1981-06-09 | 2450.00 | NULL | 10 |
| 7788 | SCOTT | ANALYST | 7566 | 1987-04-19 | 3000.00 | NULL | 20 |
| 7839 | KING | PRESIDENT | NULL | 1981-11-17 | 5000.00 | NULL | 10 |
| 7844 | TURNER | SALESMAN | 7698 | 1981-09-08 | 1500.00 | 0.00 | 30 |
| 7876 | ADAMS | CLERK | 7788 | 1987-05-23 | 1100.00 | NULL | 20 |
| 7900 | JAMES | CLERK | 7698 | 1981-12-03 | 950.00 | NULL | 30 |
| 7902 | FORD | ANALYST | 7566 | 1981-12-03 | 3000.00 | NULL | 20 |
| 7934 | MILLER | CLERK | 7782 | 1982-01-23 | 1300.00 | NULL | 10 |
+-------+--------+-----------+------+------------+---------+---------+--------+
mysql> select*from dept;
+--------+------------+----------+
| DEPTNO | DNAME | LOC |
+--------+------------+----------+
| 10 | ACCOUNTING | NEW YORK |
| 20 | RESEARCH | DALLAS |
| 30 | SALES | CHICAGO |
| 40 | OPERATIONS | BOSTON |
+--------+------------+----------+
mysql> select*from salgrade;
+-------+-------+-------+
| GRADE | LOSAL | HISAL |
+-------+-------+-------+
| 1 | 700 | 1200 |
| 2 | 1201 | 1400 |
| 3 | 1401 | 2000 |
| 4 | 2001 | 3000 |
| 5 | 3001 | 9999 |
+-------+-------+-------+
查看创建表的语句:
show create table<表名>(查看创建表时用的语句)
简单的查询语句(dql):
select 字段名1,字段名2,字段名3,… from 表明;
字段名内容时数字时,可以参与数学运算
给列重命名:
select 字段名 as 新名 from 表明;(as可省略)
中文需要用单引号括起来,标准sql语句中单引号中是字符串
条件查询:
select 字段 from 表明 where 条件(between…and…,是闭区间,也可用于字符串);
执行顺序:
先 from 然后where 最后select