1.SQL

SQL(Structured Query Language) 语言是目前主流的关系型数据库上执行数据操作、数据检索以及数据库维护所需要的标准语言,是用户与数据库之间进行交流的接口,许多关系型数据库管理系统都支持SQL语言,但不同的数据库管理系统之间的SQL语言不能完全通用,Oracle数据库使用的SQL语言是Procedural Language/SQL(简称PL/SQL)。

1.1 1SQL语言分类

通常将SQL语言分为以下4类。
(1)数据定义语言(Data Definition Language, DDL)
用于定义数据库对象,对数据库、数据库中的表、视图等数据库对象进行建立和删除,DDL包括CREATE、ALTER、DROP等语句。
(2)数据操纵语言(Data Manipulation Language, DML)
用于对数据库中的数据进行插入、修改、删除等操作,DML包括INSERT、UPDATE、DELETE等语句。
(3)数据查询语言(Data Query Language, DQL)
用于对数据库中的数据进行查询操作,例如用 SELECT语句进行查询操作。
(4)数据控制语言(Data Control Language, DCL)
用于控制用户对数据库的操作权限,DCL包括GRANT、REVOKE等语句。

1.2 SQL语言的特点

SQL语言具有高度非过程化、应用于数据库的语言、面向集合的操作方式、既是自含式语言又是嵌入式语言、综合统一、语言简洁和易学易用等特点。
(1)高度非过程化
SQL语言是非过程化语言,进行数据操作,只要提出“做什么”,而无须指明“怎么做”,因此无需说明具体处理过程和存取路径,处理过程和存取路径由系统自动完成。
(2)应用于数据库的语言
SQL语言本身不能独立于数据库而存在,它是应用于数据库和表的语言,使用SQL语言,应熟悉数据库中的表结构和样本数据。
(3)面向集合的操作方式
SQL语言采用集合操作方式,不仅操作对象、查找结果可以是记录的集合,而且一次插入、删除、更新操作的对象也可以是记录的集合。
(4)既是自含式语言、又是嵌入式语言
SQL语言作为自含式语言,它能够用于联机交互的使用方式,用户可以在终端键盘上直接键入SQL命令对数据库进行操作;作为嵌入式语言,SQL语句能够嵌入到高级语言(例如C,C++,Java)程序中,供程序员设计程序时使用。在两种不同的使用方式下,SQL语言的语法结构基本上是一致的,提供了极大的灵活性与方便性。
(5)综合统一
SQL语言集数据查询(Data Query)、数据操纵(Data Manipulation)、数据定义(Data Definition)和数据控制(Data Control)功能于一体。

2.在PL/SQL中的数据定义语言

2.1 数据库

2.2 表空间

2.2.1 创建

语法:

