JavaWebDay01_MySQL基础介绍,SQL的介绍,MySQL的DDL

JavaWebDay01

课程大纲
1、MySQL基础介绍
2、SQL的介绍
3、MySQL的DDL(操作数据库和表,增删改查,使用)
4、MySQL的DML(操作表记录,增删改)
5、MySQL的DQL(操作表记录,查)
	
了解一下JavaWeb课程的划分
	A.数据库介绍(5天) MySQL JDBC
	B.前端知识点(5天) Html CSS JavaScript BootStrap
	C.核心技术(15天) Tomcat JSP JQuery AJAX Maven
	D.旅游管理项目(5天)

第一章 MySQL基础介绍

1、数据库的基本概念
数据库: DataBase 简称 DB
作用: 用于永久性存储和管理数据的仓库
2、常见的数据库
A.MySQL 	简单的免费的数据库  ---> 现在学习
B.Oracle 	大型收费数据库	---> 后期学习
C.SQLServer	大学教材 微软的 C# 和 .Net 超市收银机
D.SQLite	嵌入式数据库 Android系统
3、MySQL安装和卸载
A.安装(参考资料按照)注意:路径不要有中文,记住你的密码,推荐密码123
B.卸载(需要删除隐藏文件夹下面的数据)  C:\ProgramData\MySQL
4、MySQL启动服务的操作
A.手动启动
	a.计算机 -> 管理 -> 服务和应用程序 -> 服务
	b.任务管理器 -> 服务
	
B.普通CMD小黑窗口
	a.指令: servers.msc   "微软ms控制c"
	
C.管理员CMD小黑窗口
	a.开启服务  net start mysql
	b.关闭服务  net stop  mysql
5、MySQL的登录和退出
A.登录(三种方式,三选一)
	a.登录自己的
		mysql -u root -p 密码
	b.登录别人的(别人在安装的时候,勾选远程访问)
		方式1: mysql -h 127.0.0.1 -u root -p 密码
		方式2: mysql --host=127.0.0.1 --user=root --password==密码
		
B.退出(两种方式,二选一)
	a. exit
	b. quit
6、MySQL的重要文件
A.安装文件
	my.ini 可以修改编码问题(例如:可以解决中文乱码的问题)
	
B.数据文件
	文件夹 --------> 数据库
	excel文件 -----> 表
	很多条数据 ----> 表记录

第二章 SQL的介绍

1、SQL的含义
SQL是用于操作关系型数据库的语言. (操作某种数据库的规则)
2、SQL的通用语法
A.SQL语句以分号结尾(分号:英文分号)
B.SQL语句不区分大小写(建议大家写关键字的时候,写大写)
C.注释
	a.单行注释
		方式1:  -- 单行注释,注意中间有空格
		方式2:  #这是注释,MySQL专属的注释
	b.多行注释
		/*这是多行注释,和Java的一样*/
3、SQL语句的分类
A. DDL 操作数据库和表
B. DML 增,删,改 数据库当中表记录
C. DQL 查询数据库当中表记录
D. DCL 客户端授权数据库的操作(了解)

第三章 MySQL的DDL

I.数据库的操作:【增,删,改,查,使用】
1、创建数据库的操作
A.基本创建操作
	CREATE DATABASE 数据库名称;
	
B.综合创建操作(判断是否存在,指定字符集"不会出现中文乱码问题")
	CREATE DATABASE IF NOT EXISTS 数据库名称  CHARACTER SET 具体的编码;
2、查询数据库的操作
A.显示所有的数据库
	SHOW DATABASES;
	
B.显示数据库的创建语句(隐含的作用:查看数据库的字符集)
	SHOW CREATE DATABASE 数据库名称;
3、修改数据库的操作
A.修改数据库的字符集  
	ALTER DATABASE 数据库名称 CHARACTER SET 具体的编码;
4、删除数据库的操作
A.基本的删除操作
	DROP DATABASE 数据库名称;
	
B.判断是否存在,存在则删除的操作
	DROP DATABASE IF EXISTS 数据库名称;
5、使用数据库的操作
A.使用数据库
	USE 数据库名称;

B.查询正在使用当中的数据库
	SELECT DATABASE();
II.表的操作【增,删,改,查】
1、查询表的操作
A.查询数据库当中所有的表信息
	SHOW TABLES;

B.查询某个具体表的结构(每个字段的信息)
	DESC 表名称;
2、创建表的操作
A.基本的创建格式
	CREATE TABLE 表名称 (列名1 类型1,列名2 类型2,列名3 类型3);

B.复制表的操作
	CREATE TABLE 新表名称 LIKE 原始表;

C.常用的数据类型
	a.整数类型 int
	b.小数类型 double(4,1)   4表示有4个数字,1表示精确小数点后1位
	c.字符串类型 varchar(24) 24表示最大容纳24个字符
	d.日期类型 datetime		 需要手动的插入数据到数据库当中
	e.时间戳类型 timestamp 	可以自动添加当前的系统时间
