一、数据库操作

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 条件2or或的关系,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操作(数据库的增删改查)的更多相关文章

  1. java操作数据库:增删改查

    不多bb了直接上. 工具:myeclipse 2016,mysql 5.7 目的:java操作数据库增删改查商品信息 test数据库的goods表 gid主键,自增 1.实体类Goods:封装数据库数 ...

  2. python测试开发django-13.操作数据库(增删改查)

    前言 django的models模块里面可以新增一张表和字段,通常页面上的数据操作都来源于数据库的增删改查,django如何对msyql数据库增删改查操作呢? 本篇详细讲解django操作mysql数 ...

  3. 9.5Django操作数据库的增删改查

    2018-9-5 18:10:52 先贴上笔记 day61 2018-04-28 1. 内容回顾 1. HTTP协议消息的格式: 1. 请求(request) 请求方法 路径 HTTP/1.1\r\n ...

  4. Java操作数据库实现"增删改查"

    本文主要讲解JDBC操作数据库    主要实现对MySql数据库的"增删改查" 综合概述: JDBC的常用类和接口 一   DriverManager类 DriverManage类 ...

  5. Java数据库连接——JDBC基础知识(操作数据库:增删改查)

    一.JDBC简介 JDBC是连接java应用程序和数据库之间的桥梁. 什么是JDBC? Java语言访问数据库的一种规范,是一套API. JDBC (Java Database Connectivit ...

  6. Java数据库连接--JDBC基础知识(操作数据库:增删改查)

    一.JDBC简介 JDBC是连接java应用程序和数据库之间的桥梁. 什么是JDBC? Java语言访问数据库的一种规范,是一套API. JDBC (Java Database Connectivit ...

  7. c#操作数据库的增删改查语句及DataGridView简单使用

    下面是要用户名和密码连接数据库的操作: 一.定义连接字符串,用来链接SQL Server string str_con = "server=.(服务器名称一般为 . );database=W ...

  8. C#通过窗体应用程序操作数据库(增删改查)

    为了体现面向对象的思想,我们把“增删改查”这些函数封装到一个数据库操作类里: 为了便于窗体程序与数据库之间进行数据交互,我们建一个具有数据库行数据的类,通过它方便的在窗体程序与数据库之间传输数据: 我 ...

  9. datagridview数据绑定操作数据库实现增删改查

    DataSet数据集,数据缓存在客户端内存中,支持断开式连接.DataGridView控件绑定DataSet时,它自动的改变的DS的行的状态,而且在做增删改查的时候,可以借助SqlCommandBui ...

  10. mysql 数据库操作 数据库的增删改查

    一 系统数据库 information_schema: 虚拟库,不占用磁盘空间,存储的是数据库启动后的一些参数,如用户表信息.列信息.权限信息.字符信息等performance_schema: MyS ...

随机推荐

  1. myeclipse中java文件中文注释乱码问题

    在myeclipse中,有时打开java文件会发现中文注释全为乱码了,这个问题主要是因为编码的问题没有设置好,一个重要的原则就是保证所有的编码一致才不会发生乱码 出现乱码,需要知道三个地方的编码格式: ...

  2. POJ 3687 逆序拓扑

    额.题目大意:有N个球.编号和重量都是唯一不重复的.然后.给你m个pair a和b,表示编号为a的点一定比编号为b的点轻.然后捏.输出每个点对应的重量.关键是要求.如果有多种可能性的话,输出让序号小的 ...

  3. linux常用的重要的命令: netstat

    Netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Membershi ...

  4. 判断子元素(or属性)是否存在

    if(typeof($("#aid").attr("rel"))=="undefined") 即可

  5. android textview 跑马灯

    <TextView android:layout_width="match_parent" android:layout_height="48dp" an ...

  6. Ubuntu 13.04设置root用户

    1 .设置root用户密码:passwd root 输入密码 2 .编辑lightdm.conf gedit /etc/lightdm/lightdm.conf 最后加: greeter-show-m ...

  7. xcode开发的6个小技巧

    Xcode是iPhone和iPad开发者用来编码或者开发iOS app的IDE.Xcode有很多小巧但很有用的功能,很多时候我们可能没有注意到它们,也或者我们没有在合适的水平使用这些功能简化我们的iO ...

  8. Javascript 基础--JS函数(三)

    一.基本概念:未完成某一个功能的代码(语句,指令)的集合. 二.函数的调用方式: 2.1.函数名(传递参数1,传递参数2)   基本语法 function 函数名(参数列表){ //代码; retur ...

  9. 《day18_String练习_基本类型包装类_集合入门》

    package cn.itcast.api.String.test; public class StringTest_1 { public static void main(String[] args ...

  10. PED结构获取进程路径和命令行地址

    1.FS寄存器 2.进入FS寄存器地址,7FFDD000 3.偏移30为PED结构 4.偏移地址10 3C,44偏移:路径地址,命令行地址 // 通过PEB结构去查找所有进程模块 void *PEB ...