[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍

时间:2024-03-19 07:42:19

 引自百度百科:Navicat for Oracle是一套超强的Oracle数据库系统管理工具。它有极具巧思的图形化用户界面(GUI),让你可以快速且容易的以安全且简单的方法建立、组织、存取及共享资讯。Navicat for Oracle可以让用户连接本地/远端Oracle Server、提供一些实用的工具如数据/结构同步、导入/导出、备份及报表以协助管理数据的流程。

        本文主要通过图文的方法介绍了Navicat for Oracle的基本用法,因为最近做J2EE项目涉及到远程数据库连接,故使用了该工具。文章非常简单基础,但还是希望对你有所帮助,如果文章中存在错误或不足之处,还请海涵~
 

 

一.连接远程数据库

 
       安装Navicat for  Oracle软件后运行如下图所示:

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍


        点击”连接“按钮填写相关信息如IP地址,然后连接远程数据库如下图所示。

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍


        连接成功后的数据库如下图所示:

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍


        PS:因项目原因,该文章讲述的是连接远程数据库,但相关操作与本地的一样。
 

 

二. 创建数据库表


      新建数据库表通过如下图点击任务栏的”新建表“或右击空白处创建。

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍


        新建表T_USER_INFO,其中“添加栏位”向表中插入相应字段,目前我插入的字段包括:ID(序号)、USERNAME(用户名)、PWD(密码)、STATUS(权限)、DW_NAME(单位名称)、DW_CODE(单位代码),同时可以设置主键、非空属性、添加注释等操作。
        同时,任务栏中还有索引、外键、触发器、权限供我们设置。这篇文章主要介绍一些基础知识,会基本使用即可,后面有机会给大家深层次讲解下这些用法。

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍


        同时如果想修改已经创建的表的信息,可以通过如下图所示的方法进行操作。右击表T_USER_INFO“设计表”可以对表结构就行修改。

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍


        通过点击“打开表”可以查看用户信息,如下图所示,同时也可以删除表、清空表数据、复制表等操作。

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍


 

 

三. 数据库增删改查


        下面我将结合SQL语句和Navicat for Oracle软件对数据库的增删改查进行讲解。点击“查询=》新建查询”后进行操作,SQl支持的命令包括:
        数据定义语言(DDL) : create, alter, drop
        数据操纵语言(DML): insert, delete, update, select
        数据控制语言(DCL) : grant, revoke
        事务控制语言(TCL)  : commit, savepoint, rollback
 

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍


        1.插入操作
[sql] view plain copy

 

  1. insert into T_USER_INFO   
  2.     (ID,USERNAME,PWD,STATUS,DW_NAME,DW_CODE)  
  3. values('1', 'Eastmount', '123123', '2', '教务处', '10001');  

        运行结果如下图所示,同时可以设置结果升序显示。

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍


        PS:Oracle设置序号ID递增方法比较麻烦,不像MySQL勾选AUTO_INCREMENT。

        2.更新操作
[sql] view plain copy

 

  1. update T_USER_INFO set USERNAME='杨秀璋' and PWD='123456'  
  2.     and STATUS='2' and DW_NAME='软件学院' and DW_CODE='08111003'  
  3. where ID='0';  

        但是会报错:[Err] ORA-00933: SQL command not properly ended
        Orcale语法与MySQL的区别,需要使用逗号替代and。
[sql] view plain copy

 

  1. update T_USER_INFO   
  2. set   
  3.     USERNAME='杨秀璋',  
  4.     PWD='123456',  
  5.     STATUS='2',  
  6.     DW_NAME='软件学院',  
  7.     DW_CODE='08111003'  
  8. where ID='0';  

        运行结果如下图所示:

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍

 

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍


        3.查询操作
[sql] view plain copy

 

  1. select * from T_USER_INFO where USERNAME='杨秀璋';  

        查询结果如下图所示:

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍


        4.删除操作
[sql] view plain copy

 

  1. delete T_USER_INFO where ID='0';  

        运行结果如下图所示:

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍

 
        PS:在数据库操作中,现实中的网站项目会结合SQL语句和Java变量,此时之间空格、换行建议都删除,否则很容易更新自动添加空格等错误。如:
[sql] view plain copy

 

  1. String sql="delete T_USER_INFO where ID='"+ID+"'";  


 

四. 数据库导入和导出


       1.导出数据

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍

 

        选择Excel2007文件如下:

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍
 

        依次点击下一步进行导出:

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍
 

        最好选择“包含列的标题”,Excel中添加标题:

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍

        输出如下图所示:

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍

          2.导入数据
          导入数据的步骤如下图所示:

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍


 

五. 数据库自动备份

 

        数据库备份如下图所示,保存为SQL文件:

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍


        同样可以对具体的某张表进行备份SQL,如下图所示:
[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍

[数据库] Navicat for Oracle基本用法(导入导出正删改查)图文介绍

        打开具体的T_USER_INFO.sql文件代码如下所示:
[sql] view plain copy

 

  1. /*  
  2. Navicat Oracle Data Transfer  
  3. Oracle Client Version : 11.2.0  
  4.   
  5. Source Server         : 远程oracle连接  
  6. Source Server Version : 110200  
  7. Source Host           : XXX  
  8. Source Schema         : XXXXXX  
  9.   
  10. Target Server Type    : ORACLE  
  11. Target Server Version : 110200  
  12. File Encoding         : 65001  
  13.   
  14. Date: 2016-04-07 22:00:50  
  15. */  
  16.   
  17.   
  18. -- ----------------------------  
  19. -- Table structure for "T_USER_INFO"  
  20. -- ----------------------------  
  21. DROP TABLE "T_USER_INFO";  
  22.   
  23.   CREATE TABLE "GUI"."T_USER_INFO"   
  24.    (    "ID" NUMBER(22,0) NOT NULL ENABLE,   
  25.     "USERNAME" VARCHAR2(50) NOT NULL ENABLE,   
  26.     "PWD" VARCHAR2(50) NOT NULL ENABLE,   
  27.     "STATUS" NUMBER(22,0) NOT NULL ENABLE,   
  28.     "DW_NAME" VARCHAR2(100),   
  29.     "DW_CODE" VARCHAR2(50),   
  30.      PRIMARY KEY ("USERNAME")  
  31.   USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS   
  32.   STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645  
  33.   PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)  
  34.   TABLESPACE "USERS"  ENABLE  
  35.    ) SEGMENT CREATION IMMEDIATE   
  36.   PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING  
  37.   STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645  
  38.   PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)  
  39.   TABLESPACE "USERS"   
  40.  ;  
  41.   
  42. -- ----------------------------  
  43. -- Records of T_USER_INFO  
  44. -- ----------------------------  
  45. INSERT INTO "T_USER_INFO" VALUES ('100', 'test01', '000000', '1', '经济学院', '3001');  
  46. INSERT INTO "T_USER_INFO" VALUES ('101', 'test02', '000000', '1', '金融学院', '3002');  
  47. INSERT INTO "T_USER_INFO" VALUES ('102', 'test03', '000000', '1', '工商学院', '3003');  
  48. INSERT INTO "T_USER_INFO" VALUES ('103', 'test04', '000000', '1', '会计学院', '3004');  
  49. INSERT INTO "T_USER_INFO" VALUES ('104', 'test05', '000000', '1', '公管学院', '3005');  
  50. INSERT INTO "T_USER_INFO" VALUES ('105', 'test06', '000000', '1', '管科学院', '3006');