一、数据库简介
1、Structured Query Language (结构化查询语言)
2、SQL:工业标准。(各个数据库厂商都支持)
SQL-Server:对标准进行了扩展。TSQL   方言
Oracle:对标准进行了扩展。PLSQL

规定:
shell>window下命令
mysql>mysql中的命令,一般以;结尾(进入数据库)

二、安装MySQL数据库
如何验证安装是否成功!
shell>mysql -u root -psorry
显示所有的数据库
mysql>SHOW DATABASES;
除了test,其他2个数据库不要动。
*****三、SQL语句
 1、DDL:Data Definition Language(数据定义语言)
 关键字:CREATE ALTER DROP(操作对象:数据库和表结构。就是定义数据库或表的结构)
 ------------------------------------------------------------------
创建一个名称为mydb1的数据库。
mysql>CREATE DATABASE mydb1;
查看数据库的创建细节
mysql>SHOW CREATE DATABASE mydb1;
创建一个使用gbk字符集的mydb2数据库。
mysql>CREATE DATABASE mydb2 CHARACTER SET gbk;
创建一个使用utf8字符集,并带校对规则的mydb3数据库。
mysql>CREATE DATABASE mydb3 CHARACTER SET utf8 COLLATE utf8_general_ci;
查看当前数据库服务器中的所有数据库
mysql>SHOW DATABASES;
查看前面创建的mydb2数据库的定义信息
mysql>SHOW CREATE DATABASE mydb2;
删除前面创建的mydb2数据库
mysql>DROP DATABASE mydb2;

查看服务器中的数据库,并把其中mydb1库的字符集修改为gbk;
mysql>ALTER DATABASE mydb1 CHARACTER SET gbk;
备份test库中的数据,并恢复

备份:
shell>mysqldump -h localhost -u root -psorry test>c:/test.sql
恢复数据库:(删除掉test数据库)
创建test数据库
mysql>CREATE DATABASE test;
mysql>USE test;
恢复:
方式一:
mysql>SOURCE C:/test.sql;
//选择数据库
mysql>USE test; 
方式二:
shell>mysql -u root -psorry test<c:/test.sql
        
显示数据库中的所有表格
mysql>SHOW TABLES;
-------------------------------------------------
创建员工信息表
mysql>CREATE TABLE employee(
 id int,
 name varchar(100),
 gender varchar(10),
 birthday date,
 entry_date date,
 job varchar(100),
 salary float(8,2),
 resume varchar(200)
);
查看数据库中所有的表格
mysql>SHOW TABLES;
查看某张表格的结构
mysql>DESC employee;
在上面员工表的基本上增加一个image列。
mysql>ALTER TABLE employee ADD (image blob);
修改job列,使其长度为60。
mysql>ALTER TABLE employee MODIFY job varchar(60);
删除gender列。
mysql>ALTER TABLE employee DROP gender;
表名改为user。
mysql>RENAME TABLE employee TO user;
修改表的字符集为utf-8
mysql>ALTER TABLE user CHARACTER SET utf8;
列名name修改为username
mysql>ALTER TABLE user CHANGE name username varchar(100);

*2、DML:Data Manipulation Language(数据操作语言)
 关键字:INSERT UPDATE DELETE(操作对象:表中的数据。就是操作表中的记录用的)
 ------------------------------------------------------------------
