delete

python面试题 -- 网编并发

白昼怎懂夜的黑 提交于 2020-02-27 12:21:54
Python面试重点(进阶篇) 注意:只有必答题部分计算分值,补充题不计算分值。 第一部分 必答题 简述 OSI 7层模型及其作用?(2分) # 应用层:文件传输,文件管理,电子邮件的信息处理# 表示层:确保一个系统的应用层发送的消息可以被另一个系统的应用层读取,编码转换,数据解析,管理数据的解密和加密# 会话层:验证访问和会话管理# 传输层:为应用程序之间提供端对端的逻辑通信。# 网络层:选择合适的网间路由完成两个计算机之间的多个数据链路,通过路由协议和地址解析协议(ARP)。IP,RIP(路由信息协议),OSPF(最短路径优先协议)# 数据链路层:在物理层提供的比特流的基础上,建立相邻节点之间的数据链路,不可靠的物理介质提供可靠传输 ppp协议# 物理层:规定通信设备,通信链路的特性 简述 TCP三次握手、四次回收的流程。(3分) # 第一次握手:客户端首先向服务端发起连接,这时TCP头部中的SYN标识位值为1,然后选定一个初始序号seq=x(一般是随机的),消息发送后,A进入SYN_SENT状态,SYN=1的报文段不能携带数据,但要消耗一个序号。# 第二次握手:服务端收到客户端的连接请求后,同意建立连接,向A发送确认数据,这时TCP头部中的SYN和ACK标识位值均为1,确认序号为ack=x+1,然后选定自己的初始序号seq=y(一般是随机的),确认消息发送后,服务端进入SYN

MySQL——触发器

自闭症网瘾萝莉.ら 提交于 2020-02-27 11:27:51
MySQL语句在需要执行时被执行,存储过程也是如此。但是,如果想要某些SQL在事件发生时自动执行,这就需要触发器。 基本语法 //创建触发器 CREATE TRIGGER name //删除触发器 DROP TRIGGER name 创建触发器 在创建触发器时需要给出4条信息 唯一的触发器名 触发器需要关联的表 触发器应该响应的活动(DELETE、INSTERT或UPDATE) 触发器何时执行(处理之前还是之后) 删除触发器 为了删除一个触发器,可以使用DROP TRIGGER 语句。如下所示 使用触发器 INSERT触发器 INSERT触发器在INSERT语句执行之前或之后执行。需要知道以下几点: 在INSERT触发器代码内,可以用一个名为NEW的虚拟表,访问被插入的行 在BEFORE INSERT触发器中,NEW中的值也可以被更新(允许更改被插入的值) 对于AUTO_INCREMENT列,NEW在INSERT执行前包含0,在INSERT执行之后包含新的自动生成值 DELETE触发器 DELETE触发器在DELETE语句执行之前或之后执行。需要知道以下两点 在DELETE触发器代码中,可以引用一个名为OLD的虚拟表,访问被删除的行 OLD中的值全都是只读的,不能更新 UPDATE触发器 UPDATE触发器在UPDATE语句执行之前或之后执行。需要知道以下几点

FTP服务:file.delete()与file.deleteOnExit()

被刻印的时光 ゝ 提交于 2020-02-27 11:11:38
file.delete() 与 file.deleteOnExit() 之前使用 ftp 下载文件的时候会用到 File.createTempFil() 创建临时文件存储数据,用完之后就用 file.delete()与file.deleteOnExit()删除临时文件。在windows的开发环境进行测试时,临时文件会被创建在C:\Users\{当前电脑用户名}\AppData\Local\Temp该目录下。在现场环境,临时文件则会被创建在tomcat的temp文件夹下面。最近发现现场环境中temp下面居然堆积了大量的临时文件,然后查了一下代码发现是因为用了file.deleteOnExit() 。 这里得介绍一下 file.delete() 与 file.deleteOnExit() 这两个删除文件方法: file.delete() : 删除文件 ,删除的是创建File对象时指定与之关联创建的那个文件.这是一个立刻执行的操作 file.deleteOnExit() : 在 JVM进程退出的时候删除文件,通常用在临时文件的删除.这个不会立刻执行,会等到jvm进程退出的时候删除 这里看到一个”JVM 进程退出 ”,这是什么意思呢?百度一下得到: JVM 的关闭意味着将停止系统中所有的任务 按照这里的介绍,当应用关闭的时候,应该就可以把临时文件删了。然而

