一、数据库简介

1.数据库系统

1.1数据库

DataBase【简称DB】,指的是长期保存在计算机上的一些数据,按照一定的规则组织起来

意义:可以被多个用户或者多个应用共享【存储,维护和管理数据的集合】

mysql:

sqlite

1.2数据库管理系统

DataBase Management System【简称DBMS】,用来操作和管理数据库的软件,用于建立,使用和维护数据库,为了保证数据库数据的完整性和安全性,用户通过数据库管理系统访问数据库

【数据库和数据库管理系统之间的关系】

数据库:存储,维护和管理数据的集合

数据库管理系统:数据库软件,数据库通过数据库管理系统进行维护和访问

1.3数据库的应用

增删改查

用户访问数据库,实质上是可以进行数据库中数据的删除,增加,修改和查询

2.常见数据库管理系统

1>Oracle(甲骨文):目前比较成功的关系型数据库管理系统,运行稳定,功能齐全,性能超群,技术领先,主要应用在大型的企业数据库领域

2>DB2:IBM(国际商业机器公司)的产品,伸缩性比较强

3>SQL Server:Microsoft的产品,软件界面友好,易学易用,在操作性和交互性方面独树一帜

4>PostgreSQL:加州大学伯克利分校以教学为目地开发的数据库系统,支持关系和面向对象的数据库,属于数据库管理系统

5>MySQL:免费的数据库系统,被广泛引用于中小型应用系统,体积小,速度快,总体拥有成本低,开发源代码,2008年被SUN收购,2009年SUN被Oracle收购

二.数据库的安装

1.安装

1.验证是否安装MySQL

演示命令:
yangyang@yangyang-virtualmachine:~$ mysql -u root -p       #登录MySQL数据库
Enter password:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket     '/var/run/mysqld/mysqld.sock' (2)             #报错,说明数据库没有启动
yangyang@yangyang-virtualmachine:~$ sudo service mysql start       #启动数据库
yangyang@yangyang-virtualmachine:~$ mysql -u root -p
Enter password:                             #输入数据库密码rock1204
Welcome to the MySQL monitor.  Commands end with ; or \g.       #出现左边的信息说明已经安装
Your MySQL connection id is 3
Server version: 5.7.22-0ubuntu0.16.04.1 (Ubuntu)Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> exit       #退出数据库
Bye

2.如果之前有安装 不能使用的话 可按如下步骤卸载

演示命令:
#第一步:依次执行下面的语句
sudo apt-get autoremove --purge mysql-server
sudo apt-get remove mysql-server
sudo apt-get autoremove mysql-server
sudo apt-get remove mysql-common #第二步:清理残留数据
dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P
#这个步骤尽量多执行几次,清理干净

3.重新安装

#####第一步:下载MySQL资源,安装之前请先卸载之前的,一定要卸载干净
https://dev.mysql.com/downloads/file/?id=477124,进入官网之后直接点击No thanks, just start my download,下载下来的是mysql-apt-config_0.8.10-1_all.deb安装包【注意:如果是其他的则有问题】
#####第二步:在终端里输入下面的命令安装下载的发布包
sudo dpkg -i 文件路径+文件名 
也可以cd到文件目录下,直接执行sudo dekg -i mysql-apt-config_0.8.10-1_all.deb

#####第三步:使用以下命令从MySQL APT存储库更新包信息
sudo apt-get update

#####第四步:安装MySQL
sudo apt-get install mysql-server

注意:这里要选择第二个,不然安装之后只有用sudo才能进入MySQL,而且不能使用数据库

2.启动和停止mysql服务

检查MySQL的状态:sudo service mysql status

开启MySQL服务器:sudo service mysql start

关闭MySQL服务器:sudo service mysql stop

三、SQL概述

1.简介

SQL【Structure Query Language】,结构化查询语言

一种标准

2.数据库服务器、数据库和表之间的关系

