MySQL(2)

node mysql和mysql2有什么区别 本文对node的mysql和mysql2模块做了简单的对比,我们做了个小实验对比了两者在插入和查询的性能对比,当然这只是一个小实验,场景简单,样本也比较少,但是还是能看出mysql2的性能更优。从整个对比来看,mysql2在新技术特性适配和性能上明显优于mysql模块。如果是新项目或者项目比较好更新,建议使用mysql2,如果使用第三方封装的mysql库,可以看下是基于哪个mysq模块,如果没有依赖亦可以对比下其与mysql2的性能。 阅读详情

七、字段约束
    1、主键约束
        作用:记录的唯一标识
        特点:唯一、不能为空
        案例:
            CREATE TABLE student (
                id int auto_increment, #原则
                name varchar(50),
                PRIMARY KEY ( id ) #主键约束

            )


    2、非空约束
        特点:不能为空
        案例:
            CREATE TABLE student (
                id int auto_increment, 
                name varchar(50) not null, #非空约束
                phone varchar(11),
                PRIMARY KEY (id) 
            )


    3、唯一约束
        特点:唯一
        案例:
            CREATE TABLE student (
                id int auto_increment, 
                name varchar(50) not null, 
                phone varchar(11) unique, #唯一约束
                PRIMARY KEY (id) 
            )


    4、默认约束
        特点:填充默认值
        案例:
            CREATE TABLE student (
                id int auto_increment, 
                name varchar(50) not null, 
                phone varchar(11) unique, 
                sex bit default 0,
                hobby varchar(100) default '无', #默认约束
                PRIMARY KEY (id) 
            )


    5、外键约束
        作用:建立表之间的关联联系时,保障数据完整性。
        特点:另一张表的主键(也可是唯一约束列)
        案例:
            create table tb_class(
             id int(11) auto_increment,  -- id是主键列,不用显示插入值 让其自动增长
             class_name varchar(30) not null, -- not null 非空约束
             class_desc varchar(100),  -- 班级描述
             primary key (id)   -- 为tb_class表的id列设置主键约束
            )ENGINE=INNODB,DEFAULT CHARSET UTF8;

            CREATE TABLE student (
                id int auto_increment, 
                name varchar(50) not null, 
                phone varchar(11) unique, 
                sex bit default 0,
                hobby varchar(100) default '无',
                class_id int,
                PRIMARY KEY (id),
                foreign key (class_id) references tb_class(id) #外键约束
            )

八、表关系
    一对一:
        学生表(tb_student):
            id
            name
            cid #外键
        班级表(tb_class):
            id
            name
    一对多:
        班级表(tb_class):
            id
            name
        学生表(tb_student):
            id
            name
            cid #外键
    多对多:
        学生表(tb_student):
            id
            name
        课程表(tb_course):
            id
            name
        中间表/关联表(tb_student_course):
            sid
            cid
九、单表查询
    1、简单查询
        select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp
        select empno,ename,job from emp
        select * from emp
        #使用别名
        select empno as no, ename name from emp
        select e.empno,e.ename from emp e
        select e.empno as no, e.ename name from emp e
        select e.* from emp e
        select e.*,d.dname from emp e, dept d
        #使用算术表达式
        select ename,sal,sal*0.8 from emp
        select ename,sal,sal*1.2 from emp
        select ename,sal,sal*12+1000 from emp
        #去重查询
        select distinct deptno from emp
        select distinct job from emp
        select distinct deptno,job from emp
        #排序查询
        select * from emp order by sal desc; #降序
        select * from emp order by sal;  #升序
        select * from emp order by sal asc; #升序

    2、分页查询
        语法:
            select 字段名... from 表名 limit index,pageSize
        案例:
            #每页5条,查询第1页
            select * from emp limit 0,5
            select * from emp limit 5
            #每页5条,查询第2页
            select * from emp limit 5,5
            #查询工资最高的前3名员工
            select * from emp order by sal desc limit 0,3
            #查询2号部门工资最高的前3条员工
            select * from emp where deptno=2
            select * from emp where deptno=2 order by sal desc limit 0,3


    3、合并查询
        作用:将两个select的查询结果合并为一个
        关键字:
            union all:合并
            union:合并,去重
        案例:
            #查询2号部门员工的job
            select job from emp where deptno=2;
            #查询3号部门员工的job
            select job from emp where deptno=3;
            #查询2号部门员工的job union all 查询3号部门员工的job
            select job from emp where deptno=2
            union all
            select job from emp where deptno=3

            select job from emp where deptno=2
            union all
            select job,ename from emp where deptno=3 #报错
            #查询2号部门员工的job union 查询3号部门员工的job
            select job from emp where deptno=2 #5条
            union 
            select job from emp where deptno=3 #6条
            

