mysql数据库的安装:

选择 typical 类型 》install》next》next》 configure teh mysql server now 打勾 点击finish detailed configuration developer machine multifunctional database decisionsupport (dss)/olap character set 字符编码 utf8 设置密码 enable root access from remote machines 打勾 允许远程机器访问 exeute finish

数据库 mysql

数据库是用于维护业务数据,共享数据资源的管理系统。

为什么要用数据库管理数据?

第一:数据库可以不断的新增和更新数据,并且可以分布式存储。

第二:数据是企业最重要的资源。需要定期备份,数据库有自带功能强劲的备份功能。

第三:数据库系统可以做大量的数据计算货分析。为企业领导层做出正确决策提供帮助。

数据库的结构:

第一:数据库(Database)

第二:数据表(Table)每个数据库有多个表。

第三:字段(Field)每个表有多个字段。

第四:记录(Record)记录就是表中每条具体的数据。

目前流行的数据库都以sql语言为标准,都是关系型数据库。

非关系数据库也有。使用不多。

SQL语言简介

它是结构化查询语言,用于查询,更新,管理数据库。

SQL分三个部分:

第一:数据库定义语言(DDL),用来建库建表建列等,比如输入语句:create table(创建表),drop table(删除表)等。

第二:数据库操作语言(DML),用于数据表数据的增加(insert),删(delete),查(select),改(update)

第三:数据库控制语言(DCL),比如事务的提交或者回滚,权限的控制,网络远程访问的配置等。比如语句有:grant,commit ,rollback。

SQL语言内的数据类型

常用的数据类型:数值型,字符型,文本型,日期型。

数值型有:整型(int) 浮点型(float) 双精度(double)

字符型有:char(固定长度字符),varchar(可变长度字符),

文本类型有:text

日期类型:datetime,timestamp(后者范围比前者小。但是占的存储空间更加小)

MYSQL 5.0 的dos操作界面

输入密码进入

通过命令:show databases; 回车进入数据库中的库。

现在要如何使用库呢?首先进入。

通过命令:use mysql; 回车进入mysql这个库。

接着就打开这个库内的表(tables)了

通过命令:show tables;回车打开库中所有表。

接着查询表中数据。

通过命令:select * from 输入表名 ;回车就查询到这个表中所有数据。

通过以上的命令简单操作数据库。

库和表的创建 亏a特 通过命令:create database 数据库名字 例如:

create database testmysql;这样就创建了一个库。

使用命令:use testmysql;就可以打开这个库。

接着创建表

create table 表名(num int not null auto_increment ,name varchar(20),primary key(某个字段 比如:num));

varchar(10)必须要给长度。

同一个库不能有相同的数据表。如果要覆盖已有的可以先删除在创建新表。 急哦扑 drop table if exists test1;假如存在test1表就删除。

create table test1(里面是字段,主键等信息)重新创建

增/删/查/改语句的掌握 音色特 给表中增加数据 通过语句:insert into 表名 (字段1,字段2。。。)values(值1,值2。。。); va 溜 也可以直接insert into 表名 values(值1,值2。。。); 值有 '2' '名字' 无论数字和中文都用单引号 框起来! 主键可以设置为null 自动增长 什么是主键 :主键是唯一用来定位某条数据的,所以主键值是不能重复的(不能重复也叫主键约束)

删除表内数据 通过语句:delete from 表名 where 条件 切记这里如果不加入where条件就会删除整个表的所有数据。

where条件后面的语句是计算真或者假的。比如删除所有名字为zlb2的人。

delete from car1 where name="zlb2";

where条件可以有多个。比如:

zlb2的人。

DELETE from orderinfo where ordernum='2185' and sex='0'; 删除ordernum为2185 并且 sex 为0的数据

delete from car1 where name="zlb2" (and or连接起来起到并且或者的意思); 色la可特 挑选 查询数据 通过语句:select * from 表名 where条件 这里的*表示所有列 如果需要查询你需要查询的列可以这样:select 这里输入列名可以多个 from car1;

where在这里的用法和delete一样

select * from users where toid='11';

在查询的时候可以给表取一个别名 表名 as 别名

select c.name from car1 as c

有时候我们会忘记name存入的是什么数据

c.name as '姓名' 当你查询数据的时候name那一列就显示的是姓名。

只用在命令行中。

更新和修改数据:通过语句:

修改数据 update 表名 set 字段1=值1 ,字段2=值2 where 条件

update testafei set testname='abc' where toid=9;

where的用法和其他语句一样,不加where条件,那么就会修改这个表的所有数据

mysql 高级知识

第一。多表关联

OA系统,部门和员工的管理

外键 foreign key 用于表示多个表之间的关联关系。保持数据的完整性

多表查询 建立了主外键关联的多表

第一:内连接查询:inner join on 只连接匹配的行 on后面是条件 使用别名