数据库服务器:在计算机上安装了一个数据库管理系统,该管理程序可以管理多各数据库,一般情况开发人员会针对每个应用创建一个数据库,针对一个数据库创建多个表

3.数据在SQL中的存储形式

举例

User表

id name age

1 lisi 18

2 zhangsan 20

说明:

​ a.表中一行数据被称为一条记录【实体】

​ b.表中的一列数据一类数据

4.SQL的分类

DDL:【Data Definition Language】,数据定义语言,用户创建,修改,删除库和表结构

​ create alter drop

DML:【Data Manipulation Language】,数据操作语言,用于对数据表进行增删改记录

​ insert update delete

DQL:【Data Query Language】,数据查询语言,用于查询表记录

​ select …from

​ where :如果…

​ group …by :分组

​ having,有…

​ order…by:排序

​ limit:限制

DCL:【Data Control Language】,数据控制语言,用户的访问权限和安全级别

四、数据库操作

1.DDL

1.1create创建

语法:

#创建数据库
CREATE DATABASE database_name;#创建表
CREATE TABLE 表名(字段1 字段类型[列级别约束条件]([默认值]),字段2 字段类型[列级别约束条件]([默认值]),….字段n 字段类型[列级别约束条件]([默认值])[表级别约束条件]
)#注意:mysql命令不区分大小写,一般采用小写#第一部分:创建数据库
#使用数据库的流程
#1.安装数据库管理系统【mysql】
#2.登录数据管理系统
#3.在当前数据库管理系统下创建数据库:create database xxx;
#4.查看当前数据库管理系统中有哪些数据库:show databases;
#5.查看当前正在使用的数据库:select  database();
#6.切换到需要工作的数据库:use  xxx;
#7.修改数据库编码【只修改一次】安装完mysql后,默认的编码格式为latin1,数据库中存储中文,则会出现乱码的错误,将数据库中的编码格式修改为能够识别中文的编码格式,比如:utf-8,gbk等#a.重启一个新的终端,cd /etc/mysql#b.打开文件vim my.cnf#c.在my.cnf内部引用另外两个目录/etc/mysql/conf.d//etc/mysql/mysql.conf.d/#d.进入mysql.conf.d,查看内容,ls#e.打开mysqld.cnf,注意:最好使用超级管理员的权限打开在[mysql]下面添加一行内容character-set-server=utf8#f.保存退出,重启mysql服务:service mysql restart,输入开机密码授权#g.回到原来数据库的终端,exit退出数据库,#h.重新登录数据库,输入\s查看是否修改成功#注意:在当前的数据库下,如果插入中文,发现乱码,则删除该数据库,重新创建一个新的数据库#8.退出数据库:quit或者exit#9.在当前数据库下面创建数据表

演示命令

演示命令:select version();     #查看当前数据库的版本
+-------------------------+
| version()               |
+-------------------------+
| 5.7.24-0ubuntu0.16.04.1 |
+-------------------------+
1 row in set (0.00 sec)mysql> select now();      #查看数据库中的时间
+---------------------+
| now()               |
+---------------------+
| 2018-12-24 09:28:08 |
+---------------------+
1 row in set (0.00 sec)mysql> quit
Bye#第二部分:创建表
c.需求:创建一个员工表字段               属性id                整型name          字符型gender           字符型birthday     日期型entry_date       日期型job              字符型salary           整型#1.切换到指定的数据库下use db
#2.创建数据表create table 表名()
#3.查看当前数据库下所有的表show tables;
#4.查看一个表具体的字段信息desc 表名;
1.2alter操作

a.语法:

