MySQL数据库基本操作以及SQL语句
连接mysql的语法
mysql -u用户名 -p密码 [-h主机名] [-P端口号]
在一个mysql服务器中, 可以有多个mysql数据库(本质是一个文件夹)
在一个mysql数据库中, 可以有多个数据库表(本质是一个二进制文件)
在一个mysql表中, 可以有多条记录(数据)
SQL语法
1. 分号结尾
2. 不区分大小写
3. 注释:
-- ,#,/* */
语句分类
DDL 数据定义语言:定义数据库结构, 表结构
DML 数据操作语言:增删改
DQL 数据查询语言:查询
DCL 数据控制语言:用户维护, 权限管理, 安全操作. 一般由DBA完成
DDL:操作数据库、表
数据库操作 CRUD :
create增:
-- 直接创建数据库 db1
CREATE DATABASE db1;
-- 判断是否存在,如果不存在则创建数据库 db2并指定字符集为 gbk
CREATE DATABASE IF NOT EXISTS DB2 DEFAULT CHARACTER SET GBK;
drop删:
-- 删除数据库db1的语法
DROP DATABASE db1;
alter改:
-- 将 db2数据库的字符集改成 utf8
ALTER DATABASE db2 CHARACTER SET utf8;
SELECT查:
-- 查看正在使用的数据库
SELECT DATABASE();
show看:
-- 查看数据库db2的定义信息
SHOW CREATE DATABASE db2;
desc显示表结构:
use换:
-- 改变要使用的数据库
USE db4;
表相关操作:
建表语句:
create table 表名(列的列表);
CREATE TABLE Aniki(
NAME VARCHAR(20),
age INT,
sex CHAR(1),
old_saying VARCHAR(100),
insert_time TIMESTAMP
);
datetime和timestamp的区别?
格式一样的. timestamp不允许为null, 即使指定为null ,也会设置一个默认值, 就是当前系统时间.
字符串类型(必须指定长度)varchar和char的区别?
varchar(20) char(20),varchar是可变长度字符串, 指定的长度是该字符串的最大长度.
char是定长的字符串, 指定的长度就是字符串最终的长度, 如果指定的字符串长度不足, 用空格补齐.
DML:增删改表中数据
插入语句:
insert into 表名 (列的列表) values(值的列表);
INSERT INTO Aniki (NAME,age,sex,old_saying,insert_time) VALUES ('Van', 20, '♂','DeepDarkFantasy',NULL);
INSERT INTO Aniki (NAME,age,sex,old_saying,insert_time) VALUES ('Bili', 20, '♂','乖乖站好',NULL);
删除语句:
delete from 表名 where 条件
DELETE FROM aniki WHERE NAME='Van';
delete 和 truncate的区别?
- delete是DML, 而truncate是DDL. DML可以通过事务管理进行回滚, DDL不能被事务管理.
delete 效率低, 是逐行删除. truncate效率非常高.
修改语句:
update 表名 set 列名1 = 值1, 列名2 = 值2... where 条件
UPDATE aniki SET sex='男' WHERE NAME='Bili';
DQL:查询表中的记录
基础查询
多个字段的查询
select 字段名1,字段名2... from 表名;
注意:
如果查询所有字段,则可以使用*来替代字段列表。
去除重复:distinct
select distinct ... from ... where ... group by... having ... order by ... limit ...
distinct去重, 只是把结果集中的重复记录去除.
计算列:
一般可以使用四则运算计算一些列的值。(一般只会进行数值型的计算)
ifnull(表达式1,表达式2):null参与的运算,计算结果都为null
表达式1:哪个字段需要判断是否为null
如果该字段为null后的替换值。
ifnull()函数替换null值为指定值.
起别名:
as:as也可以省略
条件查询
where子句后跟条件
运算符
、< 、<= 、>= 、= 、<>
BETWEEN...AND
IN( 集合)
IS NULL
and 或 &&
or 或 ||
not 或 !
LIKE:模糊查询
占位符:
%: 任意(0个或者多个)多个任意字符
_: 一个任意字符, 有且只有一个.
MySQL数据库基本操作以及SQL语句的更多相关文章
- MySQL数据库-表操作-SQL语句(二)
1. MySQL多表查询 1.1 外键约束 为了消除多张表查询出现的笛卡尔积的现象,MySQL在建表并进行多表之间的关键查询可以使用外键关联查询. 外键:从表1(sub)的某列引用(ref)另外一个表 ...
- MySQL数据库-表操作-SQL语句(一)
1. 数据库操作与存储引擎 1.1 数据库和数据库对象 数据库对象:存储,管理和使用数据的不同结构形式,如:表.视图.存储过程.函数.触发器.事件等. 数据库:存储数据库对象的容器. 数据库分两种 ...
- mysql数据库之基础SQL语句/语法
SQL是现在进入互联网工作人们的必须技能之一,下面分享自己觉得很nice的SQL基本语句,从网上找了,觉得很不错,就分享给大家!简要介绍基础语句: 1.说明:创建数据库 Create DATABAS ...
- MySQl数据库必会sql语句加强版
这篇承接上一篇<mysql必会sql语句>:http://blog.csdn.net/qq_32059827/article/details/51763950 这一篇属于加强版,问题和sq ...
- MySQL数据库(一)—— 数据库介绍、MySQL安装、基础SQL语句
数据库介绍.MySQL安装.基础SQL语句 一.数据库介绍 1.什么是数据库 数据库即存储数据的仓库 2.为什么要用数据库 (1)用文件存储是和硬盘打交道,是IO操作,所以有效率问题 (2)管理不方便 ...
- 通过MyEclipse工具直接操作数据库,执行sql语句,方便快捷
原文:通过MyEclipse工具直接操作数据库,执行sql语句,方便快捷 通过MyEclipse操作数据库,执行sql语句使我们不用切换多个工具,直接工作,方便快捷.效果如下: 步骤1:通过MyEcl ...
- 如何用VS EF连接 Mysql,以及执行SQL语句 和存储过程?
VS2013, MySQL5.7.18 , MySQL5.7.14 执行SQL语句: ztp_user z = new ztp_user(); object[] obj = new object[] ...
- MySQL数据库(增删改查语句)
MySQL数据库(增删改查语句)一.登录数据库:----> mysql -uroot -proot;(对应用户名和密码)二.SQL语句: 数据定义语言DDL 用来定义数据库.表.列,关 ...
- 【转】MySQL用户管理及SQL语句详解
[转]MySQL用户管理及SQL语句详解 1.1 MySQL用户管理 1.1.1 用户的定义 用户名+主机域 mysql> select user,host,password from mysq ...
随机推荐
- B/S架构和C/S架构介绍
一.C/S架构 C/S架构及其背景 C/S架构是一种比较早的软件架构,主要应用于局域网内.在这之前经历了集中计算模式,随着计算机网络的进步与发展,尤其是可视化工具的应用,出现过两层C/S和三层C/S架 ...
- spring boot 热部署devtools实现(成功,主要是添加依赖后配置setting)
1.devtools spring为开发者提供了一个名为spring-boot-devtools的模块来使Spring Boot应用支持热部署,提高开发者的开发效率,无需手动重启Spring Boot ...
- 解决如何通过循环来使用数据库的值设置jsp的select标签的option值
Select 处的代码: <select name="position"> <span style="white-space:pre"> ...
- Dataphin数据服务系列之--API 配置、管理和消费
研发小哥哥还在为公司里大量 API 只上不下,不可查不可用, 想找的 API 找不到而苦恼吗?业务方小姐姐还在为 API 开发时间长,业务相应不及时而抱怨吐槽吗? 铛铛铛,Dataphin 数据服务 ...
- AshMap如何让hash保持一致
学Java的都知道hashMap的底层是“链表散列”的数据结构也也可以说是hash表.在put的实话先根据key的hashcode重新计算hash值的,而我们又知道hash是一种算法.所以哈希码并不是 ...
- 使用kindeditor直接粘贴本地图片或者是qq截图
我司需要做一个需求,就是使用富文本编辑器时,不要以上传附件的形式上传图片,而是以复制粘贴的形式上传图片. 在网上找了一下,有一个插件支持这个功能. WordPaster 安装方式如下: 直接使用Wor ...
- Codeforces 842C--Ilya And The Tree(dfs+树)
原题链接:http://codeforces.com/contest/842/problem/C 题意:一个以1为根节点的树,每个节点有一个值ai,定义美丽度:从根节点到这个节点的路径上所有ai的gc ...
- 【Java】遍历Map<String,String>
Map<String, String> map = new HashMap<>(); map.put("key1", "value1") ...
- LVS负载均衡中arp_ignore和arp_annonuce参数配置
先简单的介绍下关于LVS负载均衡 LVS(Linux Virtual Server)Linux服务器集群系统 针对高可伸缩,高可用服务的需求,给予IP层和内容请求分发的负载均衡调度解决方法,并在Li ...
- LOJ 2555 「CTSC2018」混合果汁——主席树
题目:https://loj.ac/problem/2555 二分答案,在可以选的果汁中,从价格最小的开始选. 按价格排序,每次可以选的就是一个前缀.对序列建主席树,以价格为角标,维护体积和.体积*价 ...