MATLAB实战:手把手教你实现Gardner环路位同步(附完整代码) 本文通过MATLAB实战,详细讲解了Gardner环路位同步算法的原理与实现。内容涵盖插值滤波器、定时误差检测、环路滤波器与数控振荡器等核心模块,并提供完整代码和调试技巧,帮助读者掌握数字通信中关键的符号定时同步技术。 阅读详情

相关推荐

Arcgis 10.3 与 ArcGIS Engine 10.3 安装与破解

Arcgis 10.3 与 ArcGIS Engine 10.3 安装与破解

weixin_52127098的博客 4725

MySQL 和 MySQL2 的区别

在node.js中MySQL是最流行的开源关系型数据库管理系统,拥有大量的使用者和广泛的应用场景。而MySQL2是MySQL官方团队推出的新一代MySQL驱动,用于取代老版的MySQL模块,提供更好的性能和更丰富的功能。本文将介绍MySQL2相较于MySQL有哪些优势以及具体的技术区别。随着Node.js的流行,基于Node.js连接MySQL数据库变得十分普遍。Node.js社区最初广泛使用的MySQL模块是基于libmysqlclient开发的,这是一个阻塞式的数据库驱动,性能和可靠性都存在一定问题。

m0_57005111的博客 2301

k8s部署 普罗米修斯(Prometheus)监控

Prometheus是一个开源的服务监控系统和时序数据库其提供了通用的数据模型和快捷数据采集、存储和查询接口它的核心组件Prometheus服务器定期从静态配置的监控目标或者基于服务发现自动配置的目标中进行拉 取数据新拉取到啊的 数据大于配置的内存缓存区时,数据就会持久化到存储设备当中。

D2961953033的博客 3854

Ruby 连接 Mysql - MySql2

Ruby 使用 Mysql2 连接 MySQL 数据库的简明指南:Mysql2 是 Ruby 的高性能 MySQL 客户端库,支持现代 MySQL 特性。文章介绍了安装方法(需先安装 MySQL 开发库),通过 Mysql2::Client.new 建立连接,并演示了 CRUD 操作、事务处理(手动 COMMIT/ROLLBACK)和错误捕获。关键点包括使用参数绑定防止 SQL 注入、流式查询处理大数据集,以及异步查询等高级功能。建议始终关闭连接或使用连接池管理资源。

likuoelie的博客 690

深度学习、图像分类入门,从VGG16卷积神经网络开始

刚开始接触深度学习、卷积神经网络的时候非常懵逼,不知道从何入手,我觉得应该有一个进阶的过程,也就是说,理应有一些基本概念作为奠基石,让你有底气去完全理解一个庞大的卷积神经网络: 本文思路: 一、我认为学习卷积神经网络必须知道的几个概念: 1、卷积过程:   我们经常说卷积神经网络卷积神经网络,到底什么才是卷积?网络层卷积过程到底怎么实现?我们在这里借鉴了另一位博客大牛的动态图来给大

Errors_In_Life的博客 16万+

riscv32-gcc工具链实战:从下载到编译的完整指南

本文提供了一份详尽的riscv32-gcc工具链实战指南,涵盖从官方渠道下载预编译版本、正确选择riscv32-glibc版本、配置环境变量到实战编译的全过程。通过清晰的步骤和避坑指南,帮助开发者快速搭建稳定的RISC-V交叉编译环境,并成功编译从Hello World到Linux内核的程序。

s3t4u的博客 675