#1.修改表名
语法规则:ALTER TABLE old_table_name RENAME [TO] new_table_name#2.修改字段的数据类型
语法规则:ALTER TABLE table_name MODIFY 字段名 数据类型
修改完成之后可以查看DESC table_name检验结果#3.修改字段名
语法规则:ALTER TABLE table_name CHANGE 旧字段名 新字段名 数据类型#4.添加字段
语法规则:ALTER TABLE table_name ADD 新字段名 数据类型 [约束条件] [FIRST|AFTER 已经存在的字段名]#5.删除字段
语法规则:ALTER TABLE table_name DROP 字段名#6.修改字段的排列位置
语法规则:ALTER TABLE table_name MODIFY 字段1 数据类型 FIRST|AFTER 字段2first: 设置成第一个after 字段2: 在指定字段2的后面#7.删除表的外键约束
语法规则:ALTER TABLE table_name DROP FOREIGN KEY 外键约束名#8.删除数据表
#删除没有被关联的表
语法规则:DROP TABLE [IF EXISTS] 表1,表2...
#删除被其他表关联的的表
直接删除会出现错误的,操作: 先解除关联 再进行删除

b.常用数据类型

1.数字数据类型
#- INT - 正常大小的整数,可以带符号。如果是有符号的,它允许的范围是从-2147483648到2147483647。如果是无符号,允许的范围是从0到4294967295。 可以指定多达11位的宽度。
- TINYINT - 一个非常小的整数,可以带符号。如果是有符号,它允许的范围是从-128到127。如果是无符号,允许的范围是从0到255,可以指定多达4位数的宽度。
- SMALLINT - 一个小的整数,可以带符号。如果有符号,允许范围为-32768至32767。如果无符号,允许的范围是从0到65535,可以指定最多5位的宽度。
- MEDIUMINT - 一个中等大小的整数,可以带符号。如果有符号,允许范围为-8388608至8388607。 如果无符号,允许的范围是从0到16777215,可以指定最多9位的宽度。
- BIGINT - 一个大的整数,可以带符号。如果有符号,允许范围为-9223372036854775808到9223372036854775807。如果无符号,允许的范围是从0到18446744073709551615. 可以指定最多20位的宽度。
#- FLOAT(M,D) - 不能使用无符号的浮点数字。可以定义显示长度(M)和小数位数(D)。这不是必需的,并且默认为10,2。其中2是小数的位数,10是数字(包括小数)的总数。小数精度可以到24个浮点。
- DOUBLE(M,D) - 不能使用无符号的双精度浮点数。可以定义显示长度(M)和小数位数(D)。 这不是必需的,默认为16,4,其中4是小数的位数。小数精度可以达到53位的DOUBLE。 REAL是DOUBLE同义词。
- DECIMAL(M,D) - 非压缩浮点数不能是无符号的。在解包小数,每个小数对应于一个字节。定义显示长度(M)和小数(D)的数量是必需的。 NUMERIC是DECIMAL的同义词。numeric  decimal2.日期和时间类型
#- DATE - 以YYYY-MM-DD格式的日期,在1000-01-01和9999-12-31之间。 例如,1973年12月30日将被存储为1973-12-30。
- DATETIME - 日期和时间组合以YYYY-MM-DD HH:MM:SS格式,在1000-01-01 00:00:00 到9999-12-31 23:59:59之间。例如,1973年12月30日下午3:30,会被存储为1973-12-30 15:30:00。
- TIMESTAMP - 1970年1月1日午夜之间的时间戳,到2037的某个时候。这看起来像前面的DATETIME格式,无需只是数字之间的连字符; 1973年12月30日下午3点30分将被存储为19731230153000(YYYYMMDDHHMMSS)。 timestrap
- TIME - 存储时间在HH:MM:SS格式。
- YEAR(M) - 以2位或4位数字格式来存储年份。如果长度指定为2(例如YEAR(2)),年份就可以为1970至2069(70〜69)。如果长度指定为4,年份范围是1901-2155,默认长度为4。3.字符串类型
虽然数字和日期类型比较有意思,但存储大多数数据都可能是字符串格式。 下面列出了在MySQL中常见的字符串数据类型。
#- CHAR(M) - 【固定长度】的字符串是以长度为1到255之间个字符长度(例如:CHAR(5)),存储右空格填充到指定的长度。 限定长度不是必需的,它会默认为1。    char
#- VARCHAR(M) - 【可变长度】的字符串是以长度为1到255之间字符数(高版本的MySQL超过255); 例如: VARCHAR(25). 创建VARCHAR类型字段时,必须定义长度。   varity:可变化的
- BLOB or TEXT - 字段的最大长度是65535个字符。 BLOB是“二进制大对象”,并用来存储大的二进制数据,如图像或其他类型的文件。定义为TEXT文本字段还持有大量的数据; 两者之间的区别是,排序和比较上存储的数据,BLOB大小写敏感,而TEXT字段不区分大小写。不用指定BLOB或TEXT的长度。
- TINYBLOB 或 TINYTEXT - BLOB或TEXT列用255个字符的最大长度。不指定TINYBLOB或TINYTEXT的长度。
- MEDIUMBLOB or MEDIUMTEXT - BLOB或TEXT列具有16777215字符的最大长度。不指定MEDIUMBLOB或MEDIUMTEXT的长度。
- LONGBLOB 或 LONGTEXT -  BLOB或TEXT列具有4294967295字符的最大长度。不指定LONGBLOB或LONGTEXT的长度。
- ENUM - 枚举,这是一个奇特的术语列表。当定义一个ENUM,要创建它的值的列表,这些是必须用于选择的项(也可以是NULL)。例如,如果想要字段包含“A”或“B”或“C”,那么可以定义为ENUM为 ENUM(“A”,“B”,“C”)也只有这些值(或NULL)才能用来填充这个字段。

