前置步骤:


下载一个绿色版的mysql数据库客户端连接工具 :http://wosn.net/821.html

mysql平台为win7(以后会有CentOS上的)

学习目的:


掌握数据库的基本概念,基础的数据库查询语句(测试人员的基础技能)

正式步骤:


step1:可能会用到的一些周边命令

--查看mysql版本
SELECT VERSION();
--查看系统时间
SELECT NOW();
--linux 中设置允许所有用户远程登录sql服务器,%表示所有用户,123456(此字段为数据库密码)
grant all on *.* to root@'%' IDENTIFIED BY '';

step2: SQL语句的分类

  • DQL(数据查询语言,比如:select)
  • DML(数据操作语言,比如:insert、update、delete)
  • DDL(数据定义语言,比如:create、alter、drop)
  • DCL(数据控制语言,比如:grant、revoke)
  • TCL(事务控制语言,比如:SAVEPOINT、ROLLBACK、SET TRANSACTION、COMMIT)
  1. 数据库操作(DDL)

    --创建数据库
    create database db_name; --删除数据库
    drop database db_name; --切换数据库
    use db_name; --查看当前选择的数据库
    select database();

    使用navicat新建表
    在相应的数据库下,新建表,设置完字段信息后,保存,设置表明,右击新建的表,查看对象信息,点击DDL

  2. 表操作(DDL)
    修改表:
    --创建一个students表,id自增长
    create table t_student(
    id int(2) auto_increment primary key,
    sname varchar(10) not null,
    address varrchar(255)
    )
    
    --修改表:增加列、修改列、删除列
    alter table t_student add grade int;
    alter table t_student change grade mygrade int(2);
    ALTER table t_student drop mygrade;

    删除表

    --删除表
    drop table table_name;

    查看表结构

    --查看表结构
    DESC t_person;

    表的重命名

    --表的重命名
    rename table old_name to new_name;

step3: 数据操作(DML、DQL)

  1. 数据的插入

    --全字段的插入
    insert into t_student values(1,'python','BJ'); --部分字段插入
    insert into t_student(id,sname) values(2,'java'); --一次插入多行数据
    insert into t_student(id , sname) values(3,'C'),(4,'C#'),(5,'JS');
  2. 将id设置为自增长
    --将id设置为自增长
    alter table t_student modify id int(2) auto_increment;

    此时插入数据:

    insert into t_student (id,sname,address) values(0,'html','NJ');

    此时虽然输入时id为0,而实际插入数据后,id会自动增长

  3. 使用update修改数据
    --UPDATE
    update t_student set address ='目标值' where id =5;
  4. 删除数据
    --DELETE 整个表中数据
    delete from t_student
    --删除id为5的数据
    delete from s_student where id =5;

step4: DQL-select语句操作

  1. 创建dept表

    CREATE TABLE `dept` (
    `DEPTNO` varchar(255) NOT NULL,
    `DNAME` varchar(255) DEFAULT NULL,
    `LOC` varchar(255) DEFAULT NULL
    );
  2. 创建emp表
    CREATE TABLE `emp` (
    `EMPNO` int(4) DEFAULT NULL,
    `ENAME` varchar(255) DEFAULT NULL,
    `JOB` varchar(255) DEFAULT NULL,
    `MGR` varchar(255) DEFAULT NULL,
    `HIREDATE` datetime DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
    `SAL` varchar(255) DEFAULT NULL,
    `COMM` varchar(255) DEFAULT NULL,
    `DEPTNO` int(4) DEFAULT NULL
    );
  3. 使用算术表达式
    --查询所有员工的年薪
    select ename ,sal*12 '年薪' from emp;
  4. 字段别名的设置
    as关键字可以不用
  5. 去除重复项
    --去除重复项
    select distinct deptno from emp;
  6. 排序:order by,默认为升序asc (↓最上数据为小,下面的数据大),desc为降序  (↓由大到小)
    --按月薪,升序排
    select ename ,sal from emp order by sal;

    PS:多字段排序,请在order by后接字段

  7. 查询条件中,可以使用逻辑运算符
    --条件查询
    select * from emp where deptno = 10 and sal>1250;
    select * from emp where deptno = 20 or job='CLERK';
    select * from emp where sal not in (800,1600,2000);

难点分析:


测试中,基础的语句可以提高工作效率

