自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(77)
  • 资源 (2)
  • 收藏
  • 关注

原创 c++中正确使用round()来四舍五入计算

四舍五入的函数参数可以有多种数据类型。不同的数据类型有不同的结果。当他的参数应该是浮点数的时候,结果才是真正的四舍五入。

2023-06-05 14:17:16 512

原创 在Ferora35中安装oracle-database-xe-21c

在Ferora35中安装oracle-database-xe-21c

2022-07-29 13:11:00 412

原创 在rhel8上使用soci连接oracle和postgresql和sqlite

使用soci连接oracle和postgresql和sqlite

2022-07-23 15:08:24 543

原创 C++容器的遍历与程序的性能分析

遍历容器的几种方法的比较

2022-07-22 12:56:39 793

原创 使用sqlplus显示中文为乱码的解决办法

使用sqlplus显示中文为乱码的解决办法

2022-07-11 08:22:59 5054 3

原创 用oracle来演示外键的使用

使用oracle的外键

2022-07-11 08:21:45 162

原创 oracle清理含有引用分区的表的数据库磁盘空间

oracle清理含有引用分区的表的数据库磁盘空间

2022-01-25 11:01:34 811

原创 centos7中关闭oracle服务自动启动的功能

以前,我在centos7中安装了oracle服务。当时的安装命令是 rpm -ivh oracle-xe-11.2.0-1.0.x86_64.rpm。现在,工作过程中暂时不再使用oracle了,可是又不能马上将它卸载。为了不让oracle的后台服务耗费主机资源,应该不要让oracle服务在主机启动的时候也跟着启动。以下是不要让oracle服务自动启动的方式:以root用户登录centos7,编辑“/etc/sysconfig/oracle-xe”文件,修改ORACLE_DB...

2021-07-31 08:34:55 325

原创 oracle的触发器的使用举例