在MySQL中,字符或字符串或日期类型的数据要使用单引号引起来。关键字NULL表示空值,不同于空字符串值。''
使用insert语句向表中插入三个员工的信息。
mysql>INSERT INTO user (id,username,birthday,entry_date,job,salary,resume) VALUES (1,'huangshanshan','1992-09-08','2012-11-15','CEO','10000','beautiful girl');
mysql>INSERT INTO user VALUES (2,'niuyang','1992-09-08','2012-11-15','CTO','10000','beautiful boy');
mysql>INSERT INTO user VALUES (3,'于连林','1992-09-08','2012-11-15','CMO','10000','帅锅');
告诉服务器客户端用的编码是什么?
mysql>SET character_set_client=gbk;
查看数据
mysql>SELECT * FROM user;
解决返回的数据中文乱码
mysql>SET character_set_results=gbk;
MySQL中的各种编码:
查看有哪些地方用到编码
mysql>SHOW VARIABLES LIKE 'character%';
character_set_client:此变量通知服务器客户端用的是什么编码
character_set_connection:此变量通知服务器客户端链接时用的是什么编码
character_set_database:数据库用的编码
character_set_results:是数据库给客户端返回时使用的字符集设定,如果没有指明,使用服务器默认的字符集。      
character_set_server:是服务器安装时指定的默认字符集设定
character_set_system :是数据库系统使用的字符集设定。

将所有员工薪水修改为5000元。
mysql>UPDATE user SET salary=5000;
将姓名为’niuyang’的员工薪水修改为30000元。
mysql>UPDATE user SET salary=30000 WHERE username='niuyang';
将姓名为’huangshanshan’的员工薪水修改为20000元,job改为HR。
mysql>UPDATE user SET salary=20000,job='HR' WHERE username='huangshanshan';
将于连林的薪水在原有基础上增加10000元。 
mysql>UPDATE user SET salary=salary+10000 WHERE username='于连林';

删除表中名称为’于连林’的记录。
mysql>DELETE FROM user WHERE username='于连林';
删除表中所有记录。(一条一条地删除)
mysql>DELETE FROM user;
使用truncate删除表中记录。(摧毁整张表,然后重建表结构)
mysql>TRUNCATE user;

------------------------------------------------------------------
 *3、DQL:Data Query Language(数据查询语言)
 关键字:SELECT
查询表中所有学生的信息。
mysql>SELECT id,name,chinese,english,math FROM student;
或者SELECT * FROM student;
查询表中所有学生的姓名和对应的英语成绩。
mysql>SELECT name,english FROM student;
过滤表中重复数据。
mysql>SELECT DISTINCT english FROM student;

在所有学生语文分数上加10分特长分。
mysql>SELECT id,name,chinese+10 FROM student;
统计每个学生的总分。
mysql>SELECT id,name,chinese+english+math FROM student;
使用别名表示学生分数。(AS可以省略)
mysql>SELECT id,name,chinese+english+math AS 总分 FROM student;
mysql>SELECT id,name,chinese+english+math 分 FROM student;

查询姓名为wu的学生成绩
mysql>SELECT id,name,chinese,english,math FROM student WHERE name='王五';
查询英语成绩大于90分的同学
mysql>SELECT name,english FROM student WHERE english>90;
查询总分大于200分的所有同学
mysql>SELECT name,chinese+english+math AS 总分 FROM student WHERE (chinese+english+math)>200;
 ------------------------------------------------------------------
 (选修)4、DCL:Data Control Language(数据控制语言)
 GRANT等
                                                                                                        -----来自黑马王**