注意:主要了解 char 和 varchar 的区别

char(M)是固定长度的字符串, 在定义时指定字符串列长。当保存数据时如果长度不够在右侧填充空格以达到指定的长度。M 表示列的长度,M 的取值范围是0-255个字符

varchar(M)是长度可变的字符串,M 表示最大的列长度。M 的取值范围是0-65535。varchar的最大实际长度是由最长的行的大小和使用的字符集确定的,而实际占用的空间为字符串的实际长度+1

#1.添加新的字段image【添加了一列】alter table 表名 add  字段  字段类型;#blob可以二进制数据
#2.将job列的长度修改为40alter table 表名 midify  字段  字段类型;
#3.删除image列alter table 表名  drop  字段;
#4.重命名表名方式一:rename table 表名 to  新的表名;方式二:alter table 表名 rename to 新的表名;
#5.重命名字段名【列名】alter table  表名  change  字段  新的字段  字段类型;#6.查看表的创建细节show create table 表名;#7.修改指定表的字符集alter table 表名 character  set  字符集类型;#注意事项:alter操作的侧重点:表头,对表中的内容并没有做任何操作
1.3drop删除

语法:

DROP DATABASE database_name#1.删除数据库drop database  数据库名;
#2.删除数据表drop table 表名;

2.DML

DML对表中的数据进行增删改的操作,不要与DDL区分开

​ insert:增

​ update:改

​ delete:删

2.1insert插入

语法:

#单行插入
INSERT INTO table_name (field1, field2,...fieldN) VALUES(value1, value2,...valueN);#多行插入
INSERT INTO table_name (field1, field2,...fieldN)VALUES(value1, value2,...valueN),(value12, value22,...valueNN)...;注意:a.列名与列值的类型,个数以及长度保持一致b.可以将列名当做Python中的形参,将列值当做实参c.值不能超过定义的长度d.如果插入空值,使用null表示e.插入日期和字符串写法是一样的,使用引号括起来#1.插入数据#插入单条数据insert into 表名(字段名,使用逗号隔开) values(值,使用逗号隔开);#批量插入insert into 表名(字段名,使用逗号隔开) values(值,使用逗号隔开),(值,使用逗号隔开),(值,使用逗号隔开)。。。;
#2.查询整个表中的数据【DQL】select * from 表名;
2.2update更新