C++第12章

白昼怎懂夜的黑 提交于 2020-02-27 03:04:19
第12章,类和动态内存的分配 12.1动态内存和类 12.1.1 复习范例和静态类成员 1,不能在类声明中初始化静态成员遍历变量,这是因为声明描述了如何分配内存,但是并不分配内存。同时对于静态类成员,可以在类声明之外使用单独的语句来进行初始化。但是如果静态成员是整型或枚举型const,则可以在类声明中初始化。 2,在构造函数中使用new来分配内存时,必须在相应析构函数中使用delete来释放内存。 如果使用new[](包括中括号)来分配内存,则应使用delete[](包括中括号)来释放内存。 3,注意如下代码:       StringBad sailor = sports; 等同于: StringBad sailor = StringBad(sports);因此相应的构造函数原型应该如下: StringBad (const StringBad &); 也就是说,当你使用一个对象来初始化另一个对象时,编译器将自动生成上述构造函数(称为复制构造函数,因为它创建对象的一个副本)。 12.1.2隐式成员函数 1,C++自动提供了下面这些成员函数: l 默认构造函数,如果没有定义构造函数。 l 复制构造函数,如果没有定义。 l 复制操作符,如果没有定义。 l 默认析构函数,如果没有定义。 l 地址操作符,如果没有定义 更准确的说,编译器将生成最后四个函数的定义

代理模式-静态代理