例如:select * from teachers_sql as t INNER JOIN student as s on t.teacher_id=s.id;

当然没有主外键关联的多表也可以查这样询。

上面的表达式和下面这个一样。

select * from teachers_sql as t ,student as s where t.teacher_id=s.id;

左连接查询:left join on 经常考试

以左表为准,去右表找数据,(左表数据全部出来) 右边表单如果没有匹配的数据则以null补空位。on 后面是条件

看查询表达式:

select * from teachers_sql t LEFT JOIN student s on t.teacher_id=s.id;

右连接 RIGHT JOIN

以右表为准,去右表找数据,如果左边表单没有匹配的数据则以null补空位。on 后面是条件

看查询表达式:

select * from teachers_sql as t RIGHT JOIN student as s on t.teacher_id=s.id;

where条件

where后面一般连接着比较运算符,如>,

select * from student where age BETWEEN 22 and 24;

模糊查询:like

%表示任意字符;_ 表示单个字符。

select * from student as s where s.name like "%碧%";

关键字in 可以根据范围进行子查询,

select* from student as s where s.id in(1,2)

in内部是一个查询。看下面查询姓名为莫建立和何小林的人

select * from student as s where s.stuname in ( select stuname from student as a where s.stuname='莫建立' or s.stuname='何小林' );

select * from student as s where s.age in ( select s.age from student as a where s.age='20' or s.age='25' );

传入其他表的数据类似内连接 student表内age字段有符合条件的就会被查询出来,更多的时候in内的select语句是查询的主键.

select * from student as s where s.age in ( select t.teacher_age from teachers_sql as t where t.teacher_age=29 or t.teacher_age=31 or t.teacher_age=35 );

排序:order by asc/desc

asc:升序,默认

desc:降序

例如:select * from student as s order by s.age ase;

分组查询:group by 意思分组依据

面试问:根据什么就group by 什么

以下语句查询一个表中年龄最大的学生信息。 select * from student s where age in (SELECT MAX(s1.age) from student s1);

聚合函数:sum() mysql内置函数,用于求和。还有avg()平均,count()计数 max() min()等

select s.age,SUM(t.teacher_age) from student as s ,teachers_sql as t where t.studentid=s.id GROUP BY s.age;

以上代码命令就是根据年龄求和。

select * from student as s,grade as g where s.gradeid=g.toid AND s.age in(select MAX(s1.age) from student as s1 GROUP BY s1.gradeid );

以上查询每个班级 年龄最大的学生信息

having子句 在分组后过滤数据后面的条件一般包含聚合函数

select t.teacher_id ,MAX(s.age) from student as s,teachers_sql as t where s.tcid=t.teacher_id GROUP BY t.teacher_id HAVING MAX(s.age)<=200;

limit 字句限定结果数

select * from student LIMIT 10,10;

表示显示从第十条到第二十条数据

以下代码:查询每个班级中年龄最大的学生信息

SELECT * from student s1 where s1.age in( select MAX(s.age) from student s GROUP BY s.claid );

以下代码:关联2个表查询每个班级的信息并且显示这个班级中年龄最大的学生信息

select * from student s INNER JOIN class c on s.claid=c.num where s.age in( select MAX(age) from student GROUP BY claid) ORDER BY c.num;

这个语句如果一个班级中最大年龄学生年纪是10岁,并且还有一个学生年纪是9岁,而且另一个班级最大年纪的学生年纪是9岁,这时候就会把那个班级中的年龄为9岁的学生也查询出来。如果要避免这个问题,用下列查询语句:

select * from student s1 inner join (select MAX(age) maxage,claid from student GROUP BY claid) s2 on s1.age=s2.maxage and s1.claid=s2.claid;

以下代码:查询每个班级中有那些学生名字。并且显示最大年龄

select GROUP_CONCAT(s.studentname), MAX(s.age) from student s GROUP BY s.claid

Navicat 发音 :na v k特

INSERT into studenttable values(null,'张毅承','1','1','四川成都');

select * FROM studenttable where studentage='15';

update studenttable set studentname='张三丰' where studentname='张理斌' and studentage='15';

update studenttable set studentaddress='湖北武汉' where studentage='17';

DELETE from studenttable where studentage='18';

佛锐 king foreign key 外键 主外键关联 只是为了保证数据完整性。什么是完整性?就是保证你添加数据的时候必须和另外 一个表的主键对应的上。不做主外键关联同样可以查询出来 只不过你需要自己注意不要没法和另外一个表主键对不上