语法:

UPDATE table_name SET field1=new-value1, field2=new-value2  [WHERE Clause]注意:a.可以更新一个字段或者多个字段b.可以指定条件,使用where子句c.可以一次性更新一个表中的所有值d.如果没有使用where子句,则表示全部更新
1>where子句

语法:

注意:where子句其实就是一个操作符,类似于Python中的if语句,可以做数据的筛选

操作符 说明
= 相等
<> / != 不相等
< 小于
<= 小于等于
> 大于
between and 位于两值之间
>= 大于等于
IN(A,B) A 和 B 之间
AND 连接多个表达式 并且的关系

2.3delete删除

语法:

DELETE FROM table_name [WHERE Clause]注意:a.如果没有添加where子句,则表中的所有数据都会被删除b.根据where条件删除指定的内容c.可以单条删除,也可以一次性删除【drop,delete,truncate之间的区别】#1.占用空间drop:将表所占用的空间全部释放掉delete:不会减少表或者索引所占用的空间truncate:表或者索引所占用的空间会恢复到初始大小drop>truncate>delete#2.应用范围delete主要操作表和viewtruncate只能操作表drop操作表和数据库#3.删除数据delete和truncate只删除数据drop删除表#4.所属分类truncate和drop属于DDLdelete属于DML

3.DQL

select

数据查询语言,数据库执行DQL不会对数据库内部的内容发生改变,只是将符合条件的结果返回到客户端

语法:

SELECT 列名 FROM 表名【WHERE --> GROUP BY -->HAVING--> ORDER BY】
3.1基础查询
#1.查询所有列select * from 表名;
#2.查询指定列select field1,field2  from 表名;
3.2条件查询:where

主要结合where使用

between…and:介于…和…之间

and:逻辑与

or:逻辑或

in:在…中,类似于Python中的成员运算符

is:是…,类似于Python中的身份运算符

is not:不是…

查询性别不为nan的数据select * from 表名 where 字段!=xxxselect * from 表名 where 字段<>xxx查询姓名不为null的数据#数据库有很多不同的数据类型,null被当做特殊的数据类型,不同的数据类型之间无法比较name【varchar】 = nullname != null没有可比性name!="null"
3.3模糊查询:like

where:精准匹配

like:模糊匹配

注意:where子句结合like子句使用

通配符:

​ _:匹配任意一个字符

​ %:任意0~n个字符

3.4字段控制查询

as :起别名,

用法:select 字段 as 别名;

ifnull(xx):如果xx未空

distinct:去除重复记录

#1.去除重复记录#2.给列名起别名#注意:as是可以省略的
#3.ifnull(),将null转换
#查看学生学号和年龄和
#ifnull(字段,希望被转换成为的值),如果某个字段的值为null,则可以通过该函数将其转换为具体的值
3.5排序;order by
asc:升序【Ascending】
desc:降序【Descending】
结合where或者like的使用格式:select xxx   from 表名  order  by 字段 asc/desc;
#1.查询所有的学生记录,按照年龄升序排序#2.查询所有的学生记录,按照年龄升序排序,如果年龄相等,按照学号降序排序select xxx   from 表名  order  by 字段1 asc/desc,字段 2asc/desc;#说明:首先根据字段1排序,如果字段1的值相等,则根据字段2的值排序
3.6聚合函数

聚合函数:用来做纵向运算的函数

count():记录行数


>  sum():计算和

max():求最大值

min();求最小值

#1.求年龄的最大值和最小值

avg():average,求平均值

格式:select 聚合函数 from 。。。

3.7分组查询:group by
#1.分别查询女生和男生的人数

having和where比对

​ a.二者都表示限定条件

​ b.having是分组后对数据进行过滤【对分组后的数据添加约束】

​ where是在分组前对数据进行过滤

​ c.having后面可以使用聚合函数

