上交所行情文件导入数据库

事情的起因很简单,需要将股票收盘行情导入数据库,因为科创板交易时间延长,需要将原有的程序进行改造,众所周知,程序员永远是不够用的,只能自己解决这个问题。
方式是用定时器调用shell脚本。
上交所的mktdt00.txt使用“|”作为分隔符。
核心代码是将mktdt00.txt转成程insert into  table  values( ) 然后有sqlplus导入数据库。
代码一:

#!/bin/bash
dbfpath=/home/oracle/dbf_insert/stockkcb/dbf

IFS=$'\n'
for entry in $(cat $dbfpath/mktdt00.txt)
do
    IFS='|'
    arr=($entry)

if  [   ${arr[0]} == 'MD001' ];   then ##  index

       a="   INSERT INTO mktdt00 VALUES(  ""'"
        a=$a"${arr[1]}""','""${arr[2]}""',"
        a=$a"${arr[5]}"",""${arr[6]}"",""${arr[4]}"
        a=$a",""${arr[7]}"",""${arr[8]}"",""${arr[9]}"",0,0,""${arr[3]}"
        a=$a",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0  )  ;  "
        echo $a>>$dbfpath/mktdt00.sql
elif [   ${arr[0]} == 'MD002' ] || [ ${arr[0]} == 'MD003' ]   || [   ${arr[0]} == 'MD004' ] ;
then     
       ## stock bond  fund
        a=" INSERT   INTO mktdt00 VALUES(  ""'"
        a=$a"${arr[1]}""','""${arr[2]}""',"
        a=$a"${arr[5]}"",""${arr[6]}"",""${arr[4]}"",""${arr[7]}"",""${arr[8]}"
        a=$a",""${arr[10]}"",""${arr[11]}"",""${arr[13]}"",""${arr[3]}"",0"
        a=$a",""${arr[12]}"",""${arr[15]}"",""${arr[16]}"",""${arr[19]}"",""${arr[20]}"
        a=$a",""${arr[14]}"",""${arr[17]}"",""${arr[18]}"",""${arr[21]}"",""${arr[22]}"
        a=$a",""${arr[23]}"",""${arr[24]}"",""${arr[27]}"",""${arr[28]}"",""${arr[25]}"
        a=$a",""${arr[26]}"",""${arr[29]}"",""${arr[30]}"" );"
        echo $a>>$dbfpath/mktdt00.sql
     else
        echo "success!"
fi
done

echo "commit;">>$dbfpath/mktdt00.sql

'MD001' 是指数格式和 其他的格式有所不同。

代码二

#!/bin/sh

. ~oracle/.bash_profile

user='数据库用户名'
pwd='数据库密码'
dbfpath=/home/oracle/dbf_insert/stockkcb/dbf

cd $dbfpath
rm -rf *

wget  http://内网ipip/mktdt00.txt  #下载局域网中的交易所行情文件mktdt00.txt

sh  $dbfpath/readkcb.sh #执行上一下txt转sql 脚本

if [ -s  mktdt00.sql   ];then

     sqlplus  $user/$pwd  <<EOF  >/tmp/imp.log
      truncate table mktdt00;
      @$dbfpath/mktdt00.sql
      quit
EOF

转载于:https://www.cnblogs.com/ianxu/p/11176606.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/386409.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

安卓开发面试题及答案,一次哔哩哔哩面试经历,年薪50W

没有稳定的工作&#xff0c;只有稳定的能力。 又到了万物复苏的季节&#xff0c;在程序猿这个行当里&#xff0c;作为 Android 开发出生的&#xff0c;在经历了八年的脱发生涯后&#xff0c;有了越来越多的想法和感触 趋势 随着各类移动跨平台的兴起&#xff0c;在 ReactNati…

Intent 简单用法

1.Intent有什么用&#xff1f; Android设计理念是鼓励减少组件间的耦合&#xff0c;因此Android提供了Intent (意图) &#xff0c;Intent是一种消息传递机制&#xff0c;可以在程序内使用&#xff0c;也可以在程序间使用&#xff0c;主要用于启动“Activity”“Service”和“广…

安卓开发面试题!带着问题深入学习Handler,进阶学习资料!

进大厂本来就很难了&#xff0c;不过做足了准备&#xff0c;你会发现很多问题都迎刃而解了&#xff0c;当然有时候运气也占了一部分&#xff0c;除了运气以外&#xff0c;当然与我自身的努力也是分不开的。运气也是实力的一部分&#xff0c;毕竟天助自助者~ 每次到年底做总结的…

VueJS教程3

目录 13、Vue实例 13.1 动态组件&#xff08;Tab切换、简化版留言板&#xff09;13.2 使用Vue开发TodoList14、Vue CLI14.1 使用vue-cli开发TodoList接着VueJS教程2。 13、Vue实例 13.1 动态组件&#xff08;Tab切换、简化版留言板&#xff09; 参考&#xff1a;https://vuejs.…

春招我借这份PDF的复习思路,论程序员成长的正确姿势

一. 开发背景 想要成为一名优秀的Android开发&#xff0c;你需要一份完备的知识体系&#xff0c;在这里&#xff0c;让我们一起成长为自己所想的那样。 面试总结 面试大厂一定要做好充分的准备&#xff0c;没有准备就去面试完全是去当炮灰的&#xff0c;更是对自己的不负责。再…

T-SQL语句学习(三)

这部分介绍下视图、索引技术。 1、视图&#xff1a;是从一个或几个基本表&#xff08;或视图&#xff09;导出表。视图与基本表不同&#xff0c;是一个虚表。 当基本表中的数据发生变化时&#xff0c;从视图中查询出来的数据也会随之改变。 1.1 定义视图 a、创建视图的语法要求…

