自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 收藏
  • 关注

原创 PL/SQL简介

一、PL/SQL中的数据类型1、字符串类型在 PL/SQL 中的字符串类型所你所想的一样,是一种常见的数据类型定义,它允许在其中有字母和数字。像名字、代码、描述、序列号等都可以包括在字符串中。 char中存储着固定长度的字符串代码,char最大长度为32767个字节。语法:char(max_length) 子类型:character varchar2则存储着长度可变的字符串,varchar2 所允许的最大长度为...

2021-09-22 09:34:49 1074

原创 sql——使用SQL生成SQL语句

一、几个SQL*PLUS命令1、set echo on/offset echo on在执行的时候,看到你的SQL语句。set echo off不想在执行的时候看到SQL语句,只想看到输出的结果。2、set feedback on/offfeedback就是查询所输入的行数,例如:如果运行的select语句返回30行数据,则feedback运行显示:30 row select。set feedback on会显示对行数的计数,set feed...

2021-09-18 14:42:03 2533

原创 Oracle数据字典内部结构

Oracle 数据字典中有大量的关于所有类型的数据库用户的表和视图。一、Oracle用户视图用户视图是在数据字典中的可以为全部用户所拥有的视图,一个用户对其它的用户只有CREATE SESSION 的权限,所有的用户都是这样。1、查看用户select * from user_users;//用户查看表设计select * from user_users;//all_users可以查看所有存在于数据库中的用户select * from all_users;U...

2021-09-18 08:30:45 278

原创 sql——SQL优化

1、使用别名对下列语句进行优化。SELECT EMPLOYEE_TBL.EMPLOYEE_ID,EMPLOYEE_TBL.NAME,EMPLOYEE_PAY_TBL.SALARY,EMPLOYEE_PAY_TBL.HIRE_DATEFROM EMPLOYEE_TBL,EMPLOYEE_PAY_TBLWHERE EMPLOYEE_TBL.EMPLOYEE_ID=EMPLOYEE_PAY_TBL.EMPLOYEE_IDAND EMPLOYEE_PAY_TBL.SALARY>30000 O

2021-09-17 10:53:25 178

原创 sql——在选择语句中使用更新和删除

