python3 速查参考- python基础 9 -> MySQL基础概念、数据库create、alter、insert、update、delete、select等基础命令
前置步骤:
下载一个绿色版的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)
- 数据库操作(DDL)
--创建数据库
create database db_name; --删除数据库
drop database db_name; --切换数据库
use db_name; --查看当前选择的数据库
select database();使用navicat新建表
在相应的数据库下,新建表,设置完字段信息后,保存,设置表明,右击新建的表,查看对象信息,点击DDL - 表操作(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)
- 数据的插入
--全字段的插入
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'); - 将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会自动增长
- 使用update修改数据
--UPDATE
update t_student set address ='目标值' where id =5; - 删除数据
--DELETE 整个表中数据
delete from t_student
--删除id为5的数据
delete from s_student where id =5;
step4: DQL-select语句操作
- 创建dept表
CREATE TABLE `dept` (
`DEPTNO` varchar(255) NOT NULL,
`DNAME` varchar(255) DEFAULT NULL,
`LOC` varchar(255) DEFAULT NULL
); - 创建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
); - 使用算术表达式
--查询所有员工的年薪
select ename ,sal*12 '年薪' from emp; - 字段别名的设置
as关键字可以不用 - 去除重复项
--去除重复项
select distinct deptno from emp; - 排序:order by,默认为升序asc (↓最上数据为小,下面的数据大),desc为降序 (↓由大到小)
--按月薪,升序排
select ename ,sal from emp order by sal;PS:多字段排序,请在order by后接字段
- 查询条件中,可以使用逻辑运算符
--条件查询
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等基础命令的更多相关文章
- python3 速查参考- python基础 6 -> 函数编程之参数、变量、作用域、递归、匿名函数 lambda
函数基础 1. 速查笔记 #-- 函数相关的语句和表达式 myfunc('spam') # 函数调用 def myfunc(): # 函数定义 return None # 函数返回值 global a ...
- python3 速查参考- python基础 8 -> 面向对象基础:类的创建与基础使用,类属性,property、类方法、静态方法、常用知识点概念(封装、继承等等见下一章)
基础概念 1.速查笔记: #-- 最普通的类 class C1(C2, C3): spam = 42 # 数据属性 def __init__(self, name): # 函数属性:构造函数 self ...
- python3 速查参考- python基础 7 -> 函数编程之 装饰器、生成器
装饰器 1.速查笔记 #-- 函数装饰器:是它后边的函数的运行时的声明 由@符号以及后边紧跟的"元函数"(metafunction)组成 @staticmethod def sme ...
- python3速查参考- python基础 4 -> 元组 + 字典 + 字符串 的学习
元组 元组:特点就是内容不可变,算只读的列表,可以被查询,不能被修改 a = 2, print(a) print(type(a)) b = ('a','b','c') print(b[1]) 运行结果 ...
- python3速查参考- python基础 5 -> 常用的文件操作
文件的打开方式 打开方式 详细释义 r 以只读方式打开文件.文件的指针会放在文件的开头.这是默认模式. rb 以二进制只读方式打开一个文件.文件指针会放在文件的开头. r+ 以读写方式打开一个文 ...
- python3速查参考- python基础 3 -> -> while循环实例 + Continue && break的应用 + 列表的初步学习
while语句的应用 实例如下: """ 述求:用户登录系统,最多只能登录三次 第三次失败后,程序终止 """ user_table = { ...
- python3速查参考- python基础 1 -> python版本选择+第一个小程序
题外话: Python版本:最新的3.6 安装注意点:勾选添加路径后自定义安装到硬盘的一级目录,例如本人的安装路径: F:\Python 原因:可以自动添加python环境变量,自动关联.py文件,其 ...
- python3速查参考- python基础 2 -> if语句应用 + while循环应用
if语句应用之——求最大值 """ 求三个数字中的最大值,并打印出来 """ a = int(input("a:")) ...
- mysql字符集,insert,update,delete,select
发现有错误:数据太长了.//查看数据库的所有编码:show variables like 'character%';-----+| character_set_client | utf8 ...
随机推荐
- VMware ESXi 和 VMware Server 有区别
VMware ESXi 和 VMware Server 有区别: VMware ESXi 是一个企业级虚拟机管理程序,提供接近本机性能的祼机体系结构.各种旨在提高整合率的功能(例如取消内存复制),以及 ...
- Spring Boot 前期篇
在学习springboot之前,学习一下Spring的java配置. 1. Spring的发展 1.1. Spring1.x 时代 在Spring1.x时代,都是通过xml文件配置bean,随着项目的 ...
- Redis:RedisHelper(5)
/// <summary> /// Redis 助手 /// </summary> public class RedisHelper { /// <summary> ...
- HDU 6049 - Sdjpx Is Happy | 2017 Multi-University Training Contest 2
思路来源于 FXXL - - 一个比较奇怪的地方就是第三步可以不做,也就是ans至少为1,听说场内有提问的,然后 admin 说可以不做- - (wa的我心烦) /* HDU 6049 - Sdjpx ...
- loj6519 魔力环
解题思路 考虑顺时针旋转 \(i\) 步得到的结果,根据Burnside引理,有 \[ Ans=\frac{\sum\limits_{i=0}^{n-1}C(i)}{n} \] \(C(i)\) 为旋 ...
- 【java设计模式】-03抽象工厂模式
抽象工厂 简述 抽象工厂模式(Abstract Factory Pattern):提供一个创建一系列相关或相互依赖对象的接口,而无须指定它们具体的类.在抽象工厂模式中,接口是负责创建一个相关对象的工厂 ...
- 由 Vue 中三个常见问题引发的深度思考
为什么 data 要写成函数,而不允许写成对象? Vue 中常说的数据劫持到底是什么? Vue 实例中数组改变 length 或下标直接赋值什么不能更新视图? http://www.sohu.com/ ...
- Redis 延迟指标监控
Redis 延迟监控框架 Redis 2.8.13 引入了Latency Monitoring的一个新功能,可以帮助我们检查和排查引起延迟的原因. Latecny Monitoring 由如下组成: ...
- Failed to execute goal maven-gpg-plugin 1.5 Sign
问题描述: 解决办法:跳过maven-gpg-plugin <build> <pluginManagement> <plugins> <plugin> ...
- django基础教程(一)
Django是一个开源的网站框架,mvc模式.提供了开发网站经常用的模块 优势:1.数据库 2.用正则匹配网址,传到对应的函数 3.后台 4.模板系统,与样式分开 5,缓存 Diango的组成:1.u ...