普通二本的辛酸Android面试之路,满满干货指导

一、自我介绍 应该算是起点比较高吧&#xff01;985大学毕业后面一直在国外读研。之前准备面试微软但是可能经验不够&#xff0c;没有通过。经过朋友介绍我准备回国&#xff0c;积累一些开发经验。于是我面试了国内大厂BATJ&#xff0c;还有一些其他比较知名的公司&#xff0c…

python-3.8.0 新特性之赋值表达式

【python-3.8.0 新特性之赋值表达式】 赋值表达式的语法是这样的“ name : expression ”&#xff0c;形式上看和赋值语句 “ ” 差不多&#xff0c;就作用上来看也雷同。也就是说 “:” 不是必不可少的&#xff0c;它只是一个锦上添花的新语法。 【1、例子】 假设我们要对列表…

普通二本的辛酸Android面试之路,算法太TM重要了

前言 编程是一个江湖&#xff0c;江湖之大&#xff0c;鱼龙混杂&#xff0c;一部分江湖人士乃虾兵蟹将&#xff0c;一不小心就被一箭射死&#xff0c;我们称之为“码农”&#xff0c;这些人事江湖的重要组成部分&#xff0c;他们承担着堆砌代码&#xff0c;实现功能设计的使命…

SQL常用日期处理函数(转)

/**datepart()函数的使用 * datepart()函数可以方便的取到时期中的各个部分*如日期&#xff1a;2006-07--02 18&#xff1a;15&#xff1a;36.513* yy:取年 2006* mm:取月 7* dd:取月中的天 2* dy:取年中的天 183* wk:取…

最全的BAT大厂面试题整理,系列篇

前言 看到一篇文章中提到“最近几年国内的初级Android程序员已经很多了&#xff0c;但是中高级的Android技术人才仍然稀缺“&#xff0c;这的确不假&#xff0c;从我在百度所进行的一些面试来看&#xff0c;找一个适合的高级Android工程师的确不容易&#xff0c;一般需要进行大…

记录资料,

C#(1)面向对象的分析与设计(uml 2.0)版(2)C#字符串和正则表达式参考手册.pdf (3)C#应用程序开发全程演练——从灵感到实现.pdf 中文版外加两章 英文的,从出版社网站下. (4)C#大学教程 清华大学译,少好几章.英文版不错.我读的是第一版 .现在有第二版 . (5)C# WINDOWS程序设计 没…

最全面试考点与面试技巧,大厂面经合集

前言 对于字节跳动的二面三面而言&#xff0c;FrameworkMVP架构HashMap原理性能优化Flutter源码分析等问题都成高频问点&#xff01;然而很多的朋友在面试时却答不上或者答不全&#xff01;今天在这分享下这些问点的视频解析给大家&#xff0c;希望对有需要的朋友有所帮助&…

阿里云sql监控配置-druid

今天我们说说数据源和数据库连接池&#xff0c;熟悉java开发的同仁应该都了解C3PO&#xff0c;在这里不做过多的赘述了&#xff0c;今天我们说的是阿里DRUID&#xff0c;druid是后起之秀&#xff0c;因为它的优秀很快占领了使用市场&#xff0c;下边我们一起来看看druid数据源的…

最全面试考点与面试技巧,真香!

写在前面 身边有不少去大厂面试的朋友&#xff0c;其中小金面试字节跳动的经历很有意义&#xff0c;在这里分享给大家。小金是末流211计算机专业大三本科生&#xff0c;前几天面试了字节跳动的广州Android开发实习生。下面是他的面试经历&#xff0c;还有一些他自己的经验。 …

最强Android教程!2021年Android面经分享,大厂面经合集

前言 找工作还是需要大家不要紧张&#xff0c;有我们干这一行的接触人本来就不多 难免看到面试官会紧张&#xff0c;主要是因为怕面试官问的问题到不上来&#xff0c;那时候不要着急 &#xff0c;答不上了的千万不然胡扯一些&#xff0c;直接就给面试官说这块我还没接触到&…

最强整理!字节跳动历年Android中高级面试题全收录!附超全教程文档

开头 让我们一起来看看&#xff0c;字节跳动的第三面&#xff0c;面试官都问了什么&#xff1f;&#xff08;第一二面的题目及答案已整理&#xff0c;需要的可以在文末领取&#xff09; 从七月中旬开始&#xff0c;我前前后后差不多一共投递了八十份简历&#xff0c;到目前为…

最新BAT大厂面试者整理的Android面试题目模板,分享PDF高清版

前言 从毕业到现在面试也就那么几家公司&#xff0c;单前几次都比较顺利&#xff0c;在面到第三家时都给到了我offer&#xff01;前面两次找工作&#xff0c;没考虑到以后需要什么&#xff0c;自己的对未来的规划是什么&#xff0c;只要有份工作&#xff0c;工资符合自己的要求…

C# 利用DotRas 操作adsl

开源项目地址&#xff1a;http://dotras.codeplex.com/ 使用这个可以方便的操作ADSL拨号、断开。有详细的开发文档&#xff0c;需要的可以自己去看。。 /// <summary>/// 创建或更新一个PPPOE连接(指定PPPOE名称)/// </summary>void CreateOrUpdatePPPOE(string up…

最新BAT大厂面试者整理的Android面试题目模板,成功入职字节跳动

前言 **一年中第一段跳槽高潮就要来了&#xff0c;**看到同事一个个离职&#xff0c;又有一部分同事已经找到满意的工作&#xff0c;于是自己也盲目的开始面试起来&#xff08;期间也没有准备充分&#xff09;&#xff0c;日夜奔走&#xff0c;简历投了很多家公司&#xff0c;…