3、删除表的操作
A.基本的删除操作
		DROP TABLE 表名称;

B.判断是否存在,存在则删除的操作
		DROP TABLE IF EXISTS 表名称;
4、修改表的操作
A.修改表名称
		ALTER TABLE 原始表名称 RENAME TO 新的表名;
	
B.修改表的字符集
		ALTER TABLE 表名称 CHARACTER SET  字符集编码;
	
C.修改列名
		ALTER TABLE 表名称 CHANGE 旧列名称  新列名称  新列数据类型;
		ALTER TABLE 表名称 MODIFY 要修改的列名 新的数据类型;
	
D.增加一列
		ALTER TABLE 表名称 ADD 列名称 数据类型;
	
E.删除一列
		ALTER TABLE 表名称 DROP 列名称;

第四章 MySQL的DML

1、表记录的添加语句
A.添加指定列的数据
		INSERT INTO 表名称 (列名1,列名2,列名3) VALUES (值1,值2,值3);
	
B.添加所有列的数据
		INSERT INTO 表名称  VALUES (值1,值2,值3,值4,值5);
	
C.注意事项
		除了数字类型(整数和小数)以外,其他的都要采用引号(单引号双引号都可以)引起来
2、表记录的删除语句
A.删除指定的某些条记录
		DELETE FROM 表名称 [WHERE 条件];
    
B.删除整个表的操作
		a. DELETE FROM 表名称;  	-- 删除整个表(逐行删除) 效率低
		b. TRUNCATE TABLE 表名称;	-- 删除整个表(先删表,再建表) 效率高 【推荐使用】
		c. DROP TABLE 表名称;  -- 删除整个表,直接删除表结构,从数据库当中直接删除掉.
		
C.《面试题》请问: TRUNCATE 和 DROP 有什么区别?
	回答: TRUNCATE 先删除表当中所有的数据,然后会创建一张一模一样的空表。 DROP 直接从数据库当中删除表,不会创建新的表。
3、表记录的修改语句
A.常见修改语句的操作(带有条件)
		UPDATE 表名称 SET 列名1=值1,列名2=值2 [WHERE 条件];
	
B.不常见的修改语句操作(修改所有的情况)
		UPDATE 表名称 SET 列名1=值1,列名2=值2;

第五章 MySQL的DQL

1、基础查询
A.多个字段的查询操作
	a.通用写法
		SELECT * FROM 表名称;
	b.指定列写法
		SELECT 列名1,列名2,列名3  FROM 表名称;

B.去掉重复的查询操作
		SELECT DISTINCT 列名 FROM 表名称;

C.四则运算计算列的操作
		SELECT IFNULL (列名1,0) + 列名2  FROM 表名称;

D.给查询结果起别名的操作
		 SELECT 列名1 AS 别名1,列名2 别名2 FROM 表名称; 
2、条件查询 WHERE格式
A.与 && (理解)
	a.写法1:  SELECT * FROM 表名称 WHERE age>20 && age<30;
	b.写法2:  SELECT * FROM 表名称 WHERE age>20 AND age<30;    
	c.写法3:  SELECT * FROM 表名称 WHERE age BETWEEN 20 AND 30;
	
B.或 || (理解)
	a.写法1:  SELECT * FROM 表名称 WHERE age=20 || age=30;
	b.写法2:  SELECT * FROM 表名称 WHERE age=20 OR age=30;
	c.写法3:  SELECT * FROM 表名称 WHERE age IN(20,30);   -- 年龄是20或者30的才可以
	
C.非 !  (理解)
	a.写法1:  SELECT * FROM 表名称 WHERE address IS NULL;  -- 居住地是Null
	b.写法2:  SELECT * FROM 表名称 WHERE address IS NOT NULL;  -- 居住地不是Null
3、模糊查询 WHERE LIKE
A.两个占位符
	a. '_' 下划线,表示1个字符
	b. '%' 百分号,表示0个或多个字符
	
B.案例
	a. 查询姓'武'
		SELECT * FROM hero WHERE name LIKE '武%'; 
	b. 查询姓'武'只有两个字
		SELECT * FROM hero WHERE name LIKE '武_';
	c. 查询第二个字是'文'的
		SELECT * FROM hero WHERE name LIKE '_文%';
	d. 查询只要带有'李'字的
		SELECT * FROM hero WHERE name LIKE '%李%';
代码基本格式:
1.CREATE DATABASE 名字;									 -- 1.创建
2.ALTER DATABASE 名字 CHARACTER SET gbk;					  -- 2.转换中文可以用
3.CREATE TABLE 名字(										-- 3.写表格数据
id INT,
NAME VARCHAR(20),
age INT,
chengji VARBINARY(100) --这里不需要加‘,’号
);
4.INSERT INTO student2(id,NAME,age,chengji) VALUES			-- 4.填表中数据
(1,'徐姜',18,88),
(2,'徐磊',19,90),(3,'张三',22,70);
5.SELECT * FROM student2;								  -- 5.打印数据
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值