首页 > 数据库 >你还不会用数据库吗?一篇文章带你入门!!!#sql #Mysql

你还不会用数据库吗?一篇文章带你入门!!!#sql #Mysql

时间:2024-11-01 10:44:53浏览次数:7  
标签:入门 数据库 Mysql 数据类型 表名 sql MySQL TABLE 字段名

目录

前言

数据库是计算机学科最不可或缺的一部分,那么在学习数据库之前,小编也在这里分享关于我学习数据库这门学科简单入门的经验,多多指教。

一段话简单理解什么是“数据”,“数据库”,“SQL”,“Mysql”

数据,数据库,sql,mysql是学习数据库最常见的几个名词,那么能不能用一个简单的方式去理解呢?

什么是数据?

数据就像是你在生活中收集的各种“小纸条”。这些小纸条上可能写着你的生日、电话号码、你最喜欢的食物,或者是你上次旅行的照片。这些“小纸条”就是数据,它们记录了关于你、你的生活和你的兴趣的信息。

什么是数据库?
数据库就像是一个超级大的“小纸条收纳盒”。这个收纳盒不仅足够大,能够装下你所有的“小纸条”,而且它还很聪明,能够帮你快速找到你需要的那一张。比如,你想找到你上次旅行的照片,数据库就会像一个超级高效的秘书一样,迅速帮你定位到那张照片。

什么是SQL?
SQL,全称是Structured Query Language(结构化查询语言),它就像是你和数据库之间的“秘密语言”。当你想要从数据库中获取某些信息时,你不能直接说:“给我那张关于旅行的照片。”因为数据库听不懂你的话。所以,你需要用SQL这种特殊的语言来告诉数据库:“请帮我找到所有关于旅行的照片。”数据库就会回应:“好的,我找到了,请看这里。”

什么是MySQL?
MySQL就像是数据库界的一个“超级英雄”。它不仅拥有强大的能力,能够存储和管理大量的数据,而且它还非常灵活和可靠。就像超级英雄能够应对各种复杂的挑战一样,MySQL也能够处理各种复杂的数据查询和管理任务。最重要的是,MySQL还是开源的,这意味着你可以像定制自己的超级英雄装备一样,根据自己的需求来定制它。

一、准备工作

首先win+R输入cmd回车
命令行输入mysql -u root -p 来查看本机mysql数据库服务器
命令行输入mysql -r root -p
显示无结果,既需要下载mysql安装包
通过百度网盘分享的文件:数据库分享
链接

MySQL的安装

下载链接的MySQL安装包,双击运行

点击Custom安装至非系统盘(最好)
这一步用于安装软件至非系统盘
按操作步骤点击
按顺序点击
安装至D盘

切记路径不要有中文!!!

后续一直点击继续直到这一步

其实这一步MySQL提供了3种可以选择的应用类型(如图),这3种类型的区别:
Development Computer:开发机,该类型应用将会使用最小数量的内存。
Server Computer:服务器,该类型应用将会使用中等大小的内存。
Dedicated Computer:专用服务器,该类型应用将使用当前可用的最大内存。
在这里我们选择“Development Computer”就足够我们使用了
在这里插入图片描述
在这里插入图片描述
这里我们选择第二种的“传统加密方法”(重要)
设置密码
设置密码

后续一路点击继续直到这一步finish即为下载完成。

二、打开MySQL

这里给出三种打开MySQL的方法

方法一:通过下载的MySQL软件直接打开


安装完软件在开始栏寻找即可
在这里插入图片描述
输入密码(你刚设置的)
在这里插入图片描述
成功

方法二:命令提示符打开(cmd)

win+R:cmd回车
输入:mtsql -u root -p回车
输入密码
在这里插入图片描述
成功

若出现以下情况
在这里插入图片描述
就是环境变量没有设置好
只需要找到刚刚下载mysql的文件夹,并且找到bin文件的目录然后复制添加到系统环境变量的path路径中即可
如图所示(我的路径是D:\shujuku\bin)
在这里插入图片描述
在这里插入图片描述
新建->路径->上移->确定

然后重新试一下
在这里插入图片描述
完成!若命令提示符输入MySQL显示错误,请点击

方法三:连接指定地址数据库服务端

这里用上述两种的命令提示符和MySQL都可以哦
在这里插入图片描述
这里的命令为mysql -h 127.0.0.1 -u root -p
其中-h为本机,127.0.0.1为本机ip,-u为用户,root为高级用户,-p为密码。

方法四:直接打开(前提已经建立过数据库)

在这里插入图片描述
命令为mysql -D(数据库名) -h (主机名或ip) -u root -p

三、MySQL的一些简单语句(正式实战!)

这里让我们先键入一个命令

show databases;

在这里插入图片描述
这里忽略“hqyj”此库(因为我先建过库懒得删)
那么会出现mysql自带的四个数据库