​ where后面不能使用聚合函数

#1.查询各部门的人数#2.查询每个部门的工资和#3.统计每个部门中工资大于1000的人数
3.8分页查询:limit

格式:select * from 表名 limit start,end

注意:包含start,不包含end

总结:

​ 查询语句书写顺序:select---->from ---->where ---->group by —>having---->order by ---->limit

​ 查询语句执行顺序:from ---->where---->group by ----->having---->select---->order by ---->limit

综合练习:创建表,按照要求操作

#建学生信息表student
create table student(
sno varchar(20),
sname varchar(20),
ssex varchar(20),
sbirthday datetime,
class varchar(20)
);
#建立成绩表
create table score
(
sno varchar(20),
cno varchar(20),
degree decimal
);
#添加学生信息
insert into student values('108','曾华','男','1977-09-01','95033');
insert into student values('105','匡明','男','1975-10-02','95031');
insert into student values('107','王丽','女','1976-01-23','95033');
insert into student values('101','李军','男','1976-02-20','95033');
insert into student values('109','王芳','女','1975-02-10','95031');
insert into student values('103','陆君','男','1974-06-03','95031');
#添加成绩表insert into score values('103','3-245','86');
insert into score values('105','3-245','75');
insert into score values('109','3-245','68');
insert into score values('103','3-105','92');
insert into score values('105','3-105','88');
insert into score values('109','3-105','76');
insert into score values('103','3-105','64');
insert into score values('105','3-105','91');
insert into score values('109','3-105','78');
insert into score values('103','6-166','85');
insert into score values('105','6-166','79');
insert into score values('109','6-166','81');#1、 查询Student表中的所有记录的Sname、Ssex和Class列select sname,ssex,class from student;
#2、 查询学生的生日即不重复的sbirthday列
select distinct sbirthday from student;
#3、 查询Student表的所有记录
select * from student;
#4、查询Score表中成绩在60到80之间的所有记录
select * from score where degree between 60 and 80;
#5、 查询Score表中成绩为85,86或88的记录select * from score where degree=88 or degree=86 or degree=85;
#6、 查询Student表中“95031”班或性别为“女”的同学记录
select * from student where class=95031 or ssex='女';
#7、 以Class降序查询Student表的所有记录
select * from student  order by class desc;
#8、 以Cno升序、Degree降序查询Score表的所有记录
select * from score order by con asc,degree desc;
#9、 查询“95031”班的学生人数
select count(class) from student where class=95031;
#10、查询Score表中的最高分的学生学号和课程号
select * from score where degree=(select max(degree) from score);
#11、查询每门课的平均成绩
select avg(degree) from score;
#12、查询Score表中至少有5名学生选修的并以3开头的课程的平均分数
select avg(degree) from score where con like "3%" group by con having count(con)>=5;
#13、查询分数大于70,小于90的Sno列select sno from score where degree  between 70 and 90;

