社区微信群开通啦,扫一扫抢先加入社区官方微信群
社区微信群
`作者简介:大家好我是@每天都要敲代码,一位材料转码农的选手,希望一起努力,一起进步!
??个人主页:@每天都要敲代码的个人主页??系列专栏:MySQL专栏
??推荐一款模拟面试、刷题神器,从基础到大厂面试题??点击跳转刷题网站进行注册学习
目录
SQL,一般发音为sequel,SQL的全称(Structured Query Language),SQL用来和数据库打交道,完成和数据库的通信,SQL是一套标准。但是每一个数据库都有自己的特性别的数据库没有,当使用这个数据库特性相关的功能,这时SQL语句可能就不是标准了(90%以上的SQL都是通用的)
数据库,通常是一个或一组文件,保存了一些符合特定规格的数据,数据库对应的英语单词是DataBase,简称:DB;数据库软件称为数据库管理系统(DBMS),全称为DataBase Management System,如:Oracle、SQL Server、MySql、Sybase、informix、DB2、interbase、PostgreSql 等。
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的数据库产品线。
**DB:**DataBase(数据库,数据库实际上在硬盘上以文件的形式存在)
**DBMS:**DataBase Management System(数据库管理系统,常见的有:MySQL Oracle DB2 Sybase SqlServer…)
**SQL:**结构化查询语言,是一门标准通用的语言。标准的sql适合于所有的数据库产品。SQL属于高级语言。SQL语句在执行的时候,实际上内部也会先进行编译,然后再执行sql!sql语句的编译由DBMS完成!
**总结:**DBMS负责执行sql语句,通过执行sql语句来操作DB当中的数据DBMS -(执行)-> SQL -(操作)-> DB
(1)表(table)是一种结构化的文件,可以用来存储特定类型的数据,如:学生信息,课程信息,都可以放到表中。另外表都有特定的名称,而且不能重复。
(2)表中具有几个概念:列、行、主键;列叫做字段(Column),行叫做表中的记录
(3)表是数据库的基本组成单元,所有的数据都以表格的形式组织,目的是可读性强。
(4)一个表包括行和列:
**行:**被称为数据/记录(data)
**列:**被称为字段(column)(5)每一个字段应该包括哪些属性?
**字段名、数据类型、相关的约束;**例如:年龄是整型int,姓名是字符串类型varchar
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撤销权限等。
**第一步:**登录mysql数据库管理系统
dos命令窗口:mysql -uroot -p333
**第二步:**查看有哪些数据库
show databases; (不是SQL语句,属于MySQL的命令)
MySQL自带的四个数据库:
**第三步:**创建属于我们自己的数据库
create database bjpowernode; (不是SQL语句,属于MySQL的命令)
**第四步:**使用bjpowernode数据
use bjpowernode; (不是SQL语句,属于MySQL的命令)
**第五步:**查看当前使用的数据库中有哪些表
show tables; (不是SQL语句,属于MySQL的命令)bjpowernode是新建的数据库,里面没有任何表
**第六步:**初始化数据(执行bjpowernode.sql脚本)
mysql>source C:Java学习MySQL数据脚本jpowernode.sql
注意:数据初始化完成之后,bjpowernode里面有三张表:**删除数据库:**drop database bjpowernode;
(1)bjpowernode.sql,这个文件以sql结尾,这样的文件被称为“sql脚本”。
(2)什么是sql脚本呢?当一个文件的扩展名是.sql,并且该文件中编写了大量的sql语句,我们称这样的文件为sql脚本。
(3)注意:直接使用source命令可以执行sql脚本;sql脚本中的数据量太大的时候,无法打开,请使用source命令完成初始化。
9.1 查看表结构:desc 表名称
(1)表名称:dept
描述:部门信息表
(2)表名称:emp
描述:员工信息表
**注:**DEPTNO字段是外键,DEPTNO的值来源于dept表的主键,起到了约束的作用
(3)表名称:salgrade
描述:薪水等级信息表
9.2 查看表格中的数据:select * from 表名称
部门信息数据:dept
员工信息数据:emp
薪水等级信息:salgrade
MySQL程序选项具有以下两种通用形式:
(1)长选项,由单词之前加两个减号组成:
mysql --version
(2)短选项,由单个字母之前加一个减号组成:
mysql -V
(1)在同一个数据库服务器中,不能创建两个名称相同的数据库,否则将会报错。
(2)可以通过 if not exists 参数来解决这个问题,数据库不存在, 则创建该数据库,如果存在,则不创建
2.1 创建数据库
create database 数据库名称;
create database if not exists 数据库名称;
例如:create database bjpowernode;
2.2 使用数据库
use 数据库名称;
例如:usebjpowernode;
我们需要在数据库中建立表,因此创建表的时候必须要先选择数据库!
2.3 删除数据库
如果删除一个不存在的数据库,将会报错。此时,可以加上参数 if exists ,如果数据库存在,再执行删除,否则不执行删除。
drop database [ if exists ] 数据库名 ;
3.1 查询当前使用的数据库
例如:select database();
3.2 查询数据库版本
例如:select version();
终止一条正在编写的语句,可键入c;例如:
可使用:q、quit、exit、ctrl+c等!
show databases;
use bjpowernode
select database();
show tables;
查询当前数据库的表直接:show tables即可;在当前数据查询其它数据的表怎么办呢?
例如:在当前数据bjpowernode数据库中查询mysql数据库中的表:
show tables from mysql; --查看mysql数据库中的表
比如:在当前bjpowernode数据库下,查询里面的员工emp表结构
desc emp;
查看创建一个表所需要的所有SQL语句,例如:
show create table emp;
今天的分享就到这里啦!快快通过下方链接注册加入刷题大军吧!各种大厂面试真题在等你哦!
??刷题神器,从基础到大厂面试题??点击跳转刷题网站进行注册学习
深知大多数初中级Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《Java开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
小编已加密:aHR0cHM6Ly9kb2NzLnFxLmNvbS9kb2MvRFVrVm9aSGxQZUVsTlkwUnc==出于安全原因,我们把网站通过base64编码了,大家可以通过base64解码把网址获取下来。
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!