数据插入

语法:INSERT INTO Table_name(field1,field2……fieldN) values(value1,vlaue2,…valueN)

单行插入用户类型

INSERT INTO userType(TypeName,TypeDescript) VALUES('管理员','管理员')

多行插入用户类型

INSERT INTO UserType(TYpeName,TypeDescription) VALUES('录入员','数据录入员'),('查询员','只能做数据查询操作')

插入用户信息

INSERT INTO UserInfo(userName,userLogin,USERPassword,UserEmail,UserType) VALUES

('张三','zhangsan','zhangsan','zhangsan@qq.com',1),

('李四','lisi','lisi','lisi@qq.com',2),

('王五','wangwu','wangwu','wangwu@qq.com',1),

('赵六','zhaoliu','zhaoliu','zhaoliu@qq.com',3),

('赵六','zhaoliu','zhaoliu','zhaoliu@qq.com',3)

数据删除

Drop Table table_name

Delete from Table_name [where 条件表达式]

Truncate Table table_name

删除张三用户信息

DELETE FROM UserInfo WHERE UserName='张三'

删除用户全部数据

DELETE FROM UserInfo

清空用户数据表

truncate table userinfo

删除用户表

Drop Table UserInfo

Delete 和Truncate 的区别

Truncate 不能带有where 条件语句;

Truncate删除的数据不可以恢复;比delete速度快。

Delete删除的数据可以恢复;语句每次删除一行,并在事务日志中为所删除的每行记录。

Truncate Table:删除内容、释放空间但是不删除定义。

Delete Table:删除内容不删除定义,不释放空间。

Drop Table:删除内容和定义,释放空间。

特定条件的信息不需要了使用delete;如果表格所有数据都不需要了,使用Truncate;如果表本身也不需要了,直接使用Drop

修改

Update table_name set field1=new-value1,field2=new-value2 …[where 条件表达式]

修改语句可以同时更新一个或者多个字段。

使用where限定条件,大部分时间是需要限定的。

修改第二个名字叫赵六的用户信息

UPDATE userinfo SET UserLogin='zhaoliu1',userPassWord='zhaoliu1',userEmail='zhaoliu1@qq.com' WHERE id=5

数据查询

语法:

Select column_name1,column_name2... from table_name [where 条件][group by 属性名 [having 条件表达式]] [order by 属性[ asc | desc ]] [limit<offset, row count>]

Sql查询语句中可以使用一个或者多个表进行查询,并且使用where语句设定查询条件,查询的结果为一个集合。

使用星号(*)可以代替其他所有字段。

Group by 语句:按照【属性名】指定的字段进行分组

Having :有group by 才能使用having 分组后的二次计算。

Order by:按照【属性名】对指定的字段进行排序”asc”升序 “desc” 降序;默认为asc

使用Limit属性来设置返回记录的条数,下标从0开始,类似于SQL Server 中的top。

查询示例:

-- 查询所有用户类型

SELECT * FROM userType

-- 查询所有用户信息

SELECT * FROM userInfo

-- 查询前两个用户信息

SELECT * FROM userInfo LIMIT 0,2

-- 根据用户编号降序查询用户信息

SELECT * FROM userInfo ORDER BY ID DESC

-- 根据用户编号升序查询用户信息

SELECT * FROM userInfo ORDER BY ID

-- 查询姓【王】的用户信息

SELECT *  FROM userInfo WHERE userName LIKE '王%'

-- 查询登录名中包含【a】的用户信息

SELECT * FROM UserInfo WHERE UserLogin LIKE '%a%'

-- 查询用户类型为管理员的用户信息

SELECT * FROM userInfo WHERE usertype IN(SELECT ID FROM UserType WHERE typename='管理员' )

-- 查询每个用户类型的用户数量

SELECT (SELECT TypeName FROM UserType WHERE UserType.ID= UserInfo.UserType),COUNT(*) AS TypeNum FROM userInfo GROUP BY UserType

-- 查询用户信息中重名的名字

SELECT UserName FROM userInfo GROUP BY UserName  HAVING COUNT(*) > 1

