数据库概述 数据库入门

数据库概述

存放数据的方式

  • 1.存在内存中
  • 2.保存在普通文件中
  • 3.保存在数据库中

什么是数据库

存储数据的仓库,用户可以对数据库中的数据进行增加,修改,删除及查询操作(sql语言)。

数据库的优点-

数据库是按照特定的格式将数据存储在文件中,通过SQL语 句可以方 便/*-的对大量数据进行增、删、改、查操作,数据库是对大量的信息进行管理的高效的解决方案。-

数据库管理系统(DBMS)

数据库管理系统(DataBase Management System,DBMS):指一种操作和管理数据库的大型软件,用于创建、使用和维护数据库,对数据库进行统一管理和控制,以保证数据库的安全性和完整性。用户通过数据库管理系 统访问数据库中表内的数据

数据库管理系统、数据库和表的关系

数据库管理系统可以管理多个数据库,每个数据库中可以有多张数据库表。

常见数据库

  • MYSQL :开源免费的数据库,小型的数据库.已经被Oracle收购了.MySQL6.x版本也开始收费。
  • Oracle:收费的大型数据库,Oracle公司的产品。Oracle收购SUN公司,收购MYSQL。
  • DB2:IBM公司的数据库产品,收费的。常应用在银行系统中.
  • SQLServer:MicroSoft 公司收费的中型的数据库。C#、.net等语言常使用。
  • SyBase:已经淡出历史舞台。提供了一个非常专业数据建模的工具PowerDesigner。
  • SQLite: 嵌入式的小型数据库,应用在手机端。

安装MySql数据库

卸载: 使用软件管理工具,手动删除 

    细节:不止要删除数据库,还要将保存数据的文件给手动删除了,如果不删除无法正常安装新的数据库

启动和关闭mysql

细节注意:mysql的服务必须是启动状态下才是使用

  • 启动和关闭mysql:

    • 方式1:操作windows服务
    • 方式2:dos命令中操作mysql
      • net start mysql 开启mysql服务
      • net stop mysql 停止mysql服务

登录和退出mysql数据库

第一种:

  • mysql -u用户名 -p密码

    例如:mysql -uroot -proot

第二种

  • mysql -u用户名 -p
  • 密码

退出

  • exit
  • quit
  • ctrl + c

sql语句

简介

概述

结构化查询语言(Structured Query Language)简称SQL,SQL语句就是对数据库进行操作的一种语言。

   数据库是不认识JAVA语言的,但是我们同样要与数据库交互,这时就需要使用到数据库认识的语言---SQL语言

作用:

通过Sql语言可以对数据库管理系统中的数据库,表,表中的数据进行增删改查(crud)。

sql分类和语法

分类:(面试题)

1.DDL(Data Definition Language)数据定义语言

 用来操作数据库和表

关键字:create,drop,alter等

2.DML(Data Manipulation Language)数据操作语言

用来对数据库中表的数据进行增删改

关键字:insert,delete, update等

3.DQL(Data Query Language)数据查询语言

用来对数据库中表的数据进行查询

关键字:select,from,where等

4.DCL(Data Control Language)数据控制语言(了解)

用来定义数据库的访问权限和安全级别,及创建用户。

关键字:grant, revoke等

5.TCL(Transaction Control Language) 事务控制语言

用于控制数据库的事务操作

关键字: commit,rollback等

sql语法

1 SQL语句可以单行或多行书写,以分号结尾

2 可使用空格和缩进来增强语句的可读性

3 MySQL数据库的SQL语句不区分大小写

4 可以使用-- 或# 或/**/的方式完成注释

DDL(数据定义语言)

操作数据库

1-创建数据库

创建数据库 (掌握)

		create database 数据库名;

						默认字符集是安装mysql时选择的字符集 (utf8)

判断是否存在并创建数据库(了解)

		create database if not exists 数据库名;

创建数据库并指定字符集(了解)

		create database 数据库名 character set 字符集;

2-查询数据库

查询所有数据库

	show databases;

查看某个数据库的定义信息

	 show create database 数据库名称;

3-修改数据库(了解)

修改数据库字符集格式

	alter database 数据库名  character set 字符集;

4-删除数据库

drop database 数据库名;

5-数据库的其他操作

查看当前使用的数据库

	select database();

切换数据库

	use 数据库;

操作表

条件:首先要进入到指定的数据库中

创建表

create table 表名(
			字段名1 字段类型1[长度],
			字段名2 字段类型2[长度]
			.....
		)
ps:只有字符串类型需要手动加长度,其它类型都不需要加长度(默认有)

-- 需求: 创建一个学生表(id name sex)

数据类型:
java的数据类型      mysql数据库的数据类型
int		    			int
float		    		float
double		    		double