Csv和mysql_mysql2csv 和 csv2mysql 工具

mysql2csv 和 csv2mysql 工具在这里提供了两个使用 .csv 格式 的简单的 MySQL 数据库的导数据工具。csv 格式可以很容易地生成和解析,而且,也可以很容易地使用办公软件把 .csv 格式转换为 .xls/.xlsx 格式,或者把 .xls/.xlsx 格式转换为 .csv 格式的文件。mysql2csv - 将 MySQL 的数据导出为 csv 格式的文件。csv2my...

weixin_36436373的博客 294

python如何实现点云可视化交互——Open3D实例教程(获取所选点的信息)保姆级教学

python如何实现点云可视化交互——Open3D实例教程(获取所选点的信息)保姆级教学

qq_45912037的博客 1万+

mysql splca,mysql2

Mysql2 - A modern, simple and very fast MySQL library for Ruby - binding to libmysqlTravis CI Appveyor CI The Mysql2 gem is meant to serve the extremely common use-case of connecting, querying and ite...

weixin_34986860的博客 296

docker容器ubuntu:latest里使用uv add mysqlclient安装失败的解决方案

在Docker容器(ubuntu:latest)中安装mysqlclient失败,原因是缺少必要的依赖包。错误显示系统找不到pkg-config工具和MySQL客户端库。解决方法:先更新软件源并安装构建工具、Python开发包、MySQL客户端库和pkg-config工具。具体步骤:运行sudo apt update,然后安装build-essential python3-dev default-libmysqlclient-dev pkg-config,最后再执行uv add mysqlclient即可成

拥抱具身智能,昇腾Ascend C 294

【科学文献计量】标准参考出版年谱(Standard RPYS)和多维参考出版年谱(Multi RPYS)

@[TOC](标准参考出版年谱(Standard RPYS)和多维参考出版年谱(Multi RPYS)) 1 标准参考出版年谱与多维参考出版年谱 1.1 标准参考出版年谱(Standard RPYS) 标准参考出版年谱(Standard Reference Publication Year Spectroscopy)是由Marx, Bornmann, Barth, and Leydesdorff(2014)和Marx and Bornmann(2014)提出的一种量化历史出版物对研究领域影响的方法。该方法通

lys_828的博客 1103

MySQL2 和 MySQL 有什么区别?

MySQL是最流行的开源关系型数据库管理系统,拥有大量的使用者和广泛的应用场景。而MySQL2是MySQL官方团队推出的新一代MySQL驱动,用于取代老版的MySQL模块,提供更好的性能和更丰富的功能。本文将介绍MySQL2相较于MySQL有哪些优势以及具体的技术区别。

pantouyuchiyu的博客 844

华为OD机考双机位C卷 - 评委评分 (Java & Python& JS & C/C++ & GO )

华为OD机考双机位C卷 - 评委评分 (OD上机考试双机位C卷)。提供在线OJ刷题。Java、C++、Python、GO语言、C语言、JavaScript题解,并提供完整思路讲解。

算法大师! 1750

使用binlog2mysql回滚mysql的binlog数据

通过binlog日志回滚mysql数据

qq_41373372的博客 1176

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

MySQL与MySQL2之间有什么差别?

然而,在处理大量并发请求时,由于回调函数嵌套的存在,代码的维护、阅读和调试变得困难,从而导致MySQL在性能和可维护性方面存在一定的劣势。为了解决这个问题,MySQL2产生了。MySQL2在构建大型应用程序,同时需要异步支持时都可作为优选,而在Node.js后端应用程序中,通过与async和await的配合使用,MySQL2能够更高效地管理代码逻辑。1.在查询语句方面,MySQL和MySQL2对于查询语句的支持是不同的,MySQL的查询语句可以简单使用纯文本字符串,而MySQL2需要使用预处理语句。

weixin_55376728的博客 582

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

mysql有什么不同_mysql 和 mysql2 有什么不一样

官方叙述如下:Someone: Dude, the Mysql gem works fiiiiiine.Me: It sure does, but it only hands you nil and strings for field values. Leaving you to convert them into proper Ruby types in Ruby-land - which is...

