mysql数据库基本介绍及常见使用
关系型数据库
● 二维表
● 表中的一行,称为记录,表中的列, 称为字段(属性)
● 行列交叉的单元格的值,叫属性值或字段值。
● ORACLE DB2 Mysql SQL SERVER 关系型数据库常用的指令(可以在命令行执行,也可以在navicat新建查询执行)
查看版本号
select version()
显示所有的数据库
show databases;
设置当前数据库
use 数据库名
查看该数据库下所有的表
show tables
查看表结构
desc 表名
- 存储引擎
数据库存储、管理和查询等操作的一些规则。
三种数据引擎
1)innoDB存储引擎
● 默认的存储引擎
● 支持外键
● 支持事务
2)MYISAM
● 支持全文检索
● 不支持外键
3)MEMERY
● 内存引擎,在内存中创建表
● 访问速度快
字符集
● 数据库中存储数据的编码格式
● 中文一般使用utf8
● 排序规则 utf8_general_ci ci表示大小写字母不敏感
● mysql对于英文字母大小写不敏感sql脚本
● .sql作为扩展名的一个文件
● 方便部署数据库数据库的管理
数据库的创建
CREATE DATABASE 数据库名 CHARACTER SET utf8 COLLATE utf8_general_ci
CREATE DATABASE IF NOT EXISTS 数据库名 CHARACTER SET UTF8 COLLATE utf8_general_ci ;
数据库的删除
DROP DATABASE 数据库名
E-R图
● ENTITY RELATIONSHIP 实体关系图,数据库逻辑设计阶段产生的一种数据模型。
● 包含三个要素:- 实体 实体实际对应着数据库中表
- 属性 实际对应着表中的字段
- 关系 表与表之间的关系
● 一对一
● 一对多
● 多对多
数据类型
1)数值类型
● BIT 位
● TINYINT 很小整数,-128~127 unsigned 无符号0~255
● BOOLEAN 用TINYINT(1)来表示,0表示false,非零值表示true
● SAMLLINT -32768~32767
● INT 正负21亿多
● BIGINT 很多很多
● FLOAT
● DOUBLE
● DECIMAL
2)字符串类型
● CHAR(n) 固定长度为n的字符串
● VARCHAR(n) 变长字符串,n为最大长度,实际存储的长度,就是字符串的实际长度。
● TEXT 大文本,比如小说的章节内容。
● ENUM 枚举
3)日期类型
● DATE
● DATETIME
● TIME
● YEAR
● TIMESTAMP 时间戳 记忆记录最后一次的更新时间。需要将字段的默认值设置为CURRENT_TIMESTAMP,勾选为时间戳。约束类型
● 往表中插入记录的时候,遵循的一定的规则, 称为约束,作用保证数据的完整性和一致性。
主键约束
● PRIMARY KEY
● 表中的一列或者多列,设置主键约束,表示该列的值,在该表中是唯一的。
● 主键的值不能为NULL,而且必须唯一。
● 语法:
字段名 PRIMARY KEY AUTO_INREMENT
● AUTO_INREMENT表示主键自增
唯一性约束
● UNIQUE
● 表示该字段的值在该表中是唯一的,但是取值为NULL
● 表中的多个字段都可以设置唯一性约束
● 语法 :
字段名 UNIQUE
非空约束
● NOT NULL
● 该字段的值不能为null
● 语法:
字段名 NOT NULL
默认值
● DEFUALT
● 如果表中插入记录时,没有给该字段赋值,则使用默认值。
● 语法:
字段名 DEFAULT 值
外键约束
● FOREIGN KEY
● 表中的某个字段,是取自另外一个表中的字段的值,形成的外键约束
● 两个表中关联字段的数据类型要一致。
● 外键约束的策略:
● restrict 、noaction 对于已经形成外键约束的记录,被引用表中的关联的记录不允许被删除。
● set null 对于已经形成外键约束的记录,被引用的表中的记录删除后,主表中关联记录的对应的字段值被置为null
● cascade 对于已经形成外键约束的记录,如果删除或者更新被引用表中的记录,主表的关联记录也会被删除或者更新。
CHECK约束
● mysql不支持这种约束,一般通过枚举或者触发器来实现。
- 表的创建
● 语法
CREATE TABLE 表名(字段名 数据类型 约束,字段名 数据类型 约束)
- 表的删除
DROP TABLE 表名
更改表
● ALTERSQL语句
● SQL Structed Query Language
● DDL DATA DEFINITION LANGUAGE 数据定义语言
对于数据库或者数据库的组件的结构的操作
CREATE ALTER DROP
特点:不允许事务的回滚。
● DML DATA MANIPULATION LANGUAGE 数据操作语言
表中记录的增删改
INSERT
DELETE
UPDATE
特点:可以进行事务的回滚
● DQL DATA QUERY LANGUAGE 数据查询语言
SELECT
● DCL DATA CONTROL LANGUAGE 数据控制语言
GRANT 授权
REVOKE 回收权限
● TPL TRANSACTION PROCESS LANGUAGE 事务处理语言
COMMIT
ROOLBACKDML
INSERT 往表中插入记录
● 语法
INSERT INTO 表名(字段列表) VALUES(值列表)
● 其中:
● 1、字段列表,值列表两两之间用逗号隔开
● 2、值列表中的值,字符串和日期的常量,需要单引号括起来。
● 3、值的类型要与字段的数据类型相符
● 4、INTO可以省略
● 5、字段列表如果是插入整个表中的字段,可以省略,但值列表的个数与顺序要与定义的表的字段的顺序一样。
● 6、字段也可以写其中的几个,与后面的值的个数对应即可。
● 7、VALUES 关键字也可以使用VALUE,但一般用values
● 批量插入多条记录
● INSERT INTO 表名(字段名) VALUES(值列表1),(值列表2),…,(值列表n)
UPDTAE
● 对表中的记录进行更改
● 语法
UPDATE 表名 SET 字段名1=值1, 字段名2=值2 WHERE子句
● where子句用于限定修改的记录。如果不加where子句,默认修改该表中所有的记录。
DELETE
● 用于删除表中的记录
● 语法
DELETE FROM 表 WHERE子句
表的截断
● TRUNCATE TABLE 表名
● 表的截断,清空表中所有的记录。
TRUNCATE 和DELETE的区别
● 都可以删除表中的记录。delete既可以删除表中所有的记录,也可以按where条件删除一部分记录,而truncate只能清空表中所有的记录。
● delete属于DML,事务可以回滚,truncate属于DDL,是不可以事务回滚。
- where子句
用于条件限制
关系运算符
● = 等于
● != <> 不等于
● > >=
● < <=
● 注意:关系运算符除了值的比较,还可以比较日期,hiredate>‘1982-1-1’
null值的判断
● IS NULL
● IS NOT NULL
区间的判断
● BETWEEN … AND … 表示取值在某个连续的区间
● WHERE sal BETWEEN 3000 AND 5000 表示筛选工资在3000~5000的记录,并且包含3000和5000两个边界。
● NOT BETWEEN … AND … 表示取值不在某个连续的区间
集合的判断(离散)
● IN 表示取值在集合中
● WHERE deptno IN(10,20,40)
● NOT IN 表示取值不在集合中
逻辑运算符
● 在where子句中拼接多个筛选条件
● && AND 与
● || OR 或
● ! NOT 非
出处:东软Java实训
相关文章:

