mySQL CRUD操作(数据库的增删改查)
一、数据库操作
1.创建数据库
create database 数据库名称
2.删除数据库
drop database 数据库名称
二、表操作
1.创建表
create table 表名
(
列名类型(长度) 自增长非空主键,
)
**自增长:auto_increment
**主键:primary key
**非空:not null
**外键:foreign key 列名 references 表名(列名)
2.删除表
drop table 表名
3.修改表名
rename table 原表名 to 新表名;
三、数据库的CRUD操作(增删改查)
数据库里列称为字段,行称为“记录”;
1.插入记录(行)
insert into 表名 values(值),值的数量要与列的数量一致;
2.插入字段(列)
insert into 表名(列名) values(值)
3.删除列
delete from 表名 where 条件(列名=值)
4.修改列名
update 表名 set 列名=值 where 条件
5.表的查询
普通查询:select * from 表名
特定查询:select 列名 from 表名
条件查询:select * from 表名 where 条件
多条件查询:select * from 表名 where 条件1 or 条件2,or或的关系,and与的关系
关键字查询(模糊查询):select * from 表名 where 列名 like '%值%',“%值%”代表关键字在中间,“值%”代表关键字在前面,“%值”代表关键字在后面,“_”下划线代表任意一个字符;
范围查询:select * from 表名 where 列名 between A and B
离散查询:select * from 表名 where 列名 in(值),在里面用in,不在里面用not in;
分页查询:select * from 表名 limit n,m,#分页查询,跳过n条数据(0)取几条
排序查询:select * from 表名 order by 列名 desc,默认为升序asc,降序为desc;
分组查询:select * from 表名 group by 列名 having 条件,根据列名分组+筛选条件;
聚合函数查询:
①数量查询:select count(*) from 表名
②和值查询:select sum(列名) from 表名
③平均值查询:select avg(列名) from 表名
④最高值查询:select max(列名) from 表名
⑤最小值查询:select min(列名) from 表名
去重查询:select distinct 列名 from 表名
四、高级查询:
1.连接查询
select * from 表1,表2 where 连接条件
select * from 表1 join 表2 on 连接条件
笛卡尔积(例子)
select Info.code,Info.name,Info.sex,Nation.name as '民族',Info.birthday from Info,Nation where Info.nation=Nation.code
select * from Info join Nation on Info.nation=Nation.code
2.联合查询
select 列名,列名,列名 from 表1
union
select 列名,列名,列名 from 表2
3.子查询
①无关子查询:子查询和父查询没有关系,子查询可以单独执行
select * from 表 where 列=(select 列 from 表)
无关子查询---例子
查民族为'汉族'的所有学生信息
select * from Info where nation=(select code from nation where name='汉族')
查询生产厂商为'一汽大众'的所有汽车信息
select * from car where brand=()
select brand_code from brand where prod_code=()
select prod_code from productor where prod_name='一汽大众'
简化后的答案:select * from car where brand in(select brand_code from brand where prod_code=(select prod_code from productor where prod_name='一汽大众'))
②相关子查询:子查询和父查询存在互相的关系,子查询需要用到父查询的内容
相关子查询—---例子
查询汽车表中,汽车油耗小于该系列平均油耗的所有汽车信息
select * from car where oil<(该系列平均油耗)
select avg(oil) from car where brand =(该系列)
简化后的答案:select * from car a where oil<(select avg(oil) from car b where b.brand =a.brand)
mySQL CRUD操作(数据库的增删改查)的更多相关文章
- java操作数据库:增删改查
不多bb了直接上. 工具:myeclipse 2016,mysql 5.7 目的:java操作数据库增删改查商品信息 test数据库的goods表 gid主键,自增 1.实体类Goods:封装数据库数 ...
- python测试开发django-13.操作数据库(增删改查)
前言 django的models模块里面可以新增一张表和字段,通常页面上的数据操作都来源于数据库的增删改查,django如何对msyql数据库增删改查操作呢? 本篇详细讲解django操作mysql数 ...
- 9.5Django操作数据库的增删改查
2018-9-5 18:10:52 先贴上笔记 day61 2018-04-28 1. 内容回顾 1. HTTP协议消息的格式: 1. 请求(request) 请求方法 路径 HTTP/1.1\r\n ...
- Java操作数据库实现"增删改查"
本文主要讲解JDBC操作数据库 主要实现对MySql数据库的"增删改查" 综合概述: JDBC的常用类和接口 一 DriverManager类 DriverManage类 ...
- Java数据库连接——JDBC基础知识(操作数据库:增删改查)
一.JDBC简介 JDBC是连接java应用程序和数据库之间的桥梁. 什么是JDBC? Java语言访问数据库的一种规范,是一套API. JDBC (Java Database Connectivit ...
- Java数据库连接--JDBC基础知识(操作数据库:增删改查)
一.JDBC简介 JDBC是连接java应用程序和数据库之间的桥梁. 什么是JDBC? Java语言访问数据库的一种规范,是一套API. JDBC (Java Database Connectivit ...
- c#操作数据库的增删改查语句及DataGridView简单使用
下面是要用户名和密码连接数据库的操作: 一.定义连接字符串,用来链接SQL Server string str_con = "server=.(服务器名称一般为 . );database=W ...
- C#通过窗体应用程序操作数据库(增删改查)
为了体现面向对象的思想,我们把“增删改查”这些函数封装到一个数据库操作类里: 为了便于窗体程序与数据库之间进行数据交互,我们建一个具有数据库行数据的类,通过它方便的在窗体程序与数据库之间传输数据: 我 ...
- datagridview数据绑定操作数据库实现增删改查
DataSet数据集,数据缓存在客户端内存中,支持断开式连接.DataGridView控件绑定DataSet时,它自动的改变的DS的行的状态,而且在做增删改查的时候,可以借助SqlCommandBui ...
- mysql 数据库操作 数据库的增删改查
一 系统数据库 information_schema: 虚拟库,不占用磁盘空间,存储的是数据库启动后的一些参数,如用户表信息.列信息.权限信息.字符信息等performance_schema: MyS ...
随机推荐
- [转]Integer.valueOf(String) 方法之惑
具体问题以前偶然遇到过,好象是一个java答题得分的论坛,当时做错还研究了下怎么回事,但是前两天遇到类似问题却没想起来.巩固下基础,转了下面文章. 以下内容转自:http://www.importne ...
- Spark(3) - External Data Source
Introduction Spark provides a unified runtime for big data. HDFS, which is Hadoop's filesystem, is t ...
- 在Web中如何使用Windows控件(ActiveX)[转]
最近做的一个Web项目,需要在网页中播放摄像头采集的实时视频,我们已经有了播放视频的使用C#编写的windows控件,如何将其嵌入到网页中去了?这需要使用一种古老的技术,ActiveX. 1.将.Ne ...
- oracle查询语句大全
1.查处oracle数据库的字符编码格式 select * from v$nls_parameters t where t.PARAMETER='NLS_CHARACTERSET'; 如果查出的是ZH ...
- 用C#用C#实现窗体在规定时间弹出,例如:10:00.弹出后关闭。并在5分钟后再次弹出。5次后停止。最好有具体代码实现窗体在规定时间弹出,例如:10:00.弹出后关闭。并在5分钟后再次弹出。5次后停止。最好有具体代码
run(){ while(true) { show(); if(条件) { ...
- 常用的正则表达式(例如:匹配中文、匹配html)(转载)
匹配中文字符的正则表达式: [u4e00-u9fa5] 评注:匹配中文还真是个头疼的事,有了这个表达式就好办了 匹配双字节字符(包括汉字在内):[^x00-xff] 评注:可以用来计算字符串 ...
- Ubuntu14.04安装和配置ROS Indigo(一)
安装ROS 配置Ubuntu的软件源 配置Ubuntu要求允许接受restricted.universe和multiverse的软件源,可以根据下面的链接配置: https://help.ubuntu ...
- 走进AngularJs(七) 过滤器(filter) - 吕大豹
时间 2013-12-15 16:22:00 博客园-原创精华区 原文 http://www.cnblogs.com/lvdabao/p/3475426.html 主题 AngularJS 过滤器 ...
- UITableViewCell Property “icon” cannot be found in forward class object “DJWeiBo”
UITableViewCell 自定义表格 实体属性不显示错误 Property “icon” cannot be found in forward class object “DJWeiBo”引入实 ...
- Matlab与C/C++联合编程之Matlab以MEX方式调用C/C++代码(二)
如果我有一个用C语言写的函数,实现了一个功能,如一个简单的函数: double add(double x, double y) { return x + y; } 现在我想要在Matlab中使用它,比 ...