SQL基本语句学习(上)相关推荐

  1. MySQL学习之一条SQL更新语句的执行

    文章目录 前言 一.MySQL更新操作大致流程 二.redo log介绍 三.binlog介绍 四.MySQL更新操作的具体流程 前言 今天我们通过一条SQL更新语句,了解MySQL的日志系统 一.M ...

  2. 2. SQL语句学习

    SQL语句学习 1.3 SQL语句学习 1.3.1SQL基本概念 1.3.2.学习SQL的方向 1.3.3了解示例数据库中的数据表 1.3.4了解示例数据库中的数据表字段 1.3 SQL语句学习 1. ...

  3. SQL知识点、SQL语句学习

    SQL知识点.SQL语句学习 原文:https://www.cnblogs.com/klb561/p/10344271.html 一. 数据库简介和创建 系统数据库 在安装好SQL SERVER后,系 ...

  4. sql select 语句_学习SQL:SELECT语句

    sql select 语句 The SELECT statement is probably the most important SQL command. It's used to return r ...

  5. SQL语句学习之SQL基础的表创建以及添加数据

    SQL语句学习之SQL基础的表创建以及添加数据 学习目标1: 一周内掌握SQL基础语句 tip:主要是在牛客网(牛客网)上进行练习,里面有在线编程,可以直接运行,而且有解题的思路,比较清晰,而且容易了 ...

  6. Database之SQLSever:SQLSever数据库管理学习并深入理解SQL命令语句进阶综合篇《初级→中级→高级》(持续更新,建议收藏)

    Database之SQLSever:SQLSever数据库管理学习并深入理解SQL命令语句进阶综合篇<初级→中级→高级>(持续更新,建议收藏) 目录 SQLSever数据库管理学习并深入理 ...

  7. MySQL学习记录 (四) ----- SQL数据管理语句(DML)

    相关文章: <MySQL学习记录 (一) ----- 有关数据库的基本概念和MySQL常用命令> <MySQL学习记录 (二) ----- SQL数据查询语句(DQL)> &l ...

  8. sql查询语句 -牛客学习笔记

    sql查询语句 1. limit 使用LIMIT限制结果集 LIMIT 子句可以被用于强制 SELECT 语句返回指定的记录数. LIMIT 接受一个或两个数字参数.参数必须是一个整数常量. 如果只给 ...

  9. DBMS/Database:数据库管理的简介、安装(注意事项等)、学习路线(基于SQLSever深入理解SQL命令语句综合篇《初级→中级→高级》/几十项代码案例集合)之详细攻略

    DBMS/Database:数据库管理的简介.安装(注意事项等).学习路线(基于SQLSever深入理解SQL命令语句综合篇<初级→中级→高级>/几十项代码案例集合)之详细攻略 目录 DB ...

最新文章

  1. 一步一步学Silverlight 2系列(10):使用用户控件
  2. vsftpd学习笔记
  3. webpack dev server 和 sublime text 配合时需要注意的地方
  4. 《王者荣耀》主策划Xavier分享腾讯游戏10年在职经历
  5. 你试过不用if撸代码吗?
  6. ios请求头解决参数中文乱码_花了一天时间就解决了一个的请求头传参参数格式bug...
  7. java中计时器的用法Timer和TimerTask的用法__java中利用Timer与TImerTask 计时器间隔执行任务...
  8. dubbo配置文件xml校验报错
  9. 目标检测——各个框架下Tensor和矩阵的维度次序
  10. DataGrid与SQL Server 2000数据绑定
  11. Linux中的权限管理命令-chmod
  12. 软考高项优秀范文——论信息系统项目的风险管理
  13. 百度地图绘制自定义区域
  14. Unity URP Rendering Path对比
  15. 643、子数组最大平均数 I
  16. java 序列化版本号_序列化版本号serialVersionUID的作用
  17. 2021-10-27 基于电影数据库的简单查询(数据库第二次实验)
  18. 指定的服务器标记为删除,如何解决“指定的服务已被标记为删除”错误
  19. 每日软件分享:去图片水印免费软件有哪些?
  20. 在 React JS 中使用 JSON 占位符的Web 简易应用程序

热门文章

  1. 小程序毕设作品之微信积分商城小程序毕业设计成品(1)开发概要
  2. Stack的概念和算法应用
  3. Mapbox Android学习笔记(8)离线地图
  4. 有关单元测试的 5 个建议【每日小技巧】
  5. 2014世界杯预测与开源大数据
  6. 函数的递归调用-年龄增大问题
  7. 网络自动化运维(NetDevOps)创作者推荐
  8. 用计算机画图教案评价,小学四年级信息技术优秀教学设计及评析《电脑图案设计师》...
  9. 基于PHP的协同办公系统设计
  10. 小狐狸对于个人职业规划的思考