这个文章演示了oracle触发器的使用,以备不时之需-- 创建一个表,未来需要在这个表上建立触发器create table baby_test(id number(20),name varchar(50),birthday date,login_date timestamp);-- 创建一个保存触发器操作的表-- drop table baby_test_log;create table baby_test_log(id number(20),name varc...

2021-07-16 17:06:09 94

原创 使用popen来执行一个命令并获得返回结果

在linux系统中,我们要想执行一个命令,可以使用system()或者exec()或者popen()函数来完成。有时候,我们要将取得命令的返回结果,并处理这些结果,这个时候,就需要用popen()了。 本文就是演示了popen()的用法。需要注意的是popen()需要和pclose()同时使用,就像打开文件和关闭文件同时使用一样。 程序的思路:在用malloc()申请一块内存之后,就显示一下这个进程的内存使用量,free()一块内存的时候,也显示一下内存的使用量。/*cc -g ma...

2021-05-12 20:32:03 2386

原创 linux的LD_LIBRARY_PATH和ldconfig功能分析

LD_LIBRARY_PATH这个环境变量时程序在运行时寻找库文件的目录集合。有时候,我们可以不用LD_LIBRARY_PATH来帮我们寻找库文件,这个时候可以使用ldconfig这个命令。ldconfig命令需要/etc/ld.so.conf.d目录中的文件来配合使用,我们可以在这个目录中创建一个文本文件,里面写好第三方库文件的路径,然后运行ldconfig,这样程序在运行的时候,照样可以找到对应的第三方库。举例:caculate.c// cc -fPIC -shared caculate.c

2021-05-12 20:16:32 783

原创 tigervnc的使用

tigervnc是个很不错的远程连接软件。以前,我工作的时候,使用自己的电脑去连接远程的服务器,通过ssh去登录命令行的方式。现在,如果服务器端,比如是centos,启动的模式是X Window的窗口模式,我们就可以使用tigervnc来连接远程的服务器,并且看到的是桌面,而不是命令行了,是不是很神奇?软件准备服务器端(centos)安装tigervnc和tigervnc-serveryum install tigervnc tigervnc-server客户端(macos)安装tigervnc

2021-04-17 11:49:03 3740

原创 在rhel7.3中编译和使用log4cxx

某公司的应用程序的日志系统使用了log4cxx,我以前没有用个,现在摸索一下怎么使用。因为不同人的主机环境不一样,所以,我在模式的过程中也出现了各种其他的问题,现在将自己出现的问题总结一下。以备后续参考。下载软件需要三个,分别是apr、apr-util和log4cxx。以下是下载路径。https://apr.apache.org/download.cgihttps://logging.apache.org/log4cxx/latest_stable/download.html编译apr-1.7.0

2021-04-10 08:12:44 160

原创 QT连接sqlite数据库的错误及其修改办法

今天在使用qt操作数据库。因为是第一次用,所以,遇到了一些坑,记录一下。系统:macOS语言:QT 5.12错误1:找不到驱动错误提示:QSqlError("", "Driver not loaded", "Driver not loaded")原因在写操作数据库的代码的时候,首先需要一个数据库连接,如下:QSqlDatabase::addDatabase("QSQLITE");此时,默认的数据库连接名字是"qt_sql_default_connection"。如果项目的配置不做调整的话

2021-04-01 17:19:20 4042 2

原创 在mac系统使用vmware fusion安装centos7

因为某公司需要在redhat enterprise linux 7上使用QT来开发桌面应用。我发现mac系统与rhel7的区别还是挺大的,于是就用虚拟机来搭建一个开发环境。如果不使用QT而仅仅是开发服务器端的命令行程序的话,其实用docker来运行rhel容器更加方便。 现在记录一下使用vmware fusion安装centos7所遇到的基本问题和解决办法。 安装centos7 按照centos7本身没有什么太大的难处,再选择应用程序的时候,我也选择了ftp服务器,这个方便...

2021-03-30 08:37:15 367 1

原创 C++程序代码的内存结构分析

C++程序内部的结构,同C程序的内部结构,也是分段的,一般分为代码段、堆、栈、数据段等。可以通过下面的代码来证明:CClassAddress.hpp 文件:#ifndef CClassAddress_hpp#define CClassAddress_hppclass CClassAddress{public: CClassAddress(); int getNum1(); void setNum1(int a);private: int mPrvNum

2021-03-26 14:48:39 173

原创 C程序代码的内存结构分析

程序内部的结构是分段的,一般分为代码段、堆、栈、数据段等。可以通过下面的代码来证明:#include <stdio.h>int globalIntA=10;void variableInStack(){ printf("%s:%d:%s location is %p\n",__FILE__,__LINE__,__FUNCTION__,(void*)&__FUNCTION__); printf("%s:%d:%s global globalIntA is %

2021-03-26 14:43:28 175

原创 在mac中使用docker来搭建oracle数据库服务器

近期需要使用oracle来做点事情,我需要在我的pc上搭建一个oracle服务器。以下就是记录搭建数据库服务器的流程。主机系统:macOS big sur 版本:11.2.3下载安装docker在官网下载docker,路径是:https://docs.docker.com/docker-for-mac/install/,安装成功之后,运行docker,就绪之后,就可以在上面的状态栏看到一个静止的docker图标,此时,在命令行输入docker,shell会提示帮助信息。常用的docker命令,请参

2021-03-22 10:49:19 422 2

原创 用shell来计算文本中的数字之和

今天遇到一个怪事:用wc -l *.txt > wc.out 的文件中,最后一行不是统计的所有文件的记录之和。这样的话,还需要麻烦我自己写个shell脚本,来累加一下wc.out文件中每一条记录的数字之和。 以下是对应的脚本,shell的参数是文件名,这里是wc.out。wc.out的文件格式是『 数字 文件名』。 主要思路就是:读取文件中的每一行,然后用cut命令,得到每一行中的数字,然后把这个数字累加即可。#!/bin/bashif [ $# -ne 1 ]th...

2020-11-06 13:04:45 1472

原创 在mysql中同时使用left join on 和where 的查询结果分析

以前用惯了oracle,在处理左连接和有链接的时候,只需要在sql中添加(+)就可以了,但是在mysql中,将left join或者right join 与 on 和 where进行联合使用的时候,不同的联合用法,得到的却是不同的结果。现在记录一下。假设有左表tb_oder,该表有order_id和user_id字段;有右表tb_user,该表有user_id和user_name两个字段,两个表使用user_id进行关联。SQL1:select o.order_id,o.user_i..

2020-11-05 16:18:31 2182

原创 在kettle使用循环来处理表中的数据

有时候,如果kettle事务中源表的数据非常大的时候,一下子把源表中的数据全部读入内存的方式是不可取的。在mysql中,我们可以通过循环的方式,使用limit来定量取得一部分数据来处理。即,关键的sql是:select * from table_name limit current_value, step_value; 以下做一个思路演示。1:取得记录中的所有的数量,初始化当前循环值等;2:循环的判断条件是:当前的循环值小于最大的循环值2.1:修改sql语句中查询的起始值2.2:用一个转换来处理查询

2020-10-29 13:03:30 1911

原创 在kettle中快速更新一个字段中的信息

数据库中有订单表tb_order,其中有order_id和user_id和user_name等字段。数据库中有用户资料表tb_user,其中有user_id和user_name等字段。现在需要使用tb_user.user_name来更新tb_order.user_name,两个表的关联条件是tb_order.user_id = tb_user.user_id。通常,在两个表都静止的时候,可以使用一个update来解决,如下。update tb_orderset user_name = (sele

2020-10-28 13:10:14 2260

原创 在kettle中使用遍历来更新记录中的字段

数据库中有订单表tb_order,其中有order_id和user_id和user_name等字段。数据库中有用户资料表tb_user,其中有user_id和user_name等字段。现在需要使用tb_user.user_name来更新tb_order.user_name,两个表的关联条件是tb_order.user_id = tb_user.user_id。通常,在两个表都静止的时候,可以使用一个update来解决,如下。update tb_order set user_name =.

2020-10-28 10:16:27 506

原创 在oracle中进行统计排序(跳跃排序和连续排序)

-- 在oracle中进行统计排序(跳跃排序和连续排序)CREATE TABLE tb_score ( id number(11) NOT NULL PRIMARY KEY, score number(11) DEFAULT NULL) ;select * from tb_score;insert into tb_score select 1,87 from dual;insert into tb_score select 2,87 from dual;insert into tb_..

2020-05-11 10:26:28 555

原创 在mysql中进行统计排序(跳跃排序和连续排序)

-- 在mysql中进行统计排序(跳跃排序和连续排序)CREATE TABLE `tb_score` ( `id` int(11) NOT NULL AUTO_INCREMENT, `score` int(11) DEFAULT NULL, PRIMARY KEY (`id`), UNIQUE KEY `id_UNIQUE` (`id`))select * from tb_score;delete from tb_score where id > 0;commit;...

2020-05-11 10:22:50 425

原创 在mac中使用numbers对数据进行分列

简单点说,就是分三步:1、复制;2、粘贴;3、调整;下面举例说明从文本或者其他地方复制下面的文字MONTH_ID FILE_NAME FILE_TYPE AREA_CODE SP_CODE OPER_CODE CHARGE_TYPE02 DED20200228008.971 MMS 0972 801044 170719 02 02 DED20200228008.971 CM 0979 901799 QTDJY 02 02 DE...

2020-05-09 16:12:38 8448

原创 在mac中完全绿色安装mysql服务器

mysql官方提供了一个用界面安装mysql的方法,我不想使用。既然mac也是unix系统,那么,用unix的那一套安装思路也是通行的。可是,我又不想将其安装在/usr/local/mysql,我想电脑是我的,我想把它安装在哪里,我就安装在哪里,毕竟,mysqld不也是一个程序而已。 下面记录一下我真正的完全绿色安装mysql服务器的操作。等哪一天,我不想用它的时候,我直接删除自己定义即可...

2020-01-01 22:32:51 381

原创 oracle中通过基表建立月表的存储过程

某些系统需要按月分表来保存数据。下面的存储过程演示了如何使用基表来建立每个月的月表。处理思路是:1:首先,为基表建立好表和对应的索引。2:将基表保存到一个存储过程需要的表中。3:存储过程读取配置表,根据配置表中的名字,去数据库中查询对应的表的建表语句,然后,用月表的表名去替换语句中的表名,接着就建表。再去查询基表的表是不是有索引,如果有,则从数据库中得到索引...

2019-09-27 11:29:20 266

原创 kettle的数据库配置的表分析

以下场景,用mysql来举例说明。本文是在初步了解了kettle的数据库配置之后,做的总结和分析。将kettle中的配置用数据库管理的时候,在创建了一个新的数据库,还没有做任何kettle中的job和转换的时候,数据库中已经自动创建好了一些基础的表,这些表中有的有数据,那是kettle本身的配置信息,有的表没有数据,那是因为这是一个新的数据库,我们还没有做任何配置。从这个角度来说,任何一个系...

2019-09-02 11:20:33 1180 2

原创 使用oracle的存储过程的例子

十几年没有用oracle的存储过程了,有些东西已经忘了,没有想到今天又要用。在这里写个例子。它演示了存储过程的格式,游标的使用,循环、判断的使用,还有直接执行一个拼接的SQL的用法。以下是代码:create or replace procedure wanglc_test is v_table_name varchar2(50); v_sql varchar2(4...

2019-07-13 18:50:55 103

原创 oracle中查询结果集为空,则得到一个默认值

有同事问我上述问题,我把我的实现思路写出来。子查询把查询的结果和默认的结果全部显示。父查询通过伪列rownum来筛选,如果查询有结果,就有几条就显示几条,而不去显示子查询中的默认值;如果查询没有结果,那就把默认值显示出来举例:select * from (select table_name from user_tables where rownum &lt; 3union all...

2019-02-21 12:32:27 6491

原创 mysql时间与字符串的互转

将时间转换为字符串select date_format(now(), '%Y%m%d%H%i%s'), now();将字符串转换为时间select str_to_date('20190113111158' ,'%Y%m%d%H%i%s');说明:网上,有的人说,表示分钟的%I和%i是一样的效果,实际上不一样的。我曾经被这个坑过。...

2019-01-19 21:13:15 227

原创 onenote的笔记本在windows10保存的路径

onenote挺好用的,支持windows,android,mac等操作系统,完全符合我的需求,并且还没有广告。但是,在删除笔记本的时候,感觉比较费事,因为他没有配置告诉我们文件具体放在哪个路径下了,今天为了在windows系下删除一个不用的笔记本,我分析了一下windows系统中的文件,找到了他的文件保存位置。做个笔记。操作系统:windows10 64位onenote:microsoft...

2019-01-19 12:53:52 22829 1

原创 shell脚本中执行sql的例子

这个例子演示了如何在shell脚本中执行多个sql来操作数据库表。#! /bin/shUSER_HOME=/home/`whoami`. /etc/profileif [ -f ${USER_HOME}/.bash_profile ];then . ${USER_HOME}/.bash_profilefimysql -h 20.1.4.89 -P 8911 -u...

2018-11-29 16:17:10 1235

原创 在crontab中执行shell脚本的问题

crontab中记录的编写比较简单,下面是一个示例:0 2 * * * /app/tpssapp/ftpsrc/tools/statTables/statTables.sh &gt; /app/tpssapp/ftpsrc/tools/statTables/statTables.log表示每天2点执行/app/tpssapp/ftpsrc/tools/statTables/statTab...

2018-11-29 16:04:41 470

原创 java中守护线程的一些概念和用法

网上的资料中,守护线程的功能一般都是“只要当前JVM实例中尚存任何一个非守护线程没有结束,守护线程就全部工作;只有当最后一个非守护线程结束是,守护线程随着JVM一同结束工作,Daemon作用是为其他线程提供便利服务,守护线程最典型的应用就是GC(垃圾回收器),他就是一个很称职的守护者。”可是,我发现真实情况却不是描述的这么回事,因为我对java也不懂,所以在此记录一下守护线程中的一些问题。我...

2018-10-16 17:40:47 265

原创 使用LinkedBlockingQueue来实现生产者消费者的例子

工作中,经常有将文件中的数据导入数据库的表中,或者将数据库表中的记录保存到文件中。为了提高程序的处理速度,可以设置读线程和写线程,这些线程通过消息队列进行数据交互。本例就是使用了LinkedBlockingQueue来模仿生产者线程和消费者线程进行数据生产和消费。为了方便,这些不同的类被写在了一个类中,实际使用的时候,可以单独拆开,举一反三地使用。以下是例子:LinkedBlockingQ...

2018-10-10 13:19:01 1287

原创 在notepad++中插件安装的办法

在notepad++中插件安装的办法新版的notepad++去掉了一个叫做插件管理工具的插件。这就导致我们不能通过界面去安装notepad++的一些比较方便的插件了。本文通过手动安装插件管理工具和ftp插件来说明怎么去解决这个问题。软件要求:npp.7.5.7.Installer.exe:这个是主程序,需要32位的。ftp的插件不能使用在64位的版本中。安装完毕之后,在菜单中选择“?”--&gt;...

2018-07-13 10:41:26 3489

原创 C++中继承关系中的同名隐藏和对策

    在C++及其面向对象的理论中,有这样的场景:一个类继承自另外一个类,如果这两个类都有一个函数名和参数及其返回值一样的成员函数,那么子类的函数会自动将父类对应的函数隐藏。即同名隐藏。在有时的开发过程中,我们却希望子类的成员函数和父类的成员函数均要执行。那么就需要在子类的成员函数中,显式地对父类同名的成员函数进行调用。    下面的例子即演示了同名隐藏的概念和避免同名隐藏的方法。#includ...

2018-06-06 17:26:48 209

原创 使用python对文件中的数值进行累加

问题描述:一个文件由若干条记录组成,记录的格式为:“num1 num2”,有时候,需要统计文件中num1对应的num2的总值。处理问题的思路用传说中的python来处理,很方便。几行代码就可以了。处理思路:1:首先定义一个字典,用于存储最终的结果,这是因为字典中的key是唯一的特性。2:打开文件,按行读取,将每一行的num1当做key,num2当做value。3:判断字典中是否存在key,如果存在...

2018-06-06 17:22:58 8582

Core.Java.Volume.I.Fundamentals.10th.Edition

Core.Java.Volume.I.Fundamentals.10th.Edition

2016-08-22

The Java Language Specification Java SE 8 Edition

The Java Language Specification Java SE 8 Edition.pdf是oracle官方提供的java编程规范

2016-08-08

空空如也

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

TA关注的人

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