1、创建数据库

create database 库名;

在这里插入图片描述
这时我们show databases;试一下即可查看到新建的数据库。

2、打开数据库

use  库名

在这里插入图片描述

3、查看当前打开的数据库

select database();

在这里插入图片描述
若没有库打开则返回null

4、查看当前的数据库信息

 status
 (或者)
  \s

在这里插入图片描述
此处可以看见数据库字符集(简单理解为密码本,如通用的utf-8以及gbk),我们还可以修改字符集

  alter database csdn character set gbk;

5 、查看服务器版本

select version();

在这里插入图片描述

6、退出数据库

 \q(通用)
 或者
 exit;
 quit;

7、删除数据库(慎用,大家尽量要作不删库跑路的好程序员哦)

drop database 库名;

四、表

学习表之前,我们需要知道:
1、表的构成:
表是数据库的基本存储单元,由行和列组成。
行代表记录,列代表字段。
2、表的设计原则:
数据一致性、完整性和持久性是表设计的重要原则。
良好的表设计可以提高数据的存储效率和查询性能。

1、查看数据表

show tables;(前提是先use 进库且创建了表)

2、创建数据表

语法格式:
CREATE TABLE table_name(
column1(字段名1) datatype(数据类型)[contrai(约束条件)],
column2(字段名2) datatype(数据类型)[contrai  (约束条件)],
.....
columnn(字段名n) datatype(数据类型)[contrai(约束条件)],                   PRIMARY KEY(one or more columns)
)[character set 字符集];
字符集不设置的话是默认设置

补充说明
字段名后面一定要跟数据类型
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
这里只需要记几种常用的即可。

约束条件

在这里插入图片描述
例:
创建学生(student)表
id字段(不为负的整数,自增长,主键,不为空)
name字段(数据类型为varchar(20),默认值为空字符串)
age字段(数据类型为tinyint,不为负数;默认值为0)
height字段(数据类型为decimal(5,2);默认值为0.0)
gender字段(数据类型为enum,其中包括男,女,保密)
在这里插入图片描述

CREATE TABLE student (  
    id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY NOT NULL,  
    name VARCHAR(20) DEFAULT '',  
    age TINYINT UNSIGNED DEFAULT 0,  
    height DECIMAL(5,2) DEFAULT 0.0,  
    gender ENUM('男', '女', '保密')  
);

注意default后要空一格,不然报错(错n遍了才找到错误…)

3、查看表的创建语句

show create table 表名;

在这里插入图片描述

4、查看表的结构

desc  表名;

在这里插入图片描述

5、修改表名

RENAME TABLE 原表名 TO 新表名;
【注意:有时出错是因为没有获得修改权限,可以使用下面修改方式:
ALTER TABLE 原表名 RENAME  TO 新表名; 】

在这里插入图片描述
在这里插入图片描述

6、增加数据表字段

注:后面增加字段的操作都要先alter表的权限且字段的类型不能忘记

ALTER TABLE 表名 
ADD 列名 类型 [约束条件];

在这里插入图片描述
添加的字段不要忘记加上数据类型哦

7、修改数据表字段

ALTER TABLE 表名
CHANGE 原字段名 新字段名  类型  [约束];

注意!不要将修改字段的change与修改表名的rename混淆了(小编就犯过错)QAQ

``
大家可以看这个表结构修改前和修改后的变化

注意:如果原字段名和新字段名一样的,表示不改字段名,只改字段的类型和约束,此时change和modify作用一样(就是覆盖)

ALTER TABLE 表名
MODIFY 列名 类型 [约束];

---------------------------------------------------------------------------------------------------

MYSQL数据库中的表的结构是可以修改的,数据库中的某一字段移动至表的首列或者是另一字段之后的方法:
移动某字段之后的语句为:ALTER TABLE <表名> MODIFY <需要移动的字段名> <字段类型> AFTER <参考的字段名>; 并回车。
将字段移动至首列则输入:ALTER TABLE <表名> MODIFY <需要移动的字段名> <字段类型> FIRST;  并回车

在这里插入图片描述
此处修改了字段数据类型并且改变了位置

8、删除数据表字段

ALTER TABLE 表名 
DROP 字段名;

在这里插入图片描述

9、删除表与清空表

drop table 表名;           删除

truncate table 表名;       清空

在这里插入图片描述
上图为我创建了一个新表“student_new”之后对其进行清空与删除,我们能发现,清空并不会改变表的结构,只会清除数据(目前没有涉及)

五、软件Navicat for MySQL的下载与使用

1、软件介绍

Navicat for MySQL是一款专为统一管理和开发MySQL及MariaDB数据库而设计的综合软件包。好用就完事了(但是要会员差评)
通过百度网盘分享的文件:数据库分享下载链接戳这里

2、使用

