目录
一:数据库概述及数据准备
1. SQL概述
2. 数据库
3. MySQL概述
4. SQL、DB、DBMS
5. 表
6.SQL通用语法与语句的分类
7.导入数据
8.对SQL脚本的理解
9.查看表结构以及表中的数据
二:常用命令
1. 查看msyql版本
2. 创建数据库
3.查询当前使用的数据库
4.终止一条语句
5.退出mysql
三:查看表结构步骤
1. 查看和指定现有的数据库
2. 指定当前缺省数据库
3. 查看当前使用的库
4. 查看当前库中的表
5. 查看其他库中的表
6. 查看表的结构
7. 查看表的创建语句
一:数据库概述及数据准备
1. SQL概述
SQL,一般发音为sequel,SQL的全称(Structured Query Language),SQL用来和数据库打交道,完成和数据库的通信,SQL是一套标准。但是每一个数据库都有自己的特性别的数据库没有,当使用这个数据库特性相关的功能,这时SQL语句可能就不是标准了(90%以上的SQL都是通用的)
2. 数据库
数据库,通常是一个或一组文件,保存了一些符合特定规格的数据,数据库对应的英语单词是DataBase,简称:DB;数据库软件称为数据库管理系统(DBMS),全称为DataBase Management System,如:Oracle、SQL Server、MySql、Sybase、informix、DB2、interbase、PostgreSql 等。
3. MySQL概述
MySQL最初是由“MySQL AB”公司开发的一套关系型数据库管理系统(RDBMS-Relational Database Mangerment System)。MySQL不仅是最流行的开源数据库,而且是业界成长最快的数据库,每天有超过7万次的下载量,其应用范围从大型企业到专有的嵌入应用系统。
MySQL AB是由两个瑞典人和一个芬兰人:David Axmark、Allan Larsson和Michael “Monty” Widenius在瑞典创办的。在2008年初,Sun Microsystems收购了MySQL AB公司。在2009年,Oracle收购了Sun公司,使MySQL并入Oracle的数据库产品线。
4. SQL、DB、DBMS
DB: DataBase(数据库,数据库实际上在硬盘上以文件的形式存在)
DBMS: DataBase Management System(数据库管理系统,常见的有:MySQL
SQL: 结构化查询语言,是一门标准通用的语言。标准的sql适合于所有的数据库产品。SQL属于高级语言。SQL语句在执行的时候,实际上内部也会先进行编译,然后再执行sql!sql语句的编译由DBMS完成!
总结:DBMS负责执行sql语句,通过执行sql语句来操作DB当中的数据DBMS -(执行)-> SQL -(操作)-> DB
5. 表
(1)表(table)是一种结构化的文件,可以用来存储特定类型的数据,如:学生信息,课程信息,都可以放到表中。另外表都有特定的名称,而且不能重复。
(2)表中具有几个概念:列、行、主键;列叫做字段(Column),行叫做表中的记录
(3)表是数据库的基本组成单元,所有的数据都以表格的形式组织,目的是可读性强。
(4)一个表包括行和列:行:被称为数据/记录(data)列:被称为字段(column)(5)每一个字段应该包括哪些属性?
字段名、数据类型、相关的约束;例如:年龄是整型int,姓名是字符串类型varchar
6.SQL通用语法与语句的分类
SQL通用语法
在学习具体的 SQL 语句之前,先来了解一下 SQL 语言的通用语法。
1)SQL 语句可以单行或多行书写, 以分号结尾 。
2)SQL 语句可以使用 空格/缩进来增强语句的可读性 。
3)MySQL 数据库的 SQL语句不区分大小写 , 关键字建议使用大写 。
4) 注释:
单行注释 : -- 注释内容 或 # 注释内容
多行注释 : /* 注释内容 */
SQL的分类 :
①DQL-Data Query Language(数据查询语言): 查询语句,凡是select语句都是DQL。
②DML-Data Manipulation Language(数据操作语言):insert delete update,对表当中的数据进行增删改
③DDL-Data Definition Language(数据定义语言):create drop alter,对表结构的增删改
④TCL-Transactional Control Language(事务控制语言):commit提交事务,rollback回滚事务(TCL中的T是Transaction)
⑤DCL-Data Control Language(数据控制语言): grant授权、revoke撤销权限等。
7.导入数据
第一步:登录mysql数据库管理系统
dos命令窗口:mysql -uroot -p333
第二步:查看有哪些数据库
show databases; (不是SQL语句,属于MySQL的命令)
MySQL自带的四个数据库:
第三步:创建属于我们自己的数据库
create database bjpowernode;
第四步:使用bjpowernode数据
use bjpowernode;
第五步:查看当前使用的数据库中有哪些表
show tables; (不是SQL语句,属于MySQL的命令);bjpowernode是新建的数据库,里面没有任何表
第六步:初始化数据(执行bjpowernode.sql脚本)
mysql>source C:\Java学习\MySQL\数据脚本\bjpowernode.sql
注意:数据初始化完成之后,bjpowernode里面有三张表:
删除数据库:drop database bjpowernode;
8.对SQL脚本的理解
(1)bjpowernode.sql,这个文件以sql结尾,这样的文件被称为“sql脚本”。
(2)什么是sql脚本呢?当一个文件的扩展名是.sql,并且该文件中编写了大量的sql语句,我们称这样的文件为sql脚本。
(3)注意:直接使用source命令可以执行sql脚本;sql脚本中的数据量太大的时候,无法打开,请使用source命令完成初始化。
9.查看表结构以及表中的数据
9.1 查看表结构:desc 表名称
(1)表名称:dept
描述:部门信息表
(2)表名称:emp
描述:员工信息表
注:DEPTNO字段是外键,DEPTNO的值来源于dept表的主键,起到了约束的作用
(3)表名称:salgrade
描述:薪水等级信息表
9.2 查看表格中的数据:select * from 表名称
部门信息数据:dept
员工信息数据:emp
薪水等级信息:salgrade
二:常用命令
1. 查看msyql版本
MySQL程序选项具有以下两种通用形式:
(1)长选项,由单词之前加两个减号组成:
mysql --version
(2)短选项,由单个字母之前加一个减号组成:
mysql -V
2. 创建数据库
(1)在同一个数据库服务器中,不能创建两个名称相同的数据库,否则将会报错。
(2)可以通过 if not exists 参数来解决这个问题,数据库不存在, 则创建该数据库,如果存在,则不创建
2.1 创建数据库
create database 数据库名称;
create database if not exists 数据库名称;
例如:create database bjpowernode;
2.2 使用数据库
use 数据库名称;
例如:use bjpowernode;
我们需要在数据库中建立表,因此创建表的时候必须要先选择数据库!
2.3 删除数据库
如果删除一个不存在的数据库,将会报错。此时,可以加上参数 if exists ,如果数据库存在,再执行删除,否则不执行删除。
drop database [ if exists ] 数据库名 ;
3.查询当前使用的数据库
3.1 查询当前使用的数据库
例如:select database();
3.2 查询数据库版本
例如:select version(); 这是在mysql里面查询
4.终止一条语句
\c终止一条正在编写的语句;例如:
5.退出mysql
可使用:\q、\quit、exit、ctrl+c等!
三:查看表结构步骤
1. 查看和指定现有的数据库
show databases;
2. 指定当前缺省数据库
use bjpowernode
3. 查看当前使用的库
select database();
4. 查看当前库中的表
show tables;
5. 查看其他库中的表
查询当前数据库的表直接:show tables即可;在当前数据库查询其它数据库的表怎么办呢?
例如:在当前数据bjpowernode数据库中查询mysql数据库中的表:
show tables from mysql; --查看mysql数据库中的表
6. 查看表的结构
比如:在当前bjpowernode数据库下,查询里面的员工emp表结构
desc emp;
7. 查看表的创建语句
查看创建一个表所需要的所有SQL语句,例如:
show create table emp;