1、有一个雇员的姓名有问题,对雇员表进行更新。UPPDATE EMPLOYEE_TBL SET LAST_NAME = 'SMITH' WHERE EXISTS (SELECT EMPLOYEE_ID FROM PAYROLL_TBL WHERE EMPLOYEE_ID = 2);2、将雇员的小时报酬增加10%update EMPLOYEE_TABLEset HOURLY_PAY=HOURLY_PAY*1.1where EMPLOYEE_ID =(sele

2021-09-15 17:17:13 165

原创 sql——存贮过程

存储过程是作为数据库的一部分被创建的,它与表 、索引一样是存贮在数据库的内部的。使用 Transcat-SQL 来创建存贮过程的语法如下:create procedure procedure_name [[(]@parameter_name datatype [(length) | (precision [, scale]) [= default][output] [, @parameter_name datatype [(lengt

2021-09-15 15:53:14 214

原创 sql——游标

数据库游标允许你选择一组数据,通过翻阅这组数据记录(通常被称为数据集),检查每一个游标所在的特定的行。游标的用法:游标和局部变量组合在一起对每一个记录进行检查,当游标移动到下一个记录时来执行一些外部操作。保存查询结果以备以后使用。通过执行 SELECT 查询来建立一个游标结果集,如果你的应用程序或过程需要重复使用一组记录, 那么第一次建立游标以后再重复使用将会比多次执行查询快得多。1、创建游标//创建游标//使用Transact—SQ...

2021-09-15 15:37:46 752

原创 sql——临时表

临时表:临时表是一种简单的临时存在数据库系统中的表格,当数据库的链接或退出登录时,会被自动删除。Transact_SQL在TempDB中创建临时表,这个数据库是在你安装SQL-SERVER时创建的,创建临时表可以使用两种语法格式。SYNTAX:SYNTAX1:create table #table_name(fild1 datatype, . . .

2021-09-15 14:53:20 7428

原创 sql——数据库安全

Personal Oracle 与安全:Personal Oracle通过:用户、 角色、权限实现数据库安全。1、创建用户用户就是允许登陆进入系统的账号名,创建用户的语法为:CREATE USER userIDENTIFIED {BY password | EXTERNALLY}[DEFAULT TABLESPACE tablespace][TEMPORARY TABLESPACE tablespace][QUOTA {integer [K|M] | UNLIMITED} ON tab

2021-09-15 11:30:43 317

原创 基于python的人事管理系统设计与实现

from tkinter import *from tkinter import fontfrom tkinter import messageboxfrom os import pathfrom os import remove# 添加、编辑职员信息弹出框类class PopupWindow(object): # 初始化构造及添加组件到弹出框 def __init__(self, master, main_window, title, contact=None): .

2021-09-14 16:47:46 7304 4

原创 sql——事务处理控制

一、事务处理事务处理是指关系数据库执行数据库事务的能力,事务是指在逻辑上必须完成的命令序列的单位,单元工作期是指事务的开始和结束时间。1、开始事务处理所有支持事务处理的系统都必须以一种准确的语法来告诉系统一项事务是如何开始的 ,它有它自己的开始和结束。事务处理只是工作的逻辑分组。在personal oracle中开始事务处理的语句为:settransaction {read only | use rollback segmentseg...

2021-09-14 16:45:28 392

原创 sql——创建视图和索引

1、使用视图创建视图:给BILLS表创建视图。创建的视图实际上是一个虚表。CREATE VIEW DEBTS AS SELECT * FROM BILLS;可以选择特定的行进行新视图的创建。CREATE VIEW CREDITCARD_DEBTS ASSELECT * FROM DEBTSWHERE ACCOUNT_ID = 4;SELECT * FROM CREDITCARD_DEBTS;可以从表中挑选特定的列创建视图。2、列的重命名视图继承了已有列的名字,此外视

2021-09-14 14:06:14 5128

原创 sql——创建和操作表

1、create database语句创建一个名为PAYMENTS数据库。create database PAYMENTS;2、设计数据库(1)建立数据字典大多数 RDBMS 中都提供了生成数据字典的工具包或有说明来告诉你如何安装它。(2)建立关键字段如果列的内容在表中从头至尾都没有重复 ,那它就是主关键字。外关键字则是在自己的关系中不唯一标识记录,但在其它关系中可用作对匹配字段链接的一种关键字。假定你有三张表:BILLS,BANK_ACCO...

2021-09-13 15:39:26 286

原创 sql——操作数据

数据操作语句1、insert语句1.1 insert values语句向表中插入数据时必须遵循以下三条规则:(1)所要插入的数值与它所对应的字段必须具有相同的数据类型。(2)数据的长度必须小于字段的长度。(3) 插入的数值列表必须与字段的列表相对应。(一)正常插入假定你有一个 COLLECTION 的表中存储着你所收集的材料,你可以用下边的语句来 查看其中的内容:select *from COLLECTION;输出为:ITEM WORTH ...

2021-09-13 10:57:47 189

原创 sql——子查询--内嵌的 SQL 子句

子查询:子查询是一种把查询的结果作为参数返回给另一个查询的一种查询。子查询可以让你将多个查询绑定在一起。两表的共有字段是partnum, 假如你不知道这个字段,但是你又想用 PART表的 description 字段来工作 这时可以使用子查询语句。select * FROM ORDERSwhere PARTNUM = (select partnum from PART where DESCRIPTION like "ROAD%");1、在子查询中使用汇总函数像 SUM、AVG、COU.

2021-09-13 09:10:01 518

原创 sql——表的联合

1、等值联合 表具有相同的共有字段才可以进行联合。select C.NAME,C.ADDRESS,O.QUANTITY * P.PRICE TOTALfrom ORDERS O,PART P, CUSTOMER Cwhere O.PARTNUM = P.PARTNUM; 如果你在联合表的时候没有使用 where 子句,执行的其实是笛卡尔积, 这种联合会对 from中指出的表进行完全的组合,假如每个表有 200 个记录的话,那么所得到的结果将会有 40000 行,所以...

2021-09-10 16:05:54 583

原创 sql——sql中的子句

1、where 子句:使用where子句会产生对select结果的限制,where子句将会是使你更与选择性。例如:你想找所填写的支票中超过100元的,你可以这样写:select * from checks where amount>100;2、starting with子句:starting with子句附加在where子句上,作用于like(exp%)相似。//使用like进行查询select payee,amount,remarks from cheaks where

2021-09-10 15:19:59 1672

原创 shell Mybash项目

Shell项目Bash:命令解析器 获取用户输入的命令 创建子进程,由子进程执行命令对应的可执行文件Mybash具体实现的命令:ls:仅显示当前目录下的文件,在mybin下实现扫描目录参考linux程序设计3.8节扫描目录opendir函数打开一个目录并建立一个目录流。如果成功,返回一个指向DIR结构的指针#include<dirent.h>DIR* opendir(const char *path)Readdir函数返回一个指针,该指针指向的结构里保存着目录

2020-10-09 16:05:39 151

原创 软件测试——bug提交及跟踪流程

Bug的跟踪管理指派bug:优先看bug是不是某需求的,指派给对应需求的开发负责人 如果无法区分是哪个需求的问题,项目老大指派常见的笔试面试题:公司的bug是如何进行跟踪的? 遗漏bug?遗留bug? Bug的生命周期?(笔试题) 你提交一个bug,开发说不是,如何处理? 你在发现bug并确认不该的过程中,对于复现率不高,偶发bug如何处理? 有没有你印象深刻的bug,bug的原因/bug当时怎么解决的?测试工具:禅道禅道中生成报表用来写测试报告如何提交一个高效.

2020-10-09 14:07:09 5835

原创 C++——const和static区别

1.const修饰成员变量——>常成员变量(一定要在构造函数的初始化列表里面进行初始化)static修饰成员变量(不属于对象)成员变量时共享的,一定要在类外初始化2.const修饰对象——>常对象(特点:1.成员变量2.不能调用普通的成员方法,只能调用常方法。)普通的对象可以调用常方法static修饰成员方法:1.thiscall——>cdecl约定2.没有this指针,不能访问普通的成员变量3.能访问静态的成员变量,全局变量4.不依赖对象普通的成员方法

2020-09-12 08:30:53 647

原创 C++——Struct和Class的区别

1.Struct在C语言中定义结构体,C++中同class定义类Struct可以包含方法,能写访问限定符,可以实现继承和多态2.默认继承时,基类用Struct 定义,继承方式为public积累用Class定义,继承方式为private3.Class可以用来定义模板类型参数,Struct不可以4.定义类类型时,若没有给出访问限定符,Class默认private,Struct默认public5.C语言中,空Struct,sizeof求值的大小为0,C++中为1(VS不允许定义空的Stru

2020-09-11 22:11:47 153

原创 C++——堆和栈的区别(C++面试)

堆和栈的区别要从两方面来讲:一、数据结构1.栈内存是由系统分配,系统释放,以函数为单位进行栈内存分配,函数栈帧、局部变量、形参变量都存储在栈内存上堆内存是由用户自己分配的,C语言用malloc/free进行申请/释放内存,C++用new/delete进行申请/释放内存,由于堆需要用户自己管理,因此内存很容易造成泄露,而栈不会。2.栈的内存分配释放速度快,效率高,内存都是连续的堆内存的分配释放相对来说效率低一些,内存不一定连续,容易产生内存碎片,但灵活性高二、虚拟地址空间首先,

2020-09-11 21:59:04 1110

原创 C++——编译运行原理

编译连接运行原理(将.cpp文件编译为exe文件的过程):编译运行原理是指将C/C++语言通过汇编生成汇编语言并转换为机器语言的过程。一、预编译(生成*.i文件)1.将所有的“#define”删除,并且展开所有的宏2.处理掉所有的条件预编译指令,如:"#if","#ifend","#endif","#elif","else","#endif"3.处理"#include"指令,这是一个递归的过程4.删除所有的注释"//",和"/**/"5.添加行号和文件名标识6.保留所有的#pra

2020-09-06 21:40:14 629

原创 C++——对象的生存周期

对象的生存周期#include<iostream>class Test{public: Test() { std::cout << this << " :Test::Test()" << std::endl; ma = mb = 0; } Test(int a) { std::cout << this...

2019-10-11 15:09:19 216

原创 C++实现C语言中的链表

#include<iostream>class CLink;class Node{private: int mdata; Node* pnext; friend class CLink;};class CLink{public: CLink() { phead = new Node(); phead->pnext = NULL; } CL...

2019-10-10 19:50:14 167 1

原创 C++——类中的六个默认函数

对象:内存单元+资源定义:开辟内存,产物为变量生成:1.开辟空间 2.调用构造函数(给开辟的内存初始化)销毁:1.调用析构函数(释放资源) 2.释放空间类中的六个默认函数:析构函数、构造函数、拷贝构造函数、赋值运算符重载函数、取地址操作符的重载函数、const修饰的求地址符重载函数1.构造函数(实现初始化,与类名相同)作用:给...

2019-10-10 19:41:23 402

原创 C/C++——内联函数(inline)

内联函数在函数的调用点处直接代码展开,在编译阶段处理宏和内联函数有什么区别?宏-->文本替换(没有安全检查,没有类型检查,不安全)内联函数(一种更安全的宏)(具有安全检查、类型检查,安全)inline函数的优点:没有开栈和清栈的过程,效率高inline函数的缺点:以代码膨胀为代价,以空间换时间的思想设计建议:1.如果开栈(清栈)的效率大于执行的效率,代码体少,代码...

2019-10-10 18:23:23 124

原创 C/C++——内存对齐

内存对齐主要存在于结构体中用于计算结构体的大小内存对齐的概念:各种数据存放的地址需要能够整除该数据本身的字节数(char可存放在任意地址,short能被2整除,int能被4整除)计算内存对齐的方法:1、先将每个成员的字节数写出,然后从第二个成员开始,将前面成员的总字节数补齐成当前字节数的倍数2、结构体的总大小,一定要能整除单个成员最大类型的大小struct A{ int a;//4个...

2019-03-30 10:54:58 163

原创 动态内存

动态内存需要调用的头文件:&lt;stdlib.h&gt;/&lt;malloc.h&gt;动态内存主要涉及四个方面:malloc:申请内存calloc将申请到的内存初始化为0realloc:修改内存的大小free:释放内存1.动态申请100个整型单元,并且每一个单元为0int main(){ int*arr = (int *)malloc(100*sizeof(int)); ...

2019-03-16 12:33:07 90

原创 二维数组的输出、逆置与几个重要概念

二维数组(行主序)#include &amp;lt;stdio.h&amp;gt;//1.输出brr数组的全部内容//void show(int *brr)//error//void show(int brr[3][4]) //ok,不好void Show(int (*brr)[4]){ for(int i=0;i&amp;lt;3;i++) { for(int j=0;j&amp;lt;4;j++)...

2019-03-03 22:13:52 341

原创 指针的算术运算

//指针±数字指针++可能情况:1 加一个字节//error,出现不方便理解的地址2. 加一个单元格3. 加一个数组//error,跳过数组,无意义int *p1;//加4个字节 sizeof(int)char *p2;//加1个字节 sizeof(char)double *p3;//加8个字节 sizeof(double)long *p4;//加4个字节 sizeof(long)...

2019-02-28 00:58:27 325

原创 const

const的使用:作用:1.定义常变量,不允许修改其值。例如:int const a=10;2.防止在函数中修改源的数据。特征:1.基本的数据类型对于const是透明的例如:int const ca=10; const int cb=10; (此时ca==cb)const int cd;//随机值2.const修饰它的直接右边例如:const int *cp=&amp;a;...

2019-02-27 23:41:01 87

原创 尾数相乘取余

假设在n进制下,下面的等式成立,567456=150216,n的值()A、9 B、10 C、12 D、18答案:D分析:4%?=6因此排除B(5n2+6n+7)(4n2+5n+6)=20n4+24n3+282+25n3+30n2+35n+30n2+36n+4220n4+49n3+88n2+71n+42=n5+5n4+2n2+n+6(1)给(1)的两边同时对n取余,得到42%n=6%...

2019-02-18 22:11:28 298

原创 指针的应用--传递参数

void swap_error(int a,int b)//没有传指针{ int tmp=a; a=b; b=tmp;}void swap1(int *p1,int *p2)//没有解引用{ int *tmp=*p1; p1=p2; p2=tmp;}void swap2(int *p1,int *p2)//野指针,悬挂指针{ int *tmp=*p1; *p1=*p2...

2019-02-18 21:00:06 217

原创 指针

*:间接访问符,解引用1 .int *p;定义:整型指针变量2.*p=10; 使用:解引用/间接访问&amp;amp;amp;amp;:取地址符#include&amp;amp;amp;lt;stdio.h&amp;amp;amp;gt;int main(){ int a=10; int b=20; int *p=&amp;amp;amp;amp;a;//&amp;amp;amp;amp;a:获取a的地址(指针) *p=100;

2018-10-28 14:06:49 92

原创 一维数组数组越界

数组越界数组//类型:数组名[数字];数字在使用时表示下标,在定义时表示长度//初始化:定义的时候直接赋值;//数组如果只初始化一部分,则剩余部分为0int main(){ int a; int b;//随机值,数组越界 int arr[10]; int brr[10]={1,2,3,4,5,6,7,8,9,10};//长度 int crr[10]={1,2,3,4,5}; ...

2018-10-28 12:18:23 360

原创 给一位不多于五位的正整数要求:1.求出它是几位数;2.分别输出每一位数字3.按逆序输出各位数字,例如原数为321应输出123

#include&amp;amp;amp;amp;amp;lt;stdio.h&amp;amp;amp;amp;amp;gt;#include&amp;amp;amp;amp;amp;lt;math.h&amp;amp;amp;amp;amp;gt;int Mysqrt(int n){int i;for(i=0;ii&amp;amp;amp;amp;amp;lt;=n;i++);return i-1;return sqrt(n1.0);

2018-10-26 17:04:37 253

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除