下载完了双击打开
在这里插入图片描述
连接名为“localhost”即为本地
在这里插入图片描述
然后连接数据库即可与本地进行交互,新建数据库、表格,字段等等

既可以可视化的直接操作,也可以新建查询使用mysql语句编写
在这里插入图片描述
在这里插入图片描述

六、小结(未完待续)

数据库的使用步骤:

1、创建一个数据库—>选择库
2、设计表
3、表中有哪些字段
4、字段用什么数据类型表示
5、字段需要添加什么约束条件

6、多张表需要考虑表之间的关系-------外键—》主键
7、插入数据
8、数据的增删改查

标签:入门,数据库,Mysql,数据类型,表名,sql,MySQL,TABLE,字段名
From: https://blog.csdn.net/bananapai/article/details/143308150

相关文章

  • mysql数据库新增和修改字段
      8.0版本之上--修改旧字段名为新字段名ALTERTABLEbd_material_circuit_breakerRENAMECOLUMNrelease_typeTOrelease_type_zh;ALTERTABLEbd_material_circuit_breakerRENAMECOLUMNcontrol_typeTOcontrol_type_zh;ALTERTABLEbd_material_circ......
  • C++之OpenCV入门到提高003:矩阵的掩膜(Mask)处理
    一、介绍今天是这个系列《C++之Opencv入门到提高》得第三篇文章。今天这篇文章也不难,主要介绍如何使用Opencv对图像进行掩膜处理,提高图像的对比度。在这个过程中,我们可以学到如何获取图像指针、如何处理像素值越界等问题。我们一步一个脚印的走,收获就会越来越多。虽然......
  • 手动部署MySQL数据库
    步骤一:安装MySQL运行以下命令,更新YUM源。yum-yupdate如果您想下载其他版本的MySQL,请参见MySQL官方文档。sudoyuminstallmysql-server-y运行以下命令,查看MySQL版本号。mysql-V返回结果如下,表示MySQL安装成功。mysqlVer8.0.33forLinuxonx86_64(MySQL......
  • 通过Navicat for MySQL恢复数据库的步骤
    启动NavicatforMySQL在本地主机上启动NavicatforMySQL应用程序。创建新的MySQL连接在菜单栏中选择 连接 > MySQL。在弹出的 MySQL-新建连接 对话框中,输入云虚拟主机的数据库信息,包括主机地址、端口、用户名和密码。单击 连接 按钮以建立连接。打开数据......
  • [SWPUCTF 2021 新生赛]easy_sql的write up
    开启NSSCTF靶场,在浏览器中访问链接,看到让我们输入点什么还有标签页名字提示:"参数是wllm"直接/?wllm=1访问一下:这里就直接用sqlmap直接爆破了:查看数据库有哪些:pythonsqlmap.py-u"http://node4.anna.nssctf.cn:28961/?wllm=1"--dbs看到test_db就是这个数据库,其......
  • 零基础Linux入门教程:系统目录结构&文件管理命令
    Linux文件管理命令与系统目录结构1.重要文件目录根目录/(根目录)系统目录/bin:存放基本命令/sbin:存放系统管理命令/etc:系统配置文件/dev:设备文件/proc:进程和内核信息/var:易变文件,如日志/lib//lib64:共享库文件用户目录/home:用户家目录/root:......
  • [SUCTF 2019]EasySQL
    题目链接:https://buuoj.cn/challenges#[SUCTF2019]EasySQL打开环境后,如下所示。尝试输入字符:1。尝试输入字符:0后,发现没有输出结果。尝试输入字符串"aaa"、"bbb"等后,发现都跟输入0的结果一致,而输入123、456等非0的内容,都与输入1一致,这里可以猜测(实际上需要比较......
  • [极客大挑战 2019]EasySQL
    题目链接:https://buuoj.cn/challenges#[极客大挑战2019]EasySQL。打开后,页面如下所示:可以看到,只有一个登录框,没有其他的内容,一般这种情况,应当先考虑SQL注入。在密码框中直接插入万能密码:'or1=1;#。成功获取flag。知其然,知其所以然。一些常见的登陆功能的后端实现......
  • 【深度学习】从公式推导来深入理解误差反向传播算法2:《深度学习入门基于Python的理论
    《深度学习入门基于Python的理论与实现》中实现了2层全连接神经网络的代码对MNIST数据集的28x28像素0-9手写数字灰度图像进行分类,本文将重点对代码中的two_layer_net类的gradient函数中的误差反向传播的代码进行公式推导验证。验证小批量数据的交叉熵损失函数对第2层权重......
  • 使用EF6连接Sqlite
    1、前置条件安装以下包EntityFrameworkSystem.Data.Sqlite以上包会自动生成或填充Config文件App.Config配置如下<?xmlversion="1.0"encoding="utf-8"?><configuration><configSections><!--FormoreinformationonEntityFrameworkconfig......