python3 速查参考- python基础 9 -> MySQL基础概念、数据库create、alter、insert、update、delete、select等基础命令的更多相关文章

  1. python3 速查参考- python基础 6 -> 函数编程之参数、变量、作用域、递归、匿名函数 lambda

    函数基础 1. 速查笔记 #-- 函数相关的语句和表达式 myfunc('spam') # 函数调用 def myfunc(): # 函数定义 return None # 函数返回值 global a ...

  2. python3 速查参考- python基础 8 -> 面向对象基础:类的创建与基础使用,类属性,property、类方法、静态方法、常用知识点概念(封装、继承等等见下一章)

    基础概念 1.速查笔记: #-- 最普通的类 class C1(C2, C3): spam = 42 # 数据属性 def __init__(self, name): # 函数属性:构造函数 self ...

  3. python3 速查参考- python基础 7 -> 函数编程之 装饰器、生成器

    装饰器 1.速查笔记 #-- 函数装饰器:是它后边的函数的运行时的声明 由@符号以及后边紧跟的"元函数"(metafunction)组成 @staticmethod def sme ...

  4. python3速查参考- python基础 4 -> 元组 + 字典 + 字符串 的学习

    元组 元组:特点就是内容不可变,算只读的列表,可以被查询,不能被修改 a = 2, print(a) print(type(a)) b = ('a','b','c') print(b[1]) 运行结果 ...

  5. python3速查参考- python基础 5 -> 常用的文件操作

    文件的打开方式 打开方式 详细释义 r  以只读方式打开文件.文件的指针会放在文件的开头.这是默认模式. rb  以二进制只读方式打开一个文件.文件指针会放在文件的开头. r+  以读写方式打开一个文 ...

  6. python3速查参考- python基础 3 -> -> while循环实例 + Continue && break的应用 + 列表的初步学习

    while语句的应用 实例如下: """ 述求:用户登录系统,最多只能登录三次 第三次失败后,程序终止 """ user_table = { ...

  7. python3速查参考- python基础 1 -> python版本选择+第一个小程序

    题外话: Python版本:最新的3.6 安装注意点:勾选添加路径后自定义安装到硬盘的一级目录,例如本人的安装路径: F:\Python 原因:可以自动添加python环境变量,自动关联.py文件,其 ...

  8. python3速查参考- python基础 2 -> if语句应用 + while循环应用

    if语句应用之——求最大值 """ 求三个数字中的最大值,并打印出来 """ a = int(input("a:")) ...

  9. mysql字符集,insert,update,delete,select

    发现有错误:数据太长了.//查看数据库的所有编码:show variables like 'character%';-----+| character_set_client     | utf8    ...

随机推荐

  1. Gym - 101981B Tournament (WQS二分+单调性优化dp)

    题意:x轴上有n个人,让你放置m个集合点,使得每个人往离他最近的集合点走,所有人走的距离和最短. 把距离视为花费,设$dp[i][k]$表示前i个人分成k段的最小花费,则有递推式$dp[i][k]=m ...

  2. duilib学习领悟(1)

    学习duilib已经有一段时间,一直没时间写总结,今天得出空来,写写心得体会! 由于本人知识有限,若有错误地方,望批评指正.多谢.! 初识duilib 刚开始接触duilib的时候,觉的他好神奇,整个 ...

  3. summernote 富文本编辑器限制输入字符长度

    项目中需要一个比较简单的富文本编辑器,于是选中了summernote .虽然比较轻量,但是在开发中也遇到了几个问题,在此记录一下. 1:样式和bootstrap冲突,初始化之后显示为: .note-e ...

  4. BZOJ 2124 (线段树 + hash)

    题目链接:https://www.lydsy.com/JudgeOnline/problem.php?id=2124 题意:给一个1到N的排列{Ai},询问是否存在1<=p1<p2< ...

  5. “景驰科技杯”2018年华南理工大学程序设计竞赛 A. 欧洲爆破(思维+期望+状压DP)

    题目链接:https://www.nowcoder.com/acm/contest/94/A 题意:在一个二维平面上有 n 个炸弹,每个炸弹有一个坐标和爆炸半径,引爆它之后在其半径范围内的炸弹也会爆炸 ...

  6. BZOJ 3630: [JLOI2014]镜面通道 (网络流 +计算几何)

    水能流过的地方光都能达到 呵呵.jpg 那就是裸的最小割(割开上边界和下边界)了- 判矩形和圆相交的时候就用圆心对矩形求一次点到矩形的最近距离(类似KD树的预估函数). CODE #include & ...

  7. Vmware虚拟机 centos7设置固定IP地址

    参考文章:https://www.cnblogs.com/lfhappy/p/10798400.html      https://blog.csdn.net/u014466635/article/d ...

  8. 牛客寒假算法基础集训营2 【处女座与复读机】DP最小编辑距离【模板题】

    链接:https://ac.nowcoder.com/acm/contest/327/G来源:牛客网 一天,处女座在牛客算法群里发了一句“我好强啊”,引起无数的复读,可是处女座发现复读之后变成了“处女 ...

  9. P2502 [HAOI2006]旅行 最小生成树

    思路:枚举边集,最小生成树 提交:1次 题解:枚举最长边,添加较小边. #include<cstdio> #include<iostream> #include<algo ...

  10. 如何在 Laravel 中灵活的使用 Trait

    如何在 Laravel 中灵活的使用 Trait  Laravel/ 3个月前/  1740 /  4 / 更新于 3个月前   @这是小豪的第九篇文章 好久没有更新文章了,说好了周更结果还是被自己对 ...