weixin_42373066的博客 1452

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

gem安装mysql2,如何在Windows上安装mysql2 gem

I'm using DevKit and XAMPP, and now I have to execute the following command:gem install mysql2 -v 0.2.6 --platform=ruby -- --with-mysql-dir="x:\Program Files\mysql-5.5.11-winx64" --with-mysql-lib="x:\...

weixin_39908106的博客 477

MySQL版本对比与MySQL 8.2介绍

MySQL 8.2在MySQL 8.0的基础上,继续优化了性能、SQL 兼容性、安全性、JSON 支持等方面。虽然 MySQL 8.0 本身已是一个非常强大的版本,但 MySQL 8.2 通过进一步的细节优化和新特性的引入,使得它在大数据处理、复杂查询、事务管理等方面更具优势。对于企业和开发者来说,MySQL 8.2 提供了更高效、更安全的数据库体验,尤其是在大规模应用、复杂场景下,它的改进将帮助提升系统的稳定性和性能。

weixin_44592858的博客 2727

三言两语说透关于 MySQL2 和 MySQL 的区别

MySQL是最流行的开源关系型数据库管理系统,拥有大量的使用者和广泛的应用场景。而MySQL2是MySQL官方团队推出的新一代MySQL驱动,用于取代老版的MySQL模块,提供更好的性能和更丰富的功能。本文将介绍MySQL2相较于MySQL有哪些优势以及具体的技术区别。

qq_36789311的博客 908

mysql2 - mysql2 初识(mysql2 初识案例、初识案例挖掘)

mysql2 - mysql2 初识(mysql2 初识案例、初识案例挖掘)

weixin_52173250的博客 688

mysql2 gem,mysql2 gem安装失败

My stack is as follows:CentOS 6.3Installed MySQL 5.5 (followed steps at http://www.if-not-true-then-false.com/2010/install-mysql-on-fedora-centos-red-hat-rhel/ because yum still has MySQL 5.1 and if I...

weixin_39841572的博客 266

mysql varchar2_貌似我的mysql建表时候字段设置成varchar2类型就报错

你的位置:问答吧-> MySQL-> 问题详情貌似我的mysql建表时候字段设置成varchar2类型就报错本帖最后由 laohuanggua 于 2010-03-25 17:36 编辑RT!centos5.4mysql是yum安装上去的。5.0.77 版本。mysql> use sql24h;Datab...

weixin_42350755的博客 1376

在nodejs中使用mysql2

在之前的项目中nodejs模板使用的mysql包,mysql数据库版本是5.7,最近更新了数据库版本为mysql8,发现之前的代码无法成功连接数据库。

Mr_Bobcp的博客 1652

Windows下Ruby使用mysql2连接Mysql

话说作为新手,纠结了好长时间选择了mysql2来操作mysql,后来感觉使用起来还是不错的。 使用gem安装mysql2时要指定mysql目录。 这里注意!mysql要和ruby一样同是32位或64位,我本机是64,但ruby装的是32位,因此mysql选择32位。 安装命令:gem install mysql2 -- '--with-mysql-dir="C:\ProgramFiles\M

SQL_injection的专栏 1840

django mysql文档_Django 2.2 MySQL

Django2 使用 MySQL 稍复杂一些。这是因为 Django 从 2.0 开始不再支持 Python2,只支持 Python3。但 MySQLdb 不支持 Python3。所以需要支持 Python3 的 PyMySQL 伪装 MySQLdb。伪装后还有些小问题,需要改源码。准备pip install pymysql配置settings.pyDATABASES = {# 'default'...

weixin_31487521的博客 159

gem mysql2 mysql版本_Gem install Mysql2的问题

运行 ‘bundle install’ 或者 ‘gem install mysql2′ 遇到如下错误> gem install mysql2ERROR: Error installing mysql2:The ‘mysql2‘ native gem requires installed build tools.Please update your PATH to include build...

weixin_33480732的博客 449
上一篇: MySQL(1)
下一篇: MySQL(3)
StackNoOverflow
博客等级 码龄1年 22粉丝 48原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值