Mysql 数据库增删改查的更多相关文章

  1. Java连接MySQL数据库增删改查通用方法

    版权声明:本文为博主原创文章,未经博主允许不得转载. Java连接MySQL数据库增删改查通用方法 运行环境:eclipse+MySQL 以前我们Java连接MySQL数据库都是一个数据库写一个类,类 ...

  2. MySQL数据库(增删改查语句)

    MySQL数据库(增删改查语句)一.登录数据库:---->  mysql -uroot -proot;(对应用户名和密码)二.SQL语句:    数据定义语言DDL  用来定义数据库.表.列,关 ...

  3. python操作mysql数据库增删改查的dbutils实例

    python操作mysql数据库增删改查的dbutils实例 # 数据库配置文件 # cat gconf.py #encoding=utf-8 import json # json里面的字典不能用单引 ...

  4. Asp.Net操作MySql数据库增删改查

    Asp.Net操作MySql数据库增删改查,话不多说直接步入正题.git源码地址:https://git.oschina.net/gxiaopan/NetMySql.git  1.安装MySQL数据库 ...

  5. Python实现mysql数据库增删改查

    利用python操作mysql数据库用法简单,环境配置容易,本文将实现对库增.删.改.查的简易封装!   1. 环境配置 安装第三方包  ,导入模块 mysql.connector  pip inst ...

  6. jsp-2 简单的servlet连接mysql数据库 增删改查

    连接mysql数据库的操作 有增删改查 用的包有 commons-lang3-3.5 mysql-connector-java-5.1.40-bin 但是实际上也就是 数据查询和数据处理两种 所以对数 ...

  7. 安卓版php服务器的mysql数据库增删改查简单案例

    界面: index.php文件: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "h ...

  8. python2.7入门---操作mysql数据库增删改查

    Python 标准数据库接口为 Python DB-API,Python DB-API为开发人员提供了数据库应用编程接口.Python 数据库接口支持非常多的数据库,你可以选择适合你项目的数据库: G ...

  9. MySQL数据库增删改查等常用命令介绍

    MySQL可以说是最常用的小型数据库,加上现在越来越流行的分布式架构,哪怕是一般的中大型项目也可以用MySQL来进行部署. 数据库的操作最常用的就是增删改查,还有一些切换数据库等操作.以下命令不加说明 ...

  10. Golang原生sql操作Mysql数据库增删改查

    Golang要操作mysql数据库,首先需要在当期系统配置GOPATH,因为需要使用go get命令把驱动包下载到GOPATH下使用. 首先配置好你的GOPATH,执行以下命令,下载安装mysql驱动 ...

随机推荐

  1. PCA(主成分分析)的简单理解

    PCA(Principal Components Analysis),它是一种“投影(projection)技巧”,就是把高维空间上的数据映射到低维空间.比如三维空间的一个球,往坐标轴方向投影,变成了 ...

  2. ****** 三十四 ******、软设笔记【存储器系统】-Cache存储器

    Cache存储器 Cache(高速缓冲存储器) 高速缓冲存储器是位于主存与CPU之间的一级存储器,有静态存储芯片(SRAM)组成,容量比较小,速度比主存高得多,接近于CPU的速度,单位成本比内存高.C ...

  3. [译]kendoui - 方法和事件

    原文 为了使用方法和事件,首先要获取到widget实例. 获取widget 一共有3种获取widget的方式. jQuery的data方法 将widget的名作为参数传给jQuery的data方法.( ...

  4. string赋值和操作

    string赋值 string s1; //默认构造函数,s1为空串 string s1(s2); //将s2初始化为s1的一个副本 string s3("value"); //将 ...

  5. 如何解决无法成功git commit 和git push

    如何解决无法成功git commit 和git push 20155324王鸣宇.20155314刘子健 git add . 成功了 但是git commit无法实现. 我先尝试了卸载git 重新下载 ...

  6. tensorflow---alexnet training (tflearn)

    # 输入数据 import input_data mnist = input_data.read_data_sets("/tmp/data/", one_hot=True) imp ...

  7. Nginx 关闭日志生成文件

    nginx 关闭日志:其实一种方法就是写入/dev/null 文件 或者设置关闭: nginx 日志有两个类型  access.log  http 记录访问日志. error.log   server ...

  8. Java SE之网络编程:知识框架

  9. 原型理解:prototype

    这一系列的链接的原型对象就是原型链(prototype chain) 1.所有对象都有同一个原型对象,都可通过Object.prototype获得对象引用 2.new出来的构造函数对象原型就是构造函数 ...

  10. mybatis执行批量更新数据

    1.业务需求:同时执行多记录批量操作 2.实现方法:     1)mapping: 2) dao 层 3)Service 层(注意要使用Transactional,否则可能会导致数据紊乱) 4)Con ...