相关文章推荐

之前在项目中导入基础数据时,因为代码写的不够完善,导致一些列的数据没有正确导入,在系统中重新导入所有基础数据又太麻烦,所以想到把没导入数据库的列单独放入EXCEL中,通过PL\SQL导入到数据库中,并通过一个表的列去更新另一个表对应的列。

一、在oracle数据库中建立一个临时表,我的叫CELL_ANGLE,其表结构如图:

二、准备导入的数据,excel版本为2007,文件名为angle.xls,存放位置在D:\PLSQL\

第一行与数据库的列名一一对应,以下为要导入的数据,导入数据要符合表的完整性定义

三、使用PL\SQL的工具,Tools下面的ODBC Importer工具,在ODBC Importer的用户/系统 DSN中选择Excel Files,在用户名中输入要导入表所属的用户名,密码中输入登录密码,本例中数据库用户名为cmms,之后点击连接按钮。

四、点击连接按钮后,会弹出“选择工作薄”对话框,通过“驱动器”选择文件存放的位置,本例angle.xls放在D:\PLSQL\,在“文件类型”中选择Excel文件(*.xls),在“文件类型”上方的空表框中选择要导入的文件,点击该文件后,在数据库名中会显示要导入的文件名,本例中为angle.xls,选择完成后点击“确定”按钮。

五、点击确定按钮后,在接下来弹出的对话框“表/查询”中选择“导入表”,本例中数据放在Excel表的Sheet1$中,点击“'D:\PLSQL9\angle.xls’.'Sheet1$'”,在结果预览中会显示要导入的数据

六、点击“到oracle的数据”设置oracle相关的设置

在“所有者”中选择angle表的所有者,本例中所有者是cmms;在“表”中选择angle表,在字段中选择excel表和angle表中对应的列名,在“字段类型”中选择对应列的数据类型

七、选择完成后,点击“导入”按钮,系统会显示导入的数据数量和时间;至此,数据就导入完成,那如何用这些数据去更新其他表中对应列的数据呢?

用一个表的列更新另一个表对应记录的列:update base_station t set t.high_way=(select a.high_way from angle a where t.bsc=a.bsc and t.btsid=a.btsid and t.city_id=a.city_id ) ;可总是不成功,看了看提示:“单行子

查询返回多于一个行”。原来是两个表的记录并不是一对一的关系,一个表中的记录数大于另一个表,即不关联的记录,所以才会失败。按照提示,查询条件中加上“

rownum < 2 ”,成功。

oracle 如何将同一 表中 的某 一列 更新 到另 一列 ======================================= create table KKK_TEST   A  VARCHAR2(20),   B  VARCHAR2(20),   ID NUMBER not null  ------------------------------- 第一种方法: update tablea set column_name1=(select name2 from tableb where tableb.name3=tablea.name1) 只 修改 一个 update tablea set column_name1=(select name2 from tableb where tableb.name3='a') where tablea.na... 为此,您可以使用联接概念。让我们首先创建 一个 -my sql >createtableDemoTable1->(->Idint,->Namevarchar(10)->);使用插入命令在 表中 插入一些 记录 -my sql >insertintoDemoTable1values(100,'Bob');使用select语句显示 表中 的所有 记录 -my sql &... 这种查询称为相关子查询.根据您的要求,查询如下….update students sset s.department = (select e.qualificationfrom employee ewhere s.uniquename = e.uniquenameand s.Homecountry = e.Homecountry);根据您的回复 更新 此帖子.再次,继续,始终发布创建 并插入语句(和预... 1、PL/ SQL 修改 数据 ,找到要 修改 数据 ,右击—编辑 数据 ; 2、点击小锁图标,可以增加或删除,也可以编辑某行 数据 ,然后点击小绿色对号;        注意:点击对号之后并没有真正保存,还需要提交事务,这样才算是真正 修改 了。点击对号之后,还要点击提交事务按钮。 在做 Oracle 相关开发的时候,经常遇到类似的问题,利用 a的 记录 更新 b的 对应 记录 ,这时候需要注意,如果 SQL 写的不当,会导致, a中key不存在于 b中的 记录 除key之外的fields 更新 成NULL。 DROP ... where b.device_code =a.device_code) 格式 update A  set ( A字段) =(select B字段(注和 A 对应 字段)from B 准备阶段1.建 语句:create table table1(idd varchar2(10) ,val varchar2(20));create table table2(idd varchar2(10),val varchar2(20));2.插入 数据 :insert into table1 values ('01','1111');insert into table1 values ('02'...
 
推荐文章