char/string	    		varchar
date		    		date      yyyy-MM-dd
		    			time      HH:MM:SS
		    			datetime  YYYY-MM-DD HH:MM:SS

查看表

查看某个数据库中的所有表:  show tables;

查看表结构:  desc 表名称;

查询建表语句: show create table 表名;

快速创建表结构: create table 新表名 like 旧表名;

修改表结构

添加表列 :   alter table 表名 add 列名 类型;

删除表列 : alter table 表名 drop 列名;

修改列名 : alter table 表名 change 旧名称 新名称 类型;

修改列类型  :   alter table 表名 modify 列名 新类型

修改表名称 : rename table 旧表名 to 新表名;

删除表

直接删除表: drop table 表名;

判断表是否存在并删除表(了解):   drop table if exists 表名;

DML(数据操作语言)–重点

插入记录

添加全部字段

方式一:insert into 表名 (字段名1, 字段名2, 字段名3…) values (值1, 值2, 值3);    

方式二:insert into 表名 values (值1, 值2, 值3);

添加部分字段

insert into 表名 (字段名1, 字段名2, ...) values(值1, 值2, ...);

注意事项

值与字段必须对应,个数相同,类型相同

值的数据大小必须在字段的长度范围内

除了数值类型外,其它的字段类型的值必须使用引号引起。

如果要插入空值,可以不写字段,或者插入null

DOS命令窗口操作数据乱码问题的解决(了解)

  • 错误说明:

    当我们使用DOS命令行进行SQL语句操作如有有中文会出现乱码,导致SQL执行失败

  • 错误原因:

    因为MySQL的设置编码是utf8,而系统的DOS命令行编码是gbk,编码不一致导致的乱码

  • 解决方案:

    设置mysql编码方式

    • 快捷设置(临时)

      set names gbk;

    • 修改配置文件(永久)

      1 my.ini文件,在[mysql]设置字符集:GBK

      2 重启mysql服务

蠕虫复制

在已有的数据基础之上,将原来的数据进行复制,插入到对应的表中

前提:表结构得一致

语法格式: insert into 新表 select * from 旧表;

修改记录

不带条件修改数据 : update 表名 set 字段名 = 值,字段名 = 值 ;  全改

根据条件修改数据 : update 表名 set 字段名 = 值,字段名 = 值 where 字段名=值; 按条件改

删除记录

不带条件删除数据: delete from 表名;   全删

根据条件删除数据: delete from 表名 where 字段名=值; 按条件删

truncate删除表记录: truncate 【table】 表名;  全删

truncate和delete的区别:(面试题)

	delete是将表中的数据一条一条删除

	truncate是将整个表摧毁,重新创建一个新的表,新的表结构和原来表结构一模一样

        delete删除的数据可以还原  truncate的数据无法还原

DQL(数据查询语言)

简单查询:

查询所有列:  select * from 表名;

查询指定列:  select 字段名1,字段名2... from 表名; 

别名查询:  select 字段名1 as 别名, 字段名2 as 别名... from 表名 as 表别名; 

清除重复值:  select distinct 字段名 from 表名;

查询结果参与运算: select 列名1 + 固定值 from 表名;(参数运算的字段必须为数值型)

1 查询所有的商品
2 查询商品名称和商品价格
3 使用别名查询商品:as  as可以省略
4 去重查询 查询去重之后的价格 distinct
5 运算查询 查询价格,将价格的增加100

总结

1 数据库的概念
	   用来存储数据的仓库,仓库需要DBMS系统创建,在硬盘上,所有数据也在硬盘上
	   要想操作仓库中的数据,必须得使用sql语句
2 DBMS系统的安装
	    mysql    见参考大纲  细节:卸载
	    oracle
	    db2
	    sqlserver
3 sql语句操作数据库
	     1 使用sql语句告诉dbms系统做数据库的crud      ddl分类
	     2 使用sql语句告诉dbms系统做数据库表的crud    ddl分类
	     3 使用sql语句告诉dbms系统做数据库表上数据的增删改 dml分类
	     4 使用sql语句告诉dbms系统做数据库表上数据的查     dql分类
	    							    简单查询

原文地址:https://www.cnblogs.com/ai2050/p/10733112.html

时间: 2024-11-07 13:09:02

数据库概述 数据库入门的相关文章

MongoDB入门(一)——数据库概述

1.数据库概述1.1.引言 以上图片是什么?答案:车库 车库用来做什么?答案:停放车辆,换句话说:存储汽车. 数据库用来做什么?答案:存储数据. 思考1:老师让你汇总下本周迟到人数,你如何记录?数据量比较小,用一个excel表格就存放迟到人的名单. 思考2:2017年四川高考成绩如何存储?数据量大了,显然excel不能满足,就需要存储在数据库里面.不仅如此,很多企业都有自己的数据需要管理,都需要使用数据库.1.2.什么是数据库数据库(Database)是按照数据结构来组织.存储和管理数据的仓库,