CREATE TABLESPACE <表空间名>
   DATAFILE '<文件路径>/<文件名>' [SIZE <文件大小> [ K∣M ]] [ REUSE ]
      [ AUTOEXTEND [ OFF∣ON [ NEXT <磁盘空间大小> [ K∣M ]]
      [ MAXSIZE [ UMLIMITED∣<最大磁盘空间大小> [ K∣M ] ] ] ]
      [ MINMUM EXTENT <数字值>[ K | M ] ]
      [ DEFAULT <存储参数>]
      [ ONLINE∣OFFLINE ]
      [ LOGGING∣NOLOGGING ]
      [ PERMANENT∣TEMPORARY ]
     [ EXTENT MANAGEMENT [ DICTIONARY∣LOCAL [ AUTOALLOCATE∣UNIFORM [ SIZE <数字值>[ K∣M ] ] ] ] ]

创建临时表空间

CREATE TEMPORARY TABLESPACE
...

用作数据库运算过程中的数据存储,或临时表数据存储等。用完之后系统会自动清理。若不创建则使用系统默认的临时表空间TEMP。

示例:

创建表空间newspace,允许自动扩展数据文件。

CREATE TABLESPACE newspace
    LOGGING
    DATAFILE 'D:\app\DELL\oradata\stsys\ newspace01.DBF’ SIZE 40M
    REUSE AUTOEXTEND ON NEXT 10M MAXSIZE 300M
    EXTENT MANAGEMENT LOCAL;

2.2.2 修改

使用ALTER TABLESPACE命令可以修改表空间或它的一个或多个数据文件、或为数据库中每一个数据文件指定各自的存储扩展参数值,其语法格式如下。

ALTER TABLESPACE <表空间名>
   [ ADD DATAFILE∣TEMPFILE  '<路径>/<文件名>' [ SIZE <文件大小> [ K∣M ] ]
   [ REUSE ]
       [ AUTOEXTEND [ OFF∣ON [ NEXT <磁盘空间大小>  [ K∣M ] ] ] ]
       [MAXSIZE [ UNLIMITED∣<最大磁盘空间大小> [ K∣M ] ] ]
       [ RENAME DATAFILE '<路径>/<文件名>',…n TO '<路径>/<新文件名>'',…n ]
       [ DEFAULT STORAGE <存储参数>]
       [ ONLINE∣OFFLINE [ NORMAL∣TEMPORARY∣IMMEDIATE ] ]
       [ LOGGING∣NOLOGGING ]
       [ READ ONLY∣WRITE ]
       [ PERMANENT ]
       [ TEMPORARY ]

示例:

通过ALTER TABLESPACE命令把一个新的数据文件添加到newspace表空间,并指定了AUTOEXTEND ON和 MAXSIZE 300M。

ALTER TABLESPACE newspace
   ADD DATAFILE 'D:\app\DELL\oradata\stsys\DATA02.DBF' SIZE 40M
      REUSE AUTOEXTEND ON NEXT 50M MAXSIZE 300M;

2.2.3 删除

语法:

DROP TABLESPACE <表空间名>
   [ INCLUDING CONTENTS [ {AND | KEEP} DATAFILES ]
     [ CASCADE CONSTRAINTS ]
   ] ;

示例:

删除表空间newspace和及其对应的数据文件。

DROP TABLESPACE newspace
   INCLUDING CONTENTS AND DATAFILES;

2.3 表

2.3.1 创建

语法:

CREATE TABLE [<用户方案名>.] <表名>
(
    <列名1>  <数据类型>  [DEFAULT <默认值>]  [<列约束>]
    <列名2>  <数据类型>  [DEFAULT <默认值>]  [<列约束>]
    [,…n]
    <表约束>[,…n]
)
    [PCTFREE <数字值>]
    [PCTUSED <数字值> ]
    [INITRANS <数字值>]
    [MAXTRANS <最大并发事务数>]
    [TABLESPACE <表空间名>]
    [STORGE <参数>]
    [AS <子查询>]

示例:

CREATE TABLE student
(
   sno char(6) NOT NULL PRIMARY KEY,
   sname char(8) NOT NULL,
   ssex char(2) NOT NULL,
   sbirthday date NOT NULL,
   speciality char(12) NULL,
   sclass char(6) NULL,
   tc number NULL
); 

表中添加注释:

comment on table student is '学生信息';
comment on column student.sno is '学号';
comment on column student.sname is '姓名';
comment on column student.ssex is '性别';
comment on column student.sbirthday is '出生日期';
comment on column student.speciality is '专业';
comment on column student.sclass is '班号';
comment on column student.tc is '总学分';

2.3.2 修改

语法:

ALTER TABLE [<用户方案名>.] <表名>
[ ADD(<新列名> <数据类型> [DEFAULT <默认值>][列约束],…n) ]/*增加新列*/
[ MODIFY([ <列名> [<数据类型>] [DEFAULT <默认值>][列约束],…n) ] /*修改已有列的属性*/
[ STORAGE <存储参数> ]  /*修改存储特征*/
[<DROP子句> ]     /*删除列或约束条件*/

其中,用于从表中删除列或约束
语法:

DROP
{
COLUMN <列名>
∣PRIMARY [KEY]
∣UNIQUE (<列名>,…n)
∣CONSTRAINT <约束名>
∣[ CASCADE ]
}

示例:

使用ALTER TABLE语句修改student表
(1)在student表中增加一列remarks(备注)

ALTER TABLE student
   ADD remarks varchar(100);

(2)在student表中删除列remarks。

ALTER TABLE student
   DROP COLUMN remarks;

2.3.3 删除

语法:

DROP TABLE table_name

示例:

删除student表

DROP TABLE student;

3.在PL/SQL中的数据操纵语言

3.1 增

语法:

INSERT INTO <表名>[(<列名1>,<列名2>,…n)]
  VALUES(<列值1>,<列值2>,…n)

示例:

向employee表插入一行:1001, 刘松涛, 男, 1972-10-07, 公司集体宿舍。

INSERT INTO student
VALUES('121001','刘鹏翔','男',TO_DATE('19920825','YYYYMMDD'),'计算机','201205',52);

3.2 删

(1)DELETE
语法:

DELETE FROM <表名>
   [WHERE <条件表达式>]

示例:

在employee表中,删除员工号为1021的行。

DELETE FROM employee
   WHERE eid='1021';

(2)TRANCATE TABLE语句
当需要删除一个表里的全部记录,使用TRUNCATE TABLE语句,它可以释放表的存储空间,但此操作不可回退,其语法格式如下:

TRUNCATE TABLE <表名> 

3.3 改

语法:

UPDATE <表名>
   SET <列名>={<新值>|<表达式>} [,…n]
   [WHERE <条件表达式>]

示例:

在employee表中将刘松涛的员工号改为1021,员工地址改为东大街34号。

UPDATE employee
  SET eid='1021', address='东大街34号'
  WHERE ename='刘松涛';

在student表中,将所有学生的学分增加2分。

UPDATE student
  SET tc=tc+2;

4.在PL/SQL中的数据查询语言

语法:

SELECT <列>                                           /*SELECT子句,指定列*/
   FROM  <表或视图>                              /*FROM子句,指定表或视图*/
   [ WHERE  <条件表达式> ]                  /*WHERE子句,指定行*/
   [ GROUP BY <分组表达式> ]              /*GROUP BY子句,指定分组表达式*/
   [ HAVING <分组条件表达式> ]          /*HAVING子句,指定分组统计条件*/
   [ ORDER BY <排序表达式> [ ASC | DESC ]]  /*ORDER子句,指定排序表达式和顺序*/

4.1 投影查询

投影查询用于选择列
语法:

SELECT [ ALL | DISTINCT ] <列名列表>
其中,<列名列表>指出了查询结果的形式,其格式为:
{  *                                                  /*选择当前表或视图的所有列*/
   |<表名>|<视图>|.*                       /*选择指定的表或视图的所有列*/
   |{|<列名>|<表达式>}
       [[ AS ] <列别名>]                    /*选择指定的列,为列指定别名*/
   | <列标题> =  <列名表达式>      /*选择指定的列并更改列标题,为列指定别名*/
}[,… n ]

4.1.1 投影指定的列

使用SELECT语句可选择表中的一个列或多个列,如果是多个列,各列名中间要用逗号分开。
语法:

SELECT <列名1> [ , <列名2> [,…n] ]
   FROM <表名>
   [WHERE <条件表达式>]

示例:

查询student表中所有学生的学号、姓名和班号。

SELECT sno, sname, sclass
  FROM student;

4.1.2 投影全部列

示例:

查询student表中所有列

SELECT *
  FROM student;

4.1.3 修改查询列标题

为了改变查询结果中显示的列标题,可以在列名后使用AS 。
示例:

查询student表中所有学生的学生的sno、sname、speciality,并将结果中各列的标题分别修改为学号, 姓名, 专业。

SELECT sno AS 学号, sname AS 姓名, speciality AS 专业
  FROM student;

4.1.4 计算列值

介绍:
使用SELECT子句对列进行查询时,可以对数字类型的列进行计算,可以使用加(+)、减(-)、乘(*)、除(/)等算术运送符

语法:

SELECT <表达式> [ , <表达式> ]

示例:

列出goods表的商品号、商品名称和商品总值

SELECT gid AS 商品号, gname AS 商品名称, price*stockqt AS 商品总值

4.1.5 去掉重复行

语法:

SELECT DISTINCT <列名> [ , <列名>…]

示例:

查询student表中sclass列,消除结果中的重复行

select distinct sclass from student;

4.2 选择查询

语法:

WHERE <条件表达式>

其中,为查询条件,格式为:

<条件表达式>::=
     { [ NOT ] <判定运算> | (<条件表达式> ) }
     [ { AND | OR } [ NOT ] { <判定运算> | (<条件表达式>) } ]
     [ ,…n ]

说明:

  1. 判定运算包括比较运算、模式匹配、指定范围、空值判断、子查询等,判定运算的结果为TRUE、FALSE或UNKNOWN。
  2. 逻辑运算符包括.AND(与)、OR(或)、 NOT(非),NOT、AND和OR的使用是有优先级的,三者之中,NOT优先级最高,AND次之,OR优先级最低。
  3. 条件表达式可以使用多个判定运算通过逻辑运算符成复杂的查询条件。

4.2.1 表达式比较

语法:

<表达式1> { = | < | <= | > | >= | <> | != } <表达式2>

示例:

查询student表中班号为201205或性别为女的学生

SELECT *
  FROM student
  WHERE sclass='201205' or ssex='女';

查询goods表中价格为3000元以上的商品

SELECT *
  FROM goods
  WHERE price>3000;

4.2.2 指定范围

介绍:
BETWEEN、NOT BETWEEN、IN是用于指定范围的三个关键字,用于查找字段值在(或不在)指定范围的行。
当要查询的条件是某个值的范围时,可以使用BETWEEN关键字。BETWEEN关键字指出查询范围。
语法:

<表达式> [ NOT ] BETWEEN <表达式1> AND <表达式2>

(1)IN
示例:

查询score表成绩为86、92、95的记录

SELECT *
  FROM score
  WHERE grade in (86,92,95);

(2)BETWEEN
示例:

查询goods表中价格在1500元到4000元之间的商品。

SELECT *
  FROM goods
  WHERE price BETWEEN 1500 AND 4000;

(2)NOT BETWEEN
示例:

查询student表中不在1992年出生的学生情况。

SELECT *
  FROM student
  WHERE sbirthday NOT BETWEEN TO_DATE('19920101','YYYYMMDD') AND
    TO_DATE('19921231','YYYYMMDD');

4.2.3 模糊匹配

介绍:
模式匹配使用LIKE谓词,LIKE谓词用于指出一个字符串是否与指定的字符串相匹配,其运算对象可以是char、varchar2和date类型的数据,返回逻辑值TRUE或FALSE。
语法:

<字符串表达式1> [ NOT ] LIKE <字符串表达式2> [ ESCAPE '<转义字符>' ]

在使用LIKE谓词时,可以含有通配符,通配符有以下两种:

%:代表0或多个字符。
_: 代表一个字符。

示例:

查询student表中姓林的学生情况

SELECT *
  FROM student
  WHERE sname LIKE '林%';

示例:

查询goods表中商品名称含有Inspiron的商品

SELECT *
  FROM goods
  WHERE gname LIKE '%Inspiron%';

示例:

查询student表中姓名第二字为“国”的学生情况

SELECT *
  FROM student
  WHERE sname LIKE '_林%';

4.2.4 NULL值判断

语法:

<表达式> IS [ NOT ] NULL

示例:

查询已选课但未参加考试的学生情况

SELECT *
  FROM score
  WHERE grade IS null;

4.3 分组查询和统计查询

4.3.1 聚合函数

介绍:

聚合函数实现数据的统计计算,用于计算表中的数据,返回单个计算结果。聚合函数包括COUNT、SUM、AVG、MAX、MIN等函数,下面分别介绍。

(1)COUNT函数

介绍:
COUNT函数用于计算组中满足条件的行数或总行数。

语法:

COUNT ( { [ ALL | DISTINCT ] <表达式> } | * )

ALL表示对所有值进行计算,ALL为默认值,DISTINCT指去掉重复值,COUNT函数用于计算时忽略NULL值。
示例:

求学生的总人数

SELECT COUNT(*) AS 总人数
  FROM student;

(2)SUM和AVG函数

介绍:
SUM函数用于求出一组数据的总和,AVG函数用于求出一组数据的平均值,这两个函数只能针对数值类型的数据。

语法:

SUM / AVG ( [ ALL | DISTINCT ] <表达式> )

ALL表示对所有值进行计算,ALL为默认值,DISTINCT指去掉重复值,SUM和AVG函数用于计算时忽略NULL值。
示例:

查询goods表库存量的总和

SELECT SUM(stockqt) AS 库存量总和 FROM goods;

查询1004课程的平均分

SELECT AVG (grade) AS 课程1004平均分
  FROM score
  WHERE cno='1004';

(1)MAX和MIN函数

介绍:
MAX函数用于求出一组数据的最大值,MIN函数用于求出一组数据的最小值,这两个函数都可以适用于任意类型数据。

语法:

MAX / MIN ( [ ALL | DISTINCT ] <表达式> )

ALL表示对所有值进行计算,ALL为默认值,DISTINCT指去掉重复值,MAX和MIN函数用于计算时忽略NULL值。
示例:

查询8001课程的最高分、最低分、平均成绩

SELECT MAX(grade) AS 课程8001最高分, MIN(grade) AS 课程8001最低分, AVG(grade) AS 课程8001平均成绩
FROM score
  WHERE cno='8001';

4.3.2 GROUP BY子句

介绍:
GROUP BY子句用于指定需要分组的列。

语法:

GROUP BY [ ALL ] <分组表达式>[,…n]

示例:

查询各个班级的人数

SELECT sclass AS 班级, COUNT(*) AS 人数
  FROM student
  GROUP BY sclass;

查询各类商品的库存量

SELECT gclass AS 商品类型代码, SUM(stockqt) AS 库存量
  FROM goods
  GROUP BY gclass;

查询各门课程的最高分、最低分、平均成绩

SELECT cno AS 课程号, MAX(grade)AS 最高分,MIN (grade)AS 最低分, AVG(grade)AS 平均成绩
  FROM score
  WHERE NOT grade IS null
  GROUP BY cno;

求选修各门课程的平均成绩和选修人数

SELECT cno AS 课程号, AVG(grade) AS 平均成绩, COUNT(*) AS 选修人数
 FROM score
  GROUP BY cno;

4.3.3 HAVING子句

介绍:
HAVING子句用于对分组按指定条件进一步进行筛选,过滤出满足指定条件的分组。
语法:

[ HAVING <条件表达式> ]

其中,条件表达式为筛选条件,可以使用聚合函数。
当WHERE子句、GROUP BY子句、HAVING子句、ORDER BY子句在一个SELECT语句中时,执行顺序如下:
(1)执行WHERE子句,在表中选择行。
(2)执行GROUP BY子句,对选取行进行分组。
(3)执行聚合函数。
(4)执行HAVING子句,筛选满足条件的分组。
(5)执行ORDER BY子句,进行排序。
示例:

查询平均成绩在90分以上学生的学号和平均成绩

SELECT sno AS 学号, AVG(grade) AS 平均成绩
  FROM score
  GROUP BY sno
  HAVING AVG(grade)>90;

查询选修课程3门以上且成绩在85分以上的学生的情况

SELECT sno AS 学号, COUNT(cno) AS 选修课程数
  FROM score
  WHERE grade>=85
  GROUP BY sno
  HAVING COUNT(*)>=3;

查询至少有5名学生选修且以8开头的课程号和平均分数

SELECT cno AS 课程号, AVG (grade) AS 平均分数
  FROM score
  WHERE cno LIKE '8%'
  GROUP BY cno
  HAVING COUNT(*)>5;

4.3.4 排序查询

语法:

[ ORDER BY { <排序表达式> [ ASC | DESC ] } [ ,…n ]

示例:

将商品类型代码为10的商品按价格升序排序

SELECT *
  FROM goods
  WHERE gclass='10'
  ORDER BY price;

将201236班级的学生按出生时间降序排序

SELECT *
  FROM student
  WHERE sclass='201236'
  ORDER BY sbirthday DESC;

5.综合训练

(1)查询student表中计算机专业学生的情况。

select * from student where speciality ='计算机';

(2)查询score表中学号为124003,课程号为4002的学生成绩。

select * from score where sno='124003' and cno='4002';

(3)查找学号为121002学生所有课程的平均成绩。

select sno as 学号,avg(grade) as 所有课程的平均成绩
    from score where sno='124003'  GROUP BY sno;

(4)查询通信专业的最高学分的学生情况。

select MAX(tc) as 最高学分 from student where SPECIALITY='通信';

(5)查询1004课程的最高分、最低分和平均成绩。

select MAX(grade) as 最高分,MIN(grade) as 最低分, avg(grade) as 平均分
    from score where cno = '1004' GROUP BY cno;

(6)查询至少有3名学生选修且以4开头的课程号和平均分数。

select cno as 课程号, AVG(grade) as 平均分, COUNT(sno) as 课程选修人数
    from score where cno LIKE '4%' GROUP BY cno HAVING COUNT(sno)>=3;

(7)将计算机专业的学生按出生时间升序排列。

select * from student where SPECIALITY='计算机' ORDER BY SBIRTHDAY;

(8)查询各门课程最高分的课程号和分数,并按分数降序排列。

select cno as 最高分的课程号,MAX(grade) as 最高分
    from score GROUP BY cno ORDER BY 最高分 DESC;

02-oracle中的基础sql的更多相关文章

  1. 在Oracle中执行动态SQL的几种方法

    转载:在Oracle中执行动态SQL的几种方法 以下为内容留存: 在Oracle中执行动态SQL的几种方法 在一般的sql操作中,sql语句基本上都是固定的,如:SELECT t.empno,t.en ...

  2. Oracle中,利用sql语句中的函数实现保留两位小数和四舍五入保留两位小数

    Oracle中,利用sql语句中的函数实现保留两位小数和四舍五入保留两位小数: select trunc(1.23856789,2) from dual round(m,n) 可以四舍五入 trunc ...

  3. ORACLE中的PL/SQL

    一. 1.过程,函数,触发器是pl/sql编写.                2. 过程函数触发器是在Oracle中.                      3.pl/sql是非常强大的数据库过 ...

  4. oracle中视图v$sql的用途

    1.获取正在执行的sql语句.sql语句的执行时间.sql语句的等待事件: select a.sql_text,b.status,b.last_call_et,b.machine,b.event,b. ...

  5. Oracle中如何用SQL检测字段是否包括中文字符

    用Oracle的编码转换的函数Convert实现,测试后可行. SQL> select *  2    from (select 'abcd' c1 from dual  3          ...

  6. oracle中使用pl/sql进行的文件读写操作

    第一次知道,可以使用pl/sql来进行文件的读写操作,嘿嘿,简单的试了下可行. 基本步骤如下: SQL> conn sys/sys@orcl as sysdba 已连接. SQL> cre ...

  7. Oracle中使用PL/SQL如何定义参数、参数赋值、输出参数和 if 判断

    1.pl/sql如何定义参数 declare --1)定义参数 -- ban_Id number; ban_Name ); 2.pl/sql如何参数赋值 --2)参数赋值-- ban_Id :; ba ...

  8. oracle 中使用 pl/sql代码块

    1.写匿名块,输入三角形三个表的长度.在控制台打印三角形的面积. declare -- (p=(a+b+c)/2) --声明三角形的面积 三条边 的 v_a number (10,2):=&n ...

  9. ArcGis在Oracle中常用的sql

    ) m 查询坐标数据 更新坐标: update tableName set SHAPE = mdsys.sdo_geometry(2002,28420,null,mdsys.sdo_elem_info ...

随机推荐

  1. DVWA 黑客攻防演练(十三)JS 攻击 JavaScript Attacks

    新版本的 DVWA 有新东西,其中一个就是这个 JavaScript 模块了. 玩法也挺特别的,如果你能提交 success 这个词,成功是算你赢了.也看得我有点懵逼. 初级 如果你改成 " ...

  2. 数据库原理 - 序列7 - Binlog与主从复制

    本文节选自作者书籍<软件架构设计:大型网站技术架构与业务架构融合之道>.作者微信公众号:架构之道与术.公众号底部菜单有书友群可以加入,与作者和其他读者进行深入讨论.也可以在京东.天猫上购买 ...

  3. mssql sqlserver 分组排序函数row_number、rank、dense_rank用法简介及说明

    在实际的项目开发中,我们经常使用分组函数,对组内数据进行群组后,然后进行组内排序:如:1:取出一个客户一段时间内,最大订单数的行记录2: 取出一个客户一段时间内,最后一次销售记录的行记录——————— ...

  4. ORACLE 查询某表中的某个字段的类型,是否为空,是否有默认值等

    最近写的功能中有这样一个小功能,根据数据库查询此库中是否有某表,如果有,查询某表下面的某个字段的详细信息 其中一种是... select ATC.OWNER, atC.TABLE_NAME, ATC. ...

  5. 第一课android开发之在activity间传递参数

    一.活动间简单参数传递:1.在布局中添加按钮,用<Button,用id设置id名称,id="@+id/这儿填写你要设置成的名称":用text设置按钮上显示的文字.text=& ...

  6. ubuntu tree 查看目录结构

    首先需要安装tree这个软件 sudo apt install tree tree -L target_dir/ 2代表列举的目录结构深度

  7. 一款回到顶部的 jQuery 插件,支持 Div 中的滚动条回到顶部

    前言 今天在网上搜索“回到顶部”的 jQuery 插件,网上有很多,但是大部分都不支持让 Div 中的滚动条回到顶部.于是乎,不放弃,自己参考 Github 上的一个 jQuery 插件,经过自己的修 ...

  8. Linux 系统假死的解决方案

    Linux 系统有时因为软件不兼容或未知 bug,导致系统假死.比如我的 Ubuntu 14.04 最近使用 vscode 时偶尔会导致系统假死,即鼠标可以移动,但点击无反应. 此时可试试如下解决方案 ...

  9. Web前端之iframe详解

    iframe基本内涵 通常我们使用iframe直接直接在页面嵌套iframe标签指定src就可以了. <iframe src="demo_iframe_sandbox.htm" ...

  10. 周末学习笔记——day02(带参装饰器,wraps修改文档注释,三元表达式,列表字典推导式,迭代器,生成器,枚举对象,递归)

    一,复习 ''' 1.函数的参数:实参与形参 形参:定义函数()中出现的参数 实参:调用函数()中出现的参数 形参拿到实参的值,如果整体赋值(自己改变存放值的地址),实参不会改变,(可变类型)如果修改 ...