数据库入门基础[通俗易懂]

数据库入门基础[通俗易懂]一、什么是数据库很多人不明白,存储数据用文件就可以了,为什么还要弄个数据库?首先文件保存数据有以下几个缺点:·文件的安全性问题·文件不利于数据查询和管理·文件不利于存储海量数据·文件在程序中控制不方便为了解决上述问题,专家们设计出更加利于管理数据的软件——数据库,它能更有效的管理数据。数据库可以提供远程服务,即通过远程连接来使用数据库,因此也称为数据库服务器。数据库存储介质…

大家好,又见面了,我是你们的朋友全栈君。

一、什么是数据
很多人不明白,存储数据用文件就可以了,为什么还要弄个数据库?

首先文件保存数据有以下几个缺点:
· 文件的安全性问题
· 文件不利于数据查询和管理
· 文件不利于存储海量数据
· 文件在程序中控制不方便

为了解决上述问题,专家们设计出更加利于管理数据的软件——数据库,它能更有效的管理数据。数据库可以提供远程服务,即通过远程连接来使用数据库,因此也称为数据库服务器。

数据库存储介质:
磁盘
内存

1、数据库< == > 用户:
库(database) < == >IDEA 的一个工程
表(table) <== > 类
行(row)
列(column)<==>一个对象 一个属性

2、数据库<==>文件系统:
库< == >文件夹
表< == >一组文件

二、数据库的操作

MySQL 即SQL语言,分为DDL,DML,DCL;其中DML是最重要的。

1、SQL语句中应当注意:
i)关键字不区分大小写
ii)每条语句必须用;结尾,还可以用\G结尾
iii)对于引号的应用:不区分‘’和“”;反引号(键盘上1前的)用在库名,表名,字段名(可以不写)。

2、关于库的命令