FilenameFilter的使用
使用FilenameFilter过滤掉chapter开头的文件。 1 public class contentFilter implements FilenameFilter {2 public boolean isContent(String file) {3 if (file.startsWith("chapter")){4 return false;5 }else{6 return true;7 }8 …

Qt 串口连接
Qt 串口连接 使用 Qt 开发上位机程序时,经常需要用到串口,在 Qt 中访问串口比较简单,因为 Qt 已经提供了 QSerialPort 和 QSerialPortInfo 这两个类用于访问串口。 使用 QSerialPort Qt 提供的 QSerialPort 类继承于 QIODevice,也…

navicat for mysql如何在更新记录时自动记录更新时间
如图所示 步骤 添加属性recordTime(任意)设置属性类型为timestamps勾选 根据当前时间戳更新默认栏填 CURRENT_TIMESTAMP 效果

ASP.NET Web API自身对CORS的支持:从实例开始
在《通过扩展让ASP.NET Web API支持W3C的CORS规范》中我们通过自定义的HttpMessageHandler为ASP.NET Web API赋予了跨域资源共享的能力,具体来讲,这个自定义的CorsMessageHandler的自由主要体现在如下两个方面:其一,为简单跨域请求…

2021第12届蓝桥杯省赛 -- 填空题:试题B:直线
试题B:直线 问题描述 在平面直角坐标系中,两点可以确定一条直线。如果有多点在一条直线上, 那么这些点中任意两点确定的直线是同一条。 给定平面上 2 3 个整点(x,y)∣0≤x<2,0≤y<3,x∈Z,y∈Z{(x, y)|0 \leq x < 2, 0 \leq y &l…

Markdown快速上手
基本语法 标题 #标题名共六级,依次“#”数量增加,字体减小 加粗文字 哈喽 两个“* ”文字内容 再两个 斜体文字 哈喽 一个“*” 文字内容 再一个 无序列表 -列表内容回车两次退出此编辑模式 有序列表 1.列表内容回车两次退出此编辑模式 插入链接 百度链接…

复杂SELECT语句执行过程
通过FROM子句中找到需要查询的表通过WHERE子句进行分组函数筛选判断通过GROUP BY子句完成分组操作通过HAVING子句完成组函数筛选判断通过SELECT子句选择显示的列或表达式及组函数通过ORDER BY子句进行排序操作 书写时按照这个顺序:5 1 2 3 4 6 出处:东软Java实训

MTD NANDFLASH驱动相关知识介绍
转:http://blog.csdn.net/zhouzhuan2008/article/details/11053877 目录 MTD总概述MTD数据结构 MTD相关层实现MTD,Memory Technology Device即内存技术设备字符设备和块设备的区别在于前者只能被顺序读写,后者可以随机访问;同时&a…

Spring Boot轻松理解动态注入,删除bean
原文地址:http://412887952-qq-com.iteye.com/blog/2348445 我们通过getBean来获得对象,但这些对象都是事先定义好的,我们有时候要在程序中动态的加入对象.因为如果采用配置文件或者注解,我们要加入对象的话,还要重启服务,如果我们想要避免这一情况就…

mysql数据库常见进阶使用
事务 1)mysql中的工作单元,由一个或者多个sql语句组成,“不成功便成仁”,要么全部执行成功,要么全部执行失败,以此来保证数据的一致性。 2)事务的回滚:如果事务中的任何一个sql执行失…

[转]web打印实现方案 Lodop6.034 使用方法总结
本文转自:https://www.cnblogs.com/tiger8000/archive/2011/09/19/2181365.html 官文下载: http://mtsoftware.v053.gokao.net/download.html 本地 Lodop6.034 版本下载:/Files/tiger8000/Lodop6.034.rar 假设你的 lodop 打印控件放在你项目的…

图片的另一种展现—将后台图片编码直接展现为图片
1、应用场景 开发过程中,遇到这样的需求:需要将服务器上的图片展现在页面上,但是图片所在服务器不是对外的,图片所在服务器与应用服务器也不在同一台机器上,这时候就需要在开发中先将图片读出来,返回给应用…

电子学会青少年编程等级考试Python一级题目解析12
Python一级题目解析 1、题目(2021.03) 写一个计算长方形面积的程序,并对每行代码进行相应的注释,要求如下: (1)采用多行注释,说明程序的功能(如下)&#x…

Swing基础知识(更新中)
Swing是什么 做桌面应用程序的界面,GUI。 组件和容器:容器是特殊的组件。 布局管理器: 一般放中间容器,用来控制容器中组件的排列方式。 常见: ① FlowLayout 流布局(默认布局) 左上是起点,按组件加入容…

timesten 修改最大连接数
修改完/var/Timesten/sys.odbc.ini里面的connections之后 重启TT:ttdaemonadmin -restart 报错:15019: Only the instance admin may alter the Connections attribute Command> Command> connect dsn的名称;15019: Only the instance admin may a…

青少年编程竞赛交流群第050次活动录播
背景介绍 把电子学会的青少年编程能力等级测评作为游戏的关卡,带着小朋友们升级打怪,这个想法来自于 我从邵慧宁身上得到的启发。 升级打怪: 电子学会考评中心:http://www.qceit.org.cn/bos/default.html 知识内容:…

JDBC连接mysql数据的7个步骤(讲解+源码)
步骤 源码 DBUtils类 package com.csu.db;import java.sql.*;public class DBUtils {public static Connection getConnection(){try {//[1/7] 加载JDBC的驱动Class.forName("com.mysql.cj.jdbc.Driver");//[2/7] 定义url连接参数String url "jdbc:mysql://l…

UML:概要设计,用什么画我的类图?
背景 做过需求之后,很少使用 UML 画概要设计,这几天尝试的用了几个工具,最总还是选择了 VisualStudio。 Edraw 详细信息很难编辑,如:签名。 Viso 添加成员太麻烦了。 VisualStudio 图形不支持着色。 备注 使用 VisualS…

RN Exception: Before building your project, you need to accept the license agreements and comp le...
异常 * What went wrong: A problem occurred configuring project :app. > You have not accepted the license agreements of the following SDK components: [Android SDK Platform 23, Android SDK Build-Tools 23.0.1]. Before building your project, you need to acc…

【组队学习】【35期】李宏毅机器学习(含深度学习)
李宏毅机器学习(含深度学习) 航路开辟者:王茂霖、陈安东,刘峥嵘,李玲领航员:梁家晖航海士:程浩伟、周小要、吴昌广 基本信息 开源内容:https://linklearner.com/datawhale-homepa…

git关键原理简介
集中化版本控制 缺点:1中央仓库得相当稳定,出问题可能每个人那里都没完整备份 2 只能在线使用(今天网络已经不是问题) 分布式版本控制 改进:每台客户机在本地都维护一份仓库 主要特点 保存数据和文件的主要方式 每个…

项目管理和缺陷跟踪工具Redmine
官网: http://www.redmine.org/ http://demo.redmine.org/ 下载: http://www.redmine.org/projects/redmine/wiki/Download Redmine 是一个开源的、基于Web的项目管理和缺陷跟踪工具。它用日历和甘特图辅助项目及进度可视化显示。同时它又支持多项目管理…

Redis (二)_ jedis的使用
Jedis 是 Redis 官方首选的 Java 客户端开发包 虚拟机设置 查看虚拟机的ipifconfig 将虚拟机的6379端口打开#运行下面的命令 如果是新建的一个新的 文件,你需要先安装 iptables,再打开 vim /etc/sysconfig/iptables## 安装命令 yum install -y iptables-…

【组队学习】【35期】数据可视化(Matplotlib)
数据可视化(Matplotlib) 航路开辟者:杨剑砺、杨煜、耿远昊、李运佳、居凤霞领航员:武帅航海士:叶庭云、李显、郭棉昇 基本信息 开源内容:https://github.com/datawhalechina/fantastic-matplotlib开源内…

解决日常bug的正确姿势
bug的错误分两种情况: ① 控制台报错->可以定位到错误位置(比较想看到的) ② 控制台不报错却达不到想要的功能->设计代码的逻辑有问题 问题解决方案的优先级(由高到低) ① 自己解决 a. 分析控制台的错误信息描述->定位问题的代码行数->分析该行代码前后…

02-NLP-01-python正则表达式
Python正则表达式 by 寒小阳(hanxiaoyang.mlgmail.com) 正则表达式是处理字符串的强大工具,拥有独特的语法和独立的处理引擎。 我们在大文本中匹配字符串时,有些情况用str自带的函数(比如find, in)可能可以完成,有些情况会稍稍复杂一些(比如说…

【组队学习】【35期】SQL编程语言
SQL编程语言 航路开辟者:王复振、杨煜、闫钟峰、杨梦迪、苏鹏领航员:庞永生航海士:王彦淳、木卷、丁一超 基本信息 开源内容:https://github.com/datawhalechina/wonderful-sql开源内容:https://hub.fastgit.org/da…

神经网络基础知识梳理
神经网络是什么 说明: 我们在机器学习中谈论的神经网络是指“神经网络学习”,即机器学习与神经网络这两个学科领域的交叉部分。 生物学意义上神经网络的最基本成分是神经元,计算机科学中的神经网络的最基本成分是神经元模型。 最广泛的一种…