点点圈 提交于 2020-02-27 01:57:19
IDB package com.bjpowernode.proxy; /** * 代理类和目标类都必须使用同一个接口。 */ public interface IDB { int insert(); int delete(); int update(); } OracleDB package com.bjpowernode.proxy; /** * 这是一个Oracle数据库相关的操作类 * * 目标类(委托类)。 */ public class OracleDB implements IDB{ /* * 以下程序编写结束了,并且上线了,客户提出了新的需求, * 这个新的需求就是希望在每一个业务执行的时候都要记录 * 以下所耗费的时间。 * * 客户提出新的需求我们必须满足。但是用下面这种方式进行升级: * 1、违背了OCP原则,开闭原则 * 2、代码没有得到重复利用,因为这些记录方法执行的耗费时长和业务没有关系,都是固定的,在每一个类中都有。 */ /* public int insert(){ long begin = System.currentTimeMillis(); //以下是一个插入操作 System.out.println("Oracle insert data...."); try { Thread.sleep(526); } catch

MYSQL 数据库基本操作

心已入冬 提交于 2020-02-26 22:18:17
插入数据 在建立一个空的数据库和数据表时,首先需要考虑的是如何向数据表中添加数据,该操作可以使用INSERT语句来完成。使用INSERT语句可以向一个已有数据表插一个新行,也就插入一行新记录。 在MySQL中,INSERT语句有3种语法格式,分别是INSERT... VALUES语句、INSERT... SET语句和INSERT... SELECT语句。 使用INSERT... VALUES语句插入数据 使用INSERT... VALUES语句插入数据,是INSERT语句的最常用的语法格式。 语法格式如下: INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO] 数据表名 [(字段名,...)] VALUES ({值 | DEFAULT},...),(...),... [ ON DUPLICATE KEY UPDATE 字段名=表达式, ... ] 例子: create database test; #创建库 use test; #进入库 create table info (id int not null,name char(16),score decimal(5,2),age int(8)); #创建表 插入测试数据 insert into info (id,name,score,age)values(1,

磁盘 df 和 du 不一致

你说的曾经没有我的故事 提交于 2020-02-26 19:36:33
现象: df -h 时发现磁盘使用率90%,但是 du -sh 磁盘仅使用了大概50%的空间。 这是因为直接删除了一个被某个进程打开的文件,实际句柄并没有被释放导致。 排查方法: sudo lsof | grep -i delete > lsof.delete less lsof.delete 其中第二列为PID,倒数第三列为大小,最后一列为未释放句柄的文件 解决办法: 重启对应的进程(楼上的PID) 若进程不能随意重启,可选择输入重定向清空该文件 永久解决: 定期关闭进程并移走或删除文件 一般这类文件为日志,可通过日志轮训来切割日志,或不记录日志 猜想: 还有可能是某块盘,未挂到分区之前已经写入了数据,然后又挂到分区 这样会导致已经写入的数据会存在但看不到,df和du看到的数据也不一样 来源: CSDN 作者: Abson_Lu 链接: https://blog.csdn.net/Abson_Lu/article/details/104520174

MYSQL 数据库基本操作

二次信任 提交于 2020-02-26 18:05:54
插入数据 在建立一个空的数据库和数据表时,首先需要考虑的是如何向数据表中添加数据,该操作可以使用INSERT语句来完成。使用INSERT语句可以向一个已有数据表插一个新行,也就插入一行新记录。 在MySQL中,INSERT语句有3种语法格式,分别是INSERT... VALUES语句、INSERT... SET语句和INSERT... SELECT语句。 使用INSERT... VALUES语句插入数据 使用INSERT... VALUES语句插入数据,是INSERT语句的最常用的语法格式。 语法格式如下: INSERT [LOW_PRIORITY | DELAYED | HIGH_PRIORITY] [IGNORE] [INTO] 数据表名 [(字段名,...)] VALUES ({值 | DEFAULT},...),(...),... [ ON DUPLICATE KEY UPDATE 字段名=表达式, ... ] 例子: create database test; #创建库 use test; #进入库 create table info (id int not null,name char(16),score decimal(5,2),age int(8)); #创建表 插入测试数据 insert into info (id,name,score,age)values(1,

ORACLE---Unit01: 数据库原理 、 SQL(DDL、DML)

假如想象 提交于 2020-02-26 18:00:35
--SQL语句是不区分大小写的,但是为了增加可读性,可以将关键字全部大写,非关键子全部小写。 SELECT SYSDATE FROM dual; --SQL语句根据功能有不同分类: --DDL语句(数据定义语言) --用于操作数据库对象。数据库对象包括: --表、视图、索引、序列 --->1.创建表: CREATE TABLE employee_RR( id NUMBER(4), name VARCHAR2(20), gender CHAR(1), birth DATE, salary NUMBER(6,2), job VARCHAR2(30), deptno NUMBER(2) ); --->2.查看表的结构:(两个地方会用到) DESC employee_RR --->3.删除表: DROP TABLE employee_RR; ---DEFAULT ---设置默认值 ---在数据库中,无论字段是什么类型,默认值都是NULL,但是可以在创建表的时候,通过DEFAULT关键字为指定的列单独设置默认值。 ---在数据库中,字符串使用单引号表示字面量,这一点与java不一致,需要注意! ---注:不同的数据类型,数字直接就写数字不需要单引号,而字符的自变量就写单引号。 -- 和Java中不一样的是,在数据库中,不论单一字符还是多字符的自变量,都是单引号。 --

linux下svn命令大全

痞子三分冷 提交于 2020-02-26 03:33:46
linux下svn命令大全 svn(subversion)版本管理工具,svn服务器有2种运行方式:独立服务器和借助apache。2种方式各有利弊。 不管是那种方式,都需要使用各种命令来实现。Linux下的常用svn命令: 1、 将文件checkout到本地目录 svn checkout path(path是服务器上的目录) 例如:svn checkout svn://192.168.1.1/pro/domain 简写:svn co 2、 往版本库中添加新的文件 svn add file 例如:svn add test.php(添加test.php) svn add *.php(添加当前目录下所有的php文件) 3、 将改动的文件提交到版本库 svn commit -m “LogMessage“ [-N] [--no-unlock] PATH...(如果选择了保持锁,就使用–no-unlock开关) 例如:svn commit -m “add test file for my test“ test.php 简写:svn ci 4、 加锁/解锁 svn lock -m “LockMessage“ [--force] PATH... 例如:svn lock -m “lock test file“ test.php svn unlock PATH 5、 更新到某个版本 svn