1、建库    CREATE DATABASE`库名`;
2SHOW DATABASE;  显示当前数据库
3USE``库名`;使用数据库
4DROP DATABASE 库名;删除数据库
5SELECT DATABASE();

3、关于表的操作(必须在USE库之后)

1、建表    CREATE TABLE`表名`;(
	...列的定义(column)
2SHOW TABLE;
3DROP TABLE`表名`4SHOW CREATE TABLE `表名`5DESC `表名`

三、数据库基本操作框架

用cmd登数据库输入mysql -uroot -p
登上去之后
先SELECT DATABASE(); 看是否已经设置过默认库了,
再SHOW TABLES; 看是否表建成功
SELECT * FROM 表; 看数据是否插入成功。

四、表的基本数据类型

当然这并不是全部,以下列出来的都是最基本,最常用的。

1. 数值类型
		1. 整型
			INT	/ BIGINT
		2. 浮点型
			FLOAT/DOUBLE 有精度损失
			DECIMAL/NUMERIC 无精度损失
	2. 字符串类型(二进制的/文本的)
		CHAR(10)
		VARCHAR(10)		TEXT		文本的
		视频/音频/图片	BLOB
	3. 时间相关的
		DATE--TIME		时:分:秒
		DATETIME--日 时:分:秒
		TIMESTAMP	1970-2038

五、实战演练

了解了数据库的基本入门知识,接下来跟着盖盖实战演练一下叭。
相信很多同学都做过课设,用C或者JAVA写过图书管理系统;
那么在这里,我们也先来用MySQL来大致写一个简单的图书管理系统,后期细化请看下一篇博客。

图书管理系统(bms)
CREATE DATABASE bms;//建好数据库
USE bms;//使用数据库

CREATE TABLE books (//建表,表名为books
	name VARCHAR(100),
	author VARCHAR(100),
	price INT,
	category VARCHAR(20),
	is_borrowed TINYINT
);

上架:
INSERT INTO books 
	(name, author, price, category, is_borrowed)
	VALUES
	("三国演义", "罗贯中", 8800, "古典名著", 0),
	("三体", "刘慈欣", 6600, "科幻小说", 0),
	("西游记", "吴承恩", 1000, "古典名著", 0);
	
查看已有书籍:
SELECT * FROM books;

借书:
UPDATE books SET is_borrowed = 1 WHERE name = "西游记";

下架:
DELETE FROM books WHERE name = "三体";

来看效果:
打开cmd,输入mysql -uroot -p
当出现红圈圈出来的字样就表示可以使用了。
mysql -uroot -p
建库,用表,建表就不说了
来看上架,插入图书:
在这里插入图片描述
查看已有书籍:
在这里插入图片描述
剩下的借书和下架,同学们自己试就好了。


下一篇:MySQL表的增删查改(基本篇)
在这里插入图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/151672.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 卷王指南,大学计算机专业,面临分专业,计科,软工,大数据,物联网,网络工程,该选什么?

    卷王指南,大学计算机专业,面临分专业,计科,软工,大数据,物联网,网络工程,该选什么?同学们好,我是王老师——二哥呀!(笑喷)好巧!前几天有同学私信问过我这个问题:大学计算机专业,面临分专业,计科,软工,大数据,物联网,网络工程,该选什么?再加上高考结束后填报志愿,想必CSDN上有很多同学挺迷茫的。我就来(主观地)一一分析下,从后往前。网络工程,听起来还算是蛮高端大气上档次的,大家可以去百度百科或者维基百科看一下这个专业的解释。我的理解是网络工程是将计算机以及其他设备串联完成网络通信,以及智能化监控的学科。主要的分支有:路由交换、网络安全、无线网络等等。我之前在的一个公司(十年

    2022年6月9日
    44
  • PyCharm激活码永久有效PyCharm2018.2.6激活码教程-持续更新,一步到位「建议收藏」

    PyCharm激活码永久有效PyCharm2018.2.6激活码教程-持续更新,一步到位「建议收藏」PyCharm激活码永久有效2018.2.6激活码教程-Windows版永久激活-持续更新,Idea激活码2018.2.6成功激活

    2022年6月19日
    23
  • Java8 ConcurrentHashMap详解

    Java8 ConcurrentHashMap详解Java8ConcurrentHashMapJava7中实现的ConcurrentHashMap说实话还是比较复杂的,Java8对ConcurrentHashMap进行了比较大的改动。建议读者可以参考Java8中HashMap相对于Java7HashMap的改动,对于ConcurrentHashMap,Java8也引入了红黑树。说实话,Java8Concurrent

    2022年6月24日
    21
  • 通俗、有逻辑的写一篇说下Xgboost的原理,供讨论参考

    通俗、有逻辑的写一篇说下Xgboost的原理,供讨论参考初看Xgboost,翻了多篇博客发现关于xgboost原理的描述实在难以忍受,缺乏逻辑性,写一篇供讨论。——以下是抛砖引玉。观其大略,而后深入细节,一开始扎进公式反正我是觉得效率不高,还容易打消人的积极性。首先说下决策树决策树是啥?举个例子,有一堆人,我让你分出男女,你依靠头发长短将人群分为两拨,长发的为“女”,短发为“男”,你是不是依靠一个指标“头发长短”将人群进行了划分,你就形成了一个

    2022年5月7日
    45
  • java批量修改数据库数据_sql批量更新多条数据

    java批量修改数据库数据_sql批量更新多条数据批量更新mysql更新语句很简单,更新一条数据的某个字段,一般这样写:代码如下:UPDATEmytableSETmyfield=’value’WHEREother_field=’other_value’;如果更新同一字段为同一个值,mysql也很简单,修改下where即可:代码如下:UPDATEmytableSETmyfield=’value’WHEREother_…

    2025年6月10日
    3
  • https,httpClient 绕过证书验证的两种写法「建议收藏」

    https,httpClient 绕过证书验证的两种写法「建议收藏」https,httpClient 绕过证书验证的两种写法

    2022年4月23日
    296

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号