mysql数据库的安装和使用方法_Mysql数据库的安装和使用相关推荐

  1. 利用mysql上传木马_通过Mysql语句生成后门木马的方法_MySQL

    通过Mysql 的语句生成后门木马的方法! SELECT * FROM `vbb_strikes` WHERE 1 union select 2,3,0x3C3F7068702073797374656 ...

  2. mysql上传木马_通过Mysql语句生成后门木马的方法_MySQL

    通过Mysql 的语句生成后门木马的方法! SELECT * FROM `vbb_strikes` WHERE 1 union select 2,3,0x3C3F7068702073797374656 ...

  3. NOSQL之Neo4j:Neo4j的简介、安装、使用方法(Neo4j搭配JDK安装的图文教程)之详细攻略

    NOSQL之Neo4j:Neo4j的简介.安装.使用方法(Neo4j搭配JDK安装的图文教程)之详细攻略 目录 Neo4j的简介 Cypher语言 Neo4j之Cypher:Cypher查询语言的简介 ...

  4. mysql英文版数据库备份方法_mysql数据库太大了如何备份与还原

    命令:mysqlhotcopy 这个命令会在拷贝文件之前会把表锁住,并把数据同步到数据文件中,以避免拷贝到不完整的数据文件,是最安全快捷的备份方法. 命令的使用方法是: mysqlhotcopy -u ...

  5. mysql命令导出方法_MySQL数据库导出方法大全(命令行+navicat)

    由于前段时间刚做完数据库课设,想导出数据库文件,在朋友的机器上跑一跑.由于我使用的是界面化的mysql,理所当然地认为可以在界面上找到导出数据库的操作选项,结果自己一个人摸索了半天,以失败告终.上网一 ...

  6. mysql有关运维的面试题_mysql数据库运维面试题

    1.登陆数据库 (1)单实例 mysql -uroot -poldboy (2)多实例 mysql -uroot -poldboy -S /data/3306/mysql.sock 2.查看数据库版本 ...

  7. mysql备份的数据太大怎么办_mysql数据库太大了如何备份与还原

    命令:Mysqlhotcopy 这个命令会在拷贝文件之前会把表锁住,并把数据同步到数据文件中,以避免拷贝到不完整的数据文件,是最安全快捷的备份方法. 命令的使用方法是: mysqlhotcopy -u ...

  8. mysql远程连接数据库的二种方法_mysql 远程连接数据库的二种方法

    mysql 远程连接数据库的二种方法 一.连接远程数据库: 1.显示密码 如:MySQL 连接远程数据库(192.168.5.116),端口"3306",用户名为"roo ...

  9. mysql数据库的体系结构包括什么组件_MySQL数据库的体系结构

    MySQL体系结构遵循C/S模型,即客户机/服务器模型,MySQL客户机通过原生的多种接口,可以与MySQL服务器进行交互.MySQL数据库是单进程多线程的架构,同windows平台下的Oracle数 ...

最新文章

  1. 机器学习(MACHINE LEARNING)协方差与相关系数
  2. ubuntu卸载nvidia驱动_解决Ubuntu18.04循环登录问题 - 卸载NVIDIA驱动 启用Nouveau(1)
  3. weblogic安全漫谈
  4. 前端学习(2064):vue的生命周期函数有什么
  5. php判断一个字符串是否为纯数字,php判断变量是否为纯数字字符串的方法
  6. 互联网晚报 | 10月30日 星期六 | 微软市值超越苹果;华为前三季度销售收入4558亿元;《长津湖》成2021全球票房冠军...
  7. 归并python_python基本算法之实现归并排序(Merge sort)
  8. 蓝桥杯:2018年第九届蓝桥杯省赛B组第七题—螺旋折线
  9. 线性可分支持向量机与硬间隔最大化
  10. canvas应用之各种游戏转盘
  11. 计算机软科排名澳门科技大学,2016年软科中国两岸四地大学排名正式发布
  12. 英飞凌XC2000系列——汽车ECU Bootloader 设计详解
  13. 软件企业的基本条件和认定流程
  14. JavaScript 变量命名规范总结
  15. 读书笔记:大型网站技术架构-核心原理与案例分析
  16. nacos 安装包下载 linux+windows
  17. OC.Gen-X:一键生成黑苹果 OpenCore EFI 引导文件
  18. CouchDB的简单使用
  19. Godaddy 添加子域名
  20. 为什么农民收入少,到底为什么

热门文章

  1. 站内信系统数据库设计
  2. LATEX教程第四讲——那些不得不说的宏包(下)
  3. SigFox Vs. LoRa:技术和商业模式之间的比较
  4. 安装mysql报msvcr100_解决安装mysql 提示msvcr100.dill 丢失,的最快方法
  5. Ubuntu18.04实装autoware1.14.0(ROS Melodic、QT5.9.5、BagRunning)
  6. 倍福--电子凸轮表绘制
  7. 怎样快速将PDF文件旋转
  8. 赴日工作之在留换签证
  9. lan9252、lan9253和lan9254参数比较
  10. buu-[Zer0pts2020]easy strcmp