MySQL基础(附练习题+答案)相关推荐

  1. 计算机操作试题word,计算机操作基础word练习题答案

    计算机操作基础word练习题答案 具 . 表格 . 窗口 . 帮助 . 22.WORD97视图包括 和联机版式视图,为了看清文档的打印输出效果,应使用 页面 视图. 三.选择题: 1.所有字符格式排版 ...

  2. 计算机应用基础西南大学答案2015,计算机应用基础统考练习题答案

    西南大学网络教育学院2006年 <计算机应用基础>统考练习题答案 一.选择题: 1.C 2.D 3.B 4.B 5.A 6.B 7.D 8.A 9.A 10.B 11.D 12.C 13. ...

  3. 廖雪峰官网自学python 基础类型(附练习题答案)

    没啥好说的直接上代码# -*- coding:utf-8 -*- height = 1.72 weight = 88 BMI = weight/(height*height) if BMI < ...

  4. 大学计算机基础知识素材PPT,大学计算机基础操作练习题「附答案」

    大学计算机基础操作练习题「附答案」 一.操作题 完成下面一个例子,就存一次盘, 避免操作失误损失. [例5.1]打开指定文件夹下的演示文稿yswg43.ppt,内容如下:(参见素材yswg43.ppt ...

  5. 2017计算机应用基础统考,计算机应用基础统考练习题「附答案」

    下面小编为大家分享的是计算机应用基础统考的练习题及答案,希望对大家备考计算机应用基础统考考试有帮助! 单选题 1.电子计算机按使用范围分类,可以分为______. A:巨型计算机.大中型机.小型计算机 ...

  6. python基础知识选择题-99道经典练习题助你全面掌握python基础知识,附技巧答案...

    不知何时,全民学python已经达到了高潮!有很对人都在问,python这么火,学了之后到底能做什么了? 对于这个问题,我只想说一句:python真的无所不能: 它是人工智能的首选语言,主流有一下方向 ...

  7. python经典程序练习题-99道经典练习题助你全面掌握python基础知识,附技巧答案...

    不知何时,全民学python已经达到了高潮!有很对人都在问,python这么火,学了之后到底能做什么了? 对于这个问题,我只想说一句:python真的无所不能: 它是人工智能的首选语言,主流有一下方向 ...

  8. mysql数据库入门第二张试卷_2016计算机二级《MySQL数据库》练习题与答案

    2016计算机二级<MySQL数据库>练习题与答案 一.选择题 下列语句中,________不是表数据的基本操作语句. A)CREATE语句 B)INSERT语句 C)DELETE语句 D ...

  9. 计算机操作基础英语,计算机操作基础word练习题参考答案

    <计算机操作基础>word练习题答案 班别学号姓名 一.判断题: 1.( √) 用"插入"菜单中的"符号"命令可以插入符号和其他特殊字符. 2.( ...

最新文章

  1. 常玩手机会导致手指残疾? 专家称没依据
  2. python能做软件开发吗-学习Python软件开发能做什么?
  3. cortex M内核优先级设置
  4. 致北漂——你来北京不是为了配合出演苦情戏
  5. iPad连android热点掉线,苹果终于承认,iOS 13有这个问题,网络断连的原因找到了...
  6. Eclipse利用Maven2搭建SpringMVC框架的Web工程
  7. 撸完这些JVM知识点,明天就去面试阿里P6+
  8. 七、配置ssh keys连通github跟ssh-agent
  9. python载入图片序列_python – 使用matplotlib显示图像序列
  10. bochs的安装和配置
  11. 讲讲NVivo11的版本细节
  12. VS2012下安装GDAL库
  13. Spark亚太研究院王家林:从技术的…
  14. anconda json.decoder.JSONDecodeError: Expecting property name enclosed in double quo
  15. [机器学习] - 岭回归与Lasso回归
  16. c语言中MAXINE,13岁高定设计师二度亮相北京时装周 Maxine WangGrace Chen高定系列发布...
  17. 58. Length of Last Wor
  18. ## 看看sass和less会遇到的问题吧
  19. c++ 两个Map容器的差异性比较,返回差异内容
  20. Unity报错之【ArgumentOutOfRangeException: Index was out of range........】

热门文章

  1. 深入理解YII2.0
  2. TesseractOCR(光学字符识别)引擎概述(一)
  3. PTA 海盗分赃 (25分)
  4. 关于人工智能不会使大脑变懒惰的议论文_台湾人工智能学校执行长陈升玮:孩子成为这型人,就不怕被AI取代...
  5. 组件通信之sync-父子数据同步
  6. CJSON 使用介绍
  7. 怎么用快影去除视频中的水印?
  8. ROS机器人操作系统(rospy)
  9. Android自定义View-一个可可爱爱的波浪特效
  10. n719 rom 卡刷 android 4.3,三星 N719官方4.3纯净版ROM刷机(线刷)获取ROOT权限