Excel数据导入Oracle数据库

背景

由于旧系统是python编写,而我们这边没有人之前用过python,本来是打算学学python然后把这个案子盘过来的,但由于时间问题,而且后续可能没人维护问题,就还是把这个系统改用C#重写了,逻辑大致还是一样的,但表结构就不是了,且我们用的数据库也不一样。现旧系统要停止使用,所以需将旧系统数据导入新系统。但新系统数据库受管控,不让连,只有服务器可以连接。于是就让那边用Excel按我们的格式导出,然后我们再导入。好像其实是可以使用数据迁移工具的,比如说Kettle或者pentaho的,但我没怎么用过,而且这个系统我写了一部分,后面出差,交接给别人,兜兜转转,还是要写,还要导数据。

原材料

  • Excel数据
  • Oracle 12数据库

所用工具

所遇问题

  • 生成唯一编号=》Excel准备已解决
  • 时间格式=》用Navicat可选择导入的时间格式【1.在Excel内设定 2.更改你的本地的SQL工具的时间格式】
  • 导出insert SQL乱码=》导出Excel
  • 导出时间格式不对=》更改你的本地的SQL工具的时间格式【sqldeveloper程式=》工具=》偏好设定=》资料库=》NLS=》改成你想要的 YYYY/MM/DD HH24:MI:SS 】
  • Excel数据导入Oracle数据库_第1张图片

 

Excel準備

  1. 导入唯一编号,可在Excel内生成(主要用的)
    1.  Ctrl+D                                         一鍵填充【相當於 複製,相當於Ctrl+V】
    2. 先函数(=row(A1)+100)=》:C100 =》Enter =》Ctrl+D        【相當於 自增】

       Excel数据导入Oracle数据库_第2张图片

       

    3. Ctrl+1 =》選擇【自定】=》修改【類型】的數據 為數據添加前綴(XYZ@)後綴(#123)(类型是數字的時候,前後綴不好使,上面都是通用格式)
  2. Excel快捷鍵 
    1. Alt+Q            激活【格式】選項
    2. Ctrl+Shift+↓    選中一列所有數據
    3. Ctrl+Enter        用 函數 填充選中列的數據
    4. Ctrl+D            一鍵填充【相當於 複製,相當於Ctrl+V】
    5. Ctrl+1            快捷打開【存儲格格式】
    6. Ctrl+1            快捷打開【存儲格格式】=》選擇【自定】=》修改【類型】的數據 為數據添加前綴(XYZ@)後綴(#123)(类型是數字的時候,前後綴不好使)
                                                  【不好使,可新增一行,用函數【=F5&"MMM"】(F5是有數字的那一行)】就可以完美添加數字和其他字符
    7. Alt+W+F+R         冻结首行     

软件

我挺想用Toad,可惜没版权,之前用的很顺,现在严管。

  •  导入时间格式报错,可用Navicat(推荐,对时间格式友好,第一次我导的时候,点了多次开始,导致数据重复)
  • 导入时可视化数据,可用sqldeveloper
  • 查询已导入的数据,建议用DBeaver(表名快速出来)

结果

最终完成,但是发现自己的Excel技巧真的渣到爆,多亏了广大网友的知识分享,也感谢这些平台为我们提供了知识的海洋。

你可能感兴趣的:(DB工具,SQL,笔记,Excel技巧,Excel导入数据库,Oracle)