MySQL
文章平均质量分 63
MySQL是一种关联数据库管理系统 由于其体积小、速度快、总体拥有成本低、MySQL软件采用了双授权政策,分为社区版和企业版。
呆萌宝儿姐
CSDN专家博主、阿里云开发者社区专家博主、51CTO社区专家博主、360书馆认证博主、知乎掘金B站等平台受邀作者。
如遇开发、程序等需求,博客首页下拉加入公众号,私信博主
展开
-
MySQL使用left join连接出现重复问题解决
LEFT JOIN 关键字会从左表 (table_name1) 那里返回所有的行,即使在右表 (table_name2) 中没有匹配的行。当右表 (table_name2)通过 on 关键字过滤后出现重复数据,此时查出的数据就会是,右表数据*重复的数据+右表其他条件数据,和我们所需数据的条数不同。这是因为left join的关键字在table_name2表不唯一,所以这部分不唯一的数据就产生了笛卡尔积,导致执行结果多于预期结果。使用下面sql 执行。原创 2023-06-12 16:21:46 · 2178 阅读 · 0 评论 -
SQL中怎么将行转成列?
我们以MySQL数据库为例,来说明行转列的实现方式。首先,假设我们有一张分数表(tb_score),表中的数据如下图:然后,我们再来看一下转换之后需要得到的结果,如下图:可以看出,这里行转列是将原来的subject字段的多行内容选出来,作为结果集中的不同列,并根据userid进行分组显示对应的score。通常,我们有两种方式来实现这种转换。原创 2022-08-23 09:19:29 · 37224 阅读 · 2 评论 -
数据库查询——组合表查询
题目表: Person+-------------+---------+| 列名 | 类型 |+-------------+---------+| PersonId | int || FirstName | varchar || LastName | varchar |+-------------+---------+personId 是该表的主键列。该表包含一些人的 ID 和他们的姓和名的信息。 表: Address+----原创 2022-05-10 18:27:44 · 1668 阅读 · 0 评论 -
安装MySQ报错 warning: /var/cache/yum/x86_64/7/mysql80-community/packages/mysql-community-client-8.0.
报错warning: /var/cache/yum/x86_64/7/mysql80-community/packages/mysql-community-client-8.0.28-1.el7.x86_64.rpm: Header V4 RSA/SHA256 Signature, key ID 3a79bd29: NOKEYRetrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysqlThe GPG keys listed for t原创 2022-01-19 22:11:49 · 6230 阅读 · 8 评论 -
Ubuntu安装mysql(终端安装)
文章目录1.更新源2.安装MySql服务器和客户端3.Ubuntu18.04安装过程中没有设置密码的环节(如果有让你设置密码就下面的不需要做了)4.重置用户和密码5.启动和关闭mysql启动mysql:停止mysql:重启mysql:1.更新源sudo apt update2.安装MySql服务器和客户端sudo apt install mysql-server mysql-client3.Ubuntu18.04安装过程中没有设置密码的环节(如果有让你设置密码就下面的不需要做了)执行 su原创 2021-12-17 11:25:47 · 2685 阅读 · 0 评论 -
Java数据类型和MySql数据类型对应表
关系表类型名称显示长度数据库类型JAVA类型JDBC类型索引(int)VARCHARL+NVARCHARjava.lang.String12CHARNCHARjava.lang.String1BLOBL+NBLOBjava.lang.byte[]-4TEXT65535VARCHARjava.lang.String-1INTEGER4INTEGER UNSIGNEDjava.lang.Long4TINYINT3原创 2021-06-11 16:05:53 · 2956 阅读 · 1 评论 -
Mysql外键设置中的CASCADE、NO ACTION、RESTRICT、SET NULL、Set DEFAULT
CASCADE:父表delete、update的时候,子表会delete、update掉关联记录;SET NULL:父表delete、update的时候,子表会将关联记录的外键字段所在列设为null,所以注意在设计子表时外键不能设为not null;RESTRICT:如果想要删除父表的记录时,而在子表中有关联该父表的记录,则不允许删除父表中的记录;NO ACTION:同 RESTRICT,也是首先先检查外键;Set default:父表有变更时,子表将外键列设置成一个默认的值 但..原创 2021-06-06 10:15:43 · 2979 阅读 · 0 评论 -
删库时报错: ERROR 1010 : Error dropping database (can‘t rmdir ‘.\
原因在database下面含有自己放进去的文件,譬如*.txt文件或*.sql文件等,只要进去把这个文件删了在执行。解决步骤进入mysql安装目录的\data 目录下删除掉数据库文件夹,在删除数据库就可以了例如:我的安装目录在D盘,把他删除了,如果是语句删除的话就可以执行了,如果是管理软件的话一刷新就没了...原创 2021-05-28 11:38:54 · 6951 阅读 · 0 评论 -
Windows如何卸载干净mysql
1、(如果你装上了mysql)在控制面板中卸载mysql软件2、卸载过后删除D:\Program Files (x86)\MySQL该目录下剩余的所有文件(把mysql文件夹也删了,这个目录是你的安装目录)3、windows+R运行“regedit”文件,打开注册表4、删除注册表:HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Eventlog\Application\MySQL文件夹5、删除HKEY_LOCAL_MACHINE\SYSTEM\原创 2021-05-25 10:35:27 · 5858 阅读 · 2 评论 -
MySQL配置文件my.ini详解
文章目录my.ini 是啥玩意?my.ini 在哪放着呢?my.ini的配置内容介绍:客户端的参数服务器断参数:InnoDB存储引擎使用的参数:中文翻译版 my.inimy.ini 是啥玩意?my.ini是MySQL数据库中使用的配置文件,修改这个文件可以达到更新配置的目的。my.ini 在哪放着呢?my.ini存放在MySql安装的根目录,如图所示:(我比较懒,用的WAMP,大家找自己的安装目录即可)my.ini的配置内容介绍:其实大体可以分为两部分:客户端的参数、服务器参数。其中服务器参数原创 2021-05-24 08:28:40 · 31322 阅读 · 0 评论 -
Mysql 中 MyISAM 和 InnoDB 的区别有哪些?
文章目录1. 定义InnoDB:MyISAM:2. 区别:3. 使用:1. 定义InnoDB:InnoDB:MySQL默认的事务型引擎,也是最重要和使用最广泛的存储引擎。它被设计成为大量的短期事务,短期事务大部分情况下是正常提交的,很少被回滚。InnoDB的性能与自动崩溃恢复的特性,使得它在非事务存储需求中也很流行。除非有非常特别的原因需要使用其他的存储引擎,否则应该优先考虑InnoDB引擎。MyISAM:MyISAM:在MySQL 5.5 及之前的版本,MyISAM是默认引擎。MyISAM提原创 2021-05-24 08:09:44 · 3253 阅读 · 1 评论 -
打开MFC项目时:fatal error RC1015: cannot open include file ‘winres.h‘.
错误描述IDE: VS 2017打开一个文物级MFC项目,加载界面文件时,弹出此错误。问题分析打开老项目时,一般会遇到各种不兼容问题,比如系统头文件或库文件更新或被踢出群聊了(由于系统迭代,会对系统头文件和库文件作一定修改),也有第三方库的更新修改,还有所用环境的更新导致项目报错。总结就是,项目太老,跟不上时代了,要适应就得改变。这个问题就是Windows SDK 更新导致的,老项目的配置是老的SDK版本,与现在的环境不兼容。解决方法打开项目属性页,配置属性—>常规—>Wind原创 2020-11-09 11:00:02 · 5470 阅读 · 0 评论 -
将Excel数据导入MySQL(图解)
文章目录1.右击所要导入的数据库表,选择导入向导2.选择对应格式,点击下一步3. 选择文件,选择导入表名,点击下一步4. 选择字段行,起始与结束数据行5.(如果不改表不新建可直接下一步)6.Excel字段名要和数据库字段名一直(不一致可能导入不成功),点击下一步7. 追加数据选添加,初始化数据库表数据选择复制8.点击开始1.右击所要导入的数据库表,选择导入向导2.选择对应格式,点击下一步3. 选择文件,选择导入表名,点击下一步4. 选择字段行,起始与结束数据行5.(如果不改表不新建可直原创 2020-08-19 10:24:37 · 4559 阅读 · 1 评论 -
Linux下C语言实现MySQL操作——连接、查询、插入与客户端打造
文章目录准备工作数据库知识准备1.连接代码2.查询代码3.插入代码4.客户端代码准备工作数据库创建一个数据库(我的是test),并建表(我的是example)知识准备https://blog.csdn.net/weixin_45525272/article/details/1080150271.连接代码/************************************************************************* > File Name:原创 2020-08-14 22:50:59 · 5498 阅读 · 0 评论 -
C语言常用MySQL API函数
常用APImysql_init()mysql_real_connect()mysql_close()mysql_num_fields()mysql_fetch_fields()mysql_fetch_row()mysql_query()mysql_store_result()mysql_free_result()常用结构体MYSQLMYSQL_RESMYSQL_ROWMYSQL_FIELDMYSQL_FIELD_OFFSET下面列出了MYSQL_FIELD结构包含的成员:mysql_init()MYSQ原创 2020-08-14 22:50:21 · 4594 阅读 · 0 评论 -
libmysqlclient.so.18(libmysqlclient.so.20 libmysqlclien.so) => not found
文章目录情况一:自己电脑里有库情况二:自己电脑里搜不到库ibmysqlclient.so.18ibmysqlclient.so.20和ibmysqlclient.so我在编译C语言MySQL程序时不成功,然后我查看了以前的执行文件ldd ./a.out结果少了三个库ibmysqlclient.so => not foundibmysqlclient.so.18 => not foundibmysqlclient.so.20 => not found情况一:自己电脑里有库进原创 2020-08-14 12:14:30 · 13191 阅读 · 5 评论 -
MySQL中文乱码问题探究
文章目录1.修改MySQL默认编码2.mysql中文乱码问题三层因素:因素1: MySQL自身的设计【实验步骤1】:【实验步骤2】:【实验步骤3】:因素2:操作系统的语言集【实验步骤4】:【实验步骤5】:在上述环境之下,向数据库中插入中文。因素3:文件存储格式1.修改MySQL默认编码https://blog.csdn.net/weixin_45525272/article/details/1079853862.mysql中文乱码问题三层因素:因素1: MySQL自身的设计【实验步骤1】:mys原创 2020-08-13 17:39:47 · 3761 阅读 · 0 评论 -
Ubuntu修改MySQL默认编码
修改MySQL默认编码在Ubuntu 下配置 MySQL 的字符编码。安装完 MySQL 后,系统默认的字符编码是 latin1 ,输入的是中文,可是输出却是一堆乱码。现在要做的就是把 MySQL的默认字符编码设置为支持中文的编码,如 GBK、GB23112、等。首先进入MySQL存放配置文件的目录执行ls,查看下此文件夹下的文件会发现有个文件是my.cnf,这个文件是mysql的配置文件用vim打开此文件cd /etc/mysql/ ls vi my.cnf 打开my.cnf原创 2020-08-13 17:32:10 · 4073 阅读 · 0 评论 -
MySQL表的约束
表的约束*定义主键约束 primary key: 不允许为空,不允许重复*定义主键自动增长 auto_increment*定义唯一约束 unique*定义非空约束 not null*定义外键约束 constraint ordersid_FK foreign key(ordersid) references orders(id)*删除主键:alter table tablename drop primary key ;MySQL中约束举例:create table myclass( id原创 2020-08-13 16:06:34 · 3684 阅读 · 0 评论 -
MySQL多表查询操作
文章目录多表查询1交叉连接:2满外联接3内连接4左外连接5右外连接6对比练习题目1:7自连接注意:多表查询补:SQL99是一个SQL的标bai准,SQL是结构化查du询语言的简称,只是一种查询操作语言,zhiSQL99是其中一个标准,之前有daoSQL92,95等。主流的数据库SQL Server2000/2005,Oracle等都支持SQL95以后的了,SQL99和95的分别不是很大,和92分别就大,我只知道剩Access用SQL92了。1交叉连接:叉集,即笛卡尔集 select e.*, d.原创 2020-08-13 15:59:44 · 3726 阅读 · 0 评论 -
MySQL日期,字符串,数字函数
文章目录1. 日期时间函数2. 字符串相关函数补:dual日期转字符串:字符串转日期:3. 数学相关函数补:向上向下取整1. 日期时间函数MySQL里面时间分为三类:时间、日期、时间戳(含有时分秒的sysdate)。如执行:select now(), year(now()) 年, month(now()) 月, day(now()) 日, date(now()); select CURRENT_DATE() , CURRENT_TIME(), CURRENT_TIMESTAMP() fro原创 2020-08-13 15:45:02 · 3882 阅读 · 0 评论 -
MySQL的基本操作CRUD(增删改查)
文章目录mysql的基本操作CRUD (#^.^#)1.数据库CURD1.1创建数据库1.2查看数据库1.3修改数据库1.4删除数据库2.表的CURDMySQL的数据类型2.1创建表2.2查看表2.3修改表3.表数据的CURD3.1create数据3.2update数据3.3delete数据3.4Retrieve数据( 检索数据O(∩_∩)O)以上知识综合案例mysql的基本操作CRUD (#.#)1.数据库CURD对数据库进行增(create)、删(delete)、改(update)、查(Retri原创 2020-08-13 15:03:32 · 7728 阅读 · 1 评论 -
MySQL的基本操作CRUD综合案例
这些操作建议SQL的初学者自己亲手敲一遍文章目录这些操作建议SQL的初学者自己亲手敲一遍1.建表2.SQL操作语句3.分组数据操作1.建表创建一个学生表,插入数据id 学号name 姓名chinese 语文成绩english 英语成绩math 数学成绩create table student(id int,name varchar(20),chinese int,english int,math int);insert into student(id,name,chine原创 2020-08-13 15:02:32 · 3947 阅读 · 1 评论 -
MySQL的数据类型
mysql中的数据类型:bit 1位 可以指定位数,如:bit(3)int 2字节 可以指定最大位数,如:int<4> 最大为4位的整数float 2个字节 可以指定最大的位数和最大的小数位数,如:==float<5,2> 最大为一个5位的数,小数位最多2位 ==double 4个字节 可以指定最大的位数和最大的小数位数,如:float<6,4> 最大为一个6位的数,小数位最多4位char 必须指定字符数,如char(5) 为不可原创 2020-08-13 14:34:34 · 3937 阅读 · 0 评论 -
Ubuntu安装MySQL(RPM包安装)
文章目录1.MySQL基础知识1.1MySQL版本及下载1.2下载安装包2.MySQL服务器安装和启动2.1查询服务器上已经安装的mysql2.2卸载旧的版本2.3安装2.3.1安装服务器2.3.2安装客户端:2.4登录Mysql修改默认密码:常规(不过新的好像不行了已经,不行就用上面的那种)1.MySQL基础知识瑞典MySQL AB公司开发,由SUN收购,而后SUN被甲骨文并购,目前属于Oracle公司。MySQL是一种关联数据库管理系统 由于其体积小、速度快、总体拥有成本低、MySQL软件采用了双原创 2020-08-13 14:19:22 · 4240 阅读 · 1 评论 -
Ubuntu设置MySQL远程访问
文章目录一、设置mysql远程访问 -> 第一种方式二、设置mysql远程访问 -> 第二种方式三、Windows上MySQL管理器下载与远程访问使用方法下载与安装(破解)使用一、设置mysql远程访问 -> 第一种方式编辑mysql配置文件,把其中bind-address = 127.0.0.1注释了sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf 使用root进入mysql命令行,执行如下2个命令,示例中mysql的root账号和密原创 2020-08-04 09:38:24 · 5507 阅读 · 2 评论 -
Ubuntu安装MySQL 8.0.21更改默认用户密码
Ubuntu安装MySQL 8.0.21更改默认用户密码第一步:进入目录:输入:sudo cat /etc/mysql/debian.cnf,查看debian.cnf文件第二步:使用上图中的账号密码登录MySQL。输入:mysql -u debian-sys-maint -p 你自己的密码注意:这里出错我个人建议就重装了,我在这耗了一个小时,进不去啊,安全警告啥的,没法了直接重装MySQL之后就好了这是我自己没问题的干净卸载步骤:https://blog.csdn.net/weixin_45原创 2020-08-03 22:25:40 · 10620 阅读 · 10 评论