爬虫学习--11.MySQL数据库的基本操作(上)

MySQL数据库的基本操作

创建数据库

我们可以在登陆 MySQL 服务后,使用命令创建数据库,语法如下:

CREATE DATABASE 数据库名;

显示所有的数据库

show databases;

删除数据库

使用普通用户登陆 MySQL 服务器,你可能需要特定的权限来创建或者删除 MySQL 数据库,所以我们这边使用 root 用户登录,root 用户拥有最高权限。 在删除数据库过程中,务必要十分谨慎,因为在执行删除命令后,所有数据将会消失。 语法如下:

drop database 数据库名;

选择数据库

在你连接到 MySQL 数据库后,可能有多个可以操作的数据库,所以你需要选择你要操作的数据库。 可以使用SQL命令来选择指定的数据库:

use 数据库名;

MySQL数据库类型

MySQL 中定义数据字段的类型对你数据库的优化是非常重要的。 MySQL 支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。

数值类型

下面的表显示了需要的每个整数类型的存储和范围。

日期与时间类型

字符串类型

char(n) 和 varchar(n) 中括号中 n 代表字符的个数,并不代表字节个数,比如 CHAR(30) 就可以存储 30 个字符。

MySQL创建数据表

创建MySQL数据表需要以下信息:

  • 表名

  • 表字段

  • 定义每个表字段

语法:

CREATE TABLE table_name (column_name column_type);

 以下例子中我们将在数据库中创建数据表book_tbl:

CREATE TABLE book_tbl(
  book_id INT AUTO_INCREMENT,
  book_title VARCHAR(100) NOT NULL,
  book_author VARCHAR(40) NOT NULL,
  book_date DATE,
  PRIMARY KEY ( book_id )
)CHARSET=utf8;

实例解析:

  • 如果你希望字段为 NULL 可以设置字段的属性为 NOT NULL, 在操作数据库时如果输入该字段的数据为NULL ,就会报错。

  • AUTO_INCREMENT定义列为自增的属性,一般用于主键,数值会自动加1。

  • PRIMARY KEY关键字用于定义列为主键。 可以使用多列来定义主键,列间以逗号分隔。

  • CHARSET是设置编码。

成功创建表之后,可以通过命令行查看表结构:

show tables; //查看所有的表
desc book_tbl; //查看book_tbl的结构

MySQL删除数据表

MySQL中删除数据表是非常容易操作的,但是我们在进行删除表操作时要非常谨慎,因为执行删除命令后所有数据都会消失。

语法:以下为删除mysql数据表的通用语法

 DROP TABLE 表名;

执行成功后,可以尝试查看表,会发现查询不到。

MySQL插入数据

MySQL 表中使用 INSERT INTO 语句来插入数据。 语法:以下为向MySQL数据表插入数据通用的语法

INSERT INTO 表名 ( 字段1, 字段2,...字段N ) VALUE ( 值1, 值2,...值N );

如果数据是字符型,必须使用单引号或者双引号,如:"value"。 例如:

INSERT INTO book_tbl 
    (book_id, book_title, book_author, book_date)
    VALUE
    (1, 'python爬虫', 'xx', NOW());

 添加完成之后,可以通过查询语句进行查询:

 select * from book_tbl;

MySQL更新数据

如果我们需要修改或更新 MySQL 中的数据,我们可以使用 SQL UPDATE 命令来操作。 语法:以下是 UPDATE 命令修改 MySQL 数据表数据的通用 SQL 语法

UPDATE 表名 SET 字段1=new-value1, 字段2=new-value2 [WHERE 条件];

  • 可以同时更新一个或者多个字段

  • 你可以在 WHERE 子句中指定条件

实例: 修改表中book_id=1的book_author字段值

UPDATE book_tbl SET book_author='xx2' WHERE book_id=1;

MySQL删除数据

你可以使用 SQL 的 DELETE FROM 命令来删除 MySQL 数据表中的记录。 语法:以下是 SQL DELETE 语句从 MySQL 数据表中删除数据的通用语法

DELETE FROM 表名 [WHERE 条件];

  • 如果没有指定 WHERE 子句,MySQL 表中的所有记录将被删除。

  • 可以在 WHERE 子句中指定条件。

实例: 删除book_tbl表中book_id=1的记录:

DELETE FROM book_tbl WHERE book_id=1;

删除整个表:

DELETE FROM book_tbl;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/14373.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Docker部署Minio小记

概述 因为工作需要搭建对象存储的测试环境,故而使用Docker部署Minio,测试通过博文记录用以备忘 步骤 拉取镜像 docker pull minio/minio启动容器 docker run -p 9000:9000 -p 9090:9090 \--name minio \-d --restartalways \-e "MINIO_ACCESS_K…

内脏油脂是什么?如何减掉?

真想减的人,减胖是很容易的,但想要形体美又健康,还是得从减内脏油脂开始,那么,问题来了,什么是内脏油脂? 油脂它分部于身体的各个角落,四肢、腹部、腰、臀部、脸、脖子...等&#xf…

VUE3+TS+elementplus创建table,纯前端的table

一、前言 开始学习前端,直接从VUE3开始,从简单的创建表格开始。因为自己不是专业的程序员,编程主要是为了辅助自己的工作,提高工作效率,VUE的基础知识并不牢固,主要是为了快速上手,能够做出一些…

Kubernetes中 Requests 和 Limits 的初步理解

1 灵魂拷问 我们在使用 Kubernetes 时是否遇到以下情况: 你会不会部署负载的时候将 CPU requests/limits 设置得过低或过高?你会不会部署负载的时候将 内存 requests/limits 设置得过低或过高?又或者你根本不设置 requests/limits&#xff…

SVN创建项目分支

目录 背景调整目录结构常规目录结构当前现状目标 调整SVN目录调整目录结构创建项目分支 效果展示 背景 当前自己本地做项目的时候发现对SVN创建项目不规范,没有什么目录结构,趁着创建目录分支的契机,顺便调整下SVN服务器上的目录结构 调整目…

Stable Diffusion WebUI使用inpaint anything插件实现图片局部重绘

Inpaint Anything是一个强大的图像处理工具,它结合了SAM(Segment Anything Model)、图像修补模型(如LaMa)和AIGC模型(如Stable Diffusion)等先进技术,以实现图像中物体的移除、内容的填补以及场景的替换。无论是对图像中的任何元素进行编辑,还是对图像整体进行场景转换…

【Vue】Vue2使用ElementUI

目录 Element UI介绍特点Vue2使用Element安装引入ElementUI组件库 使用ElementUI用户注册列表展示其他 mint-ui介绍特点安装组件引入组件Mint-ui相关组件 Element UI 介绍 官网(基于 Vue 2.x ):https://element.eleme.cn/#/zh-CN ElementUI 是一个基于 Vue.js 的桌面端组件库…

Vue文本溢出如何自动换行

css新增 word-break: break-all; word-wrap: break-word;

【Linux系统】文件与基础IO

本篇博客整理了文件与文件系统、文件与IO的相关知识,借由库函数、系统调用、硬件之间的交互、操作系统管理文件的手段等,旨在让读者更深刻地理解“Linux下一切皆文件”。 【Tips】文件的基本认识 文件 内容 属性。文件在创建时就有基本属性&#xff0…

网易:一季度营收269亿元,连续7季研发强度超15%领跑行业

5月23日,网易发布2024年第一季度财报。财报显示,网易Q1营收269亿元,归属于公司股东的净利润85亿元(Non-GAAP),以连续7个季度超15%的研发投入强度领跑行业,首季业绩稳健启航。 一季度&#xff0…

JVM学习-动态链接和方法返回地址

动态链接–指向运行时常量池的方法引用 每一个栈帧内部包含一个指向运行时常量池中该栈帧所属方法的引用,包含这个引用的目的为了支持当前方法的代码能够实现动态链接(Dynamic Linking),如invokednamic指令。在Java源文件被编译到字节码文件中时&#x…

云平台概要设计文档 -大纲

1. 引言 1.1 目的 本文档的目的是提供一份详细的技术规范,用以指导开发团队实现云平台的建设和部署。该文档旨在确保所有开发人员和相关技术人员对系统的架构、组件、交互流程、数据处理及安全措施有深入的理解,从而能够高效、一致地开发出符合预期功能和性能要求的系统。 …

JAVA:浅谈JSON与JSON转换

可能有很多人,无论是前端还是后端,无论是JAVA还是Python还是C,都应该跟JSON这种数据格式打过交道,那么有没有仔细的想过,什么叫JSON? JSON是一种轻量级的数据交换格式。它基于JavaScript语言的对象表示法&a…

初识java——javaSE(6)抽象类与接口【求个关注!】

文章目录 前言一 抽象类1.1 抽象类的概念1.2 抽象类的语法:1.3 抽象类与普通类的区别: 二 接口2.1 接口的概念2.2 接口的语法2.2.1 接口的各个组成2.2.2 接口之间的继承 2.3 接口的实现接口不可以实例化对象 2.4 接口实现多态 三 Object类3.1 Object类是…

【shell】脚本练习题

案例: 1. for ping测试指网段的主机 网段由用户输入,例如用户输入192.168.2 ,则ping 192.168.2.10 --- 192.168.2.20 UP: /tmp/host_up.txt Down: /tmp/host_down.txt 2. 使用case实现成绩优良差的判断 1. for ping测试指…

Android异常及解决方式记录

异常1:Tmp detached view should be removed from RecyclerView before it can be recycled: 解决方法: recycleView.setItemAnimator(null);

第17讲:C语言内存函数

目录 1.memcpy使用和模拟实现2.memmove使用和模拟实现3.memset函数的使用4.memcmp函数的使用 1.memcpy使用和模拟实现 void * memcpy (void * destination, const void * source, size_t num);• 函数memcpy从source的位置开始向后复制num个字节的数据到destination指向的内存…

Python面试宝典:Python中与多线程编程相关的面试笔试题(1000加面试笔试题助你轻松捕获大厂Offer)

Python面试宝典:1000加python面试题助你轻松捕获大厂Offer【第二部分:Python高级特性:第十三章:并发编程:第一节:多线程编程】 第十三章:并发编程第一节:多线程编程使用`threading`模块面试题1面试题2面试题3面试题4面试题5面试题6面试题7面试题8面试题9面试题10更多面…

打豆豆game

好的,我将为您编写一个简单的“打豆豆”游戏。这个游戏的基本规则是这样的: 游戏将生成一个指定大小的网格,每个格子可能包含一个豆豆。玩家可以指定一个格子,如果该格子中有豆豆,则打掉该豆豆,并得分。每…

【Java 开发】模版模式使用模版

在日常开发中,对适合的场景。使用模板模式可以帮助我们抽取公共的东西,使代码更加优雅。本次写了一个模版模式的使用模版,方便以后 cv。 本次是以订单的接受、拒绝、关闭三个操作作为 demo 来写的模板。 一、定义请求基类,不同操作…