现代Java服务端开发核心技术之分布式数据库中间件MyCAT入门

现代Java服务端开发核心技术之分布式数据库中间件MyCAT入门 现代Java服务端开发核心技术 MyCAT系统环境搭建 如下列表展示了搭建MyCAT运行时环境所需要的软件及其版本说明. 软件名称 软件版本 os centos7.5 JDK JDK1.8u191 MySQL MySQL5.7 Mycat Mycat1.6.5 Navicat Navicat12.08 在非集群的环境下,MyCAT仅仅依赖JDK就可以良好的运行在Windows,Linux,macOS等操作系统之上. CentOS7

现代Java服务端开发核心技术之数据库中间件MyCAT入门

现代Java服务端开发核心技术之数据库中间件MyCAT入门 现代Java服务端开发核心技术 MyCAT系统环境搭建 如下列表展示了搭建MyCAT运行时环境所需要的软件及其版本说明. 软件名称 软件版本 os centos7.5 JDK JDK1.8u191 MySQL MySQL5.7 Mycat Mycat1.6.5 Navicat Navicat12.08 SecureCRT Linux客户端 在非集群的环境下,MyCAT仅仅依赖JDK就可以良好的运行在Windows,Linux,macOS

1.Oracle数据库概述

Oracle数据库概述 1.1Oracle结构图 1.1如何访问数据库 a.本机直接通过sock(套接字)方式访问  IPC UDP协议 ,不需要网络 b.通过tcp建立连接到oracle服务器 1.2访问远程数据库 a.配置tnsnames.ora文件如: ORCL = (DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = dbserver)(PORT = 1521)) (CONNECT_DATA = (SERVER = DEDICATED) (S

Python与数据库[0] -> 数据库概述

数据库概述 / Database Overview 1 关于SQL / About SQL 构化查询语言(Structured Query Language)简称SQL,是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询.更新和管理关系数据库系统:同时也是数据库脚本文件的扩展名. 结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作.它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统, 可以使

分布式数据库概述

声明:本文内容来自于阿里云大学课堂 https://edu.aliyun.com/lesson_37_645?spm=5176.10731542.0.0.ClIYfh#_645 传统数据库回顾 分布式数据库概述 分布式数据库的特点 分布式数据库系统定义 分布式系统的特性 透明性 入口统一 分布式系统的优点 灵活性更高 成本优势 可靠性.可用性更高 局部响应速度快 可扩展性好 分布式系统的缺点 通信开销大 跨节点逻辑实现复杂 数据保密性弱 分布式数据库系统的分类及体系架构 同质同构数据库 体系架构

数据库概述及基本操作

一 概念 1 数据库诞生和发展历史 数据库: 按照数据结构来组织,存储,管理数据的仓库 诞生计算机的发明是为了做科学计算的,而科学计算需要大量的数据输入和输出.早期是通过打孔机和灯泡来表示数据的输入和输出.后来,数据可以存储在磁带上,顺序的读,写入磁带1956年IBM发明了磁盘驱动器,其支持了随机访问,不再是之前的顺序访问.随着信息时代的到来,有了硬件存储技术的发展,有大量的数据需要存储和管理,数据库管理系统DBMS就诞生了.不管使用什么存储介质,数据库的数据模型才是其核心和基础. 2 早期数据

java架构之数据库MongoDB4.0入门到实践掌握NoSQL数据库企业主流解决方案

java架构之数据库MongoDB4.0入门到实践掌握NoSQL数据库企业主流解决方案简介: MongoDB 是一个基于分布式文件存储的数据库.由 C++ 语言编写.旨在为 WEB 应用提供可扩展的高性能数据存储解决方案. MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的. 1.下载 从官网下载压缩包, 官网地址:https://www.mongodb.com/download-center/v2/community. 下载命令: ?

数据库-第一章 绪论-1.1 数据库概述

数据库概述: 数据库的4个基本概念: 数据(Data): 定义:描述事物的符号记录,是数据库中存储的基本对象. 特点: 数据与其语义是不可分的 数据是有结构的:记录是计算机存储数据的一种格式或一种方法 数据的形式不能完全表达其内容 种类:数字.文字.图形.音频.视频.学生的档案记录.订单情况等等. 数据库(DataBase,DB): 定义:是长期存储在计算机内.有组织的.可共享的大量数据的集合. 特点: 数据按一定的数据模型组织.描述和存储 可为各种用户共享.冗余度较小.易扩展 数据独立性较高