大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
1.oracle数据库有一个student表,现有一个excel表:student.xlsx,需导入oracle数据库student表中。
我们提供的服务有:成都网站建设、成都网站设计、微信公众号开发、网站优化、网站认证、雨山ssl等。为近1000家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的雨山网站制作公司
student表的拥有者是system,system密码为test。
2.打开需导入的excel表格,单击office按钮,选择另存为--其他格式。
选择保存路径(置于D:\),保存类型CSV(逗号分隔)(*.csv),设置文件名为student.csv,单击保存 。
3.新建input.ctl文件(置于D:\),内容为:
load data
infile 'd:\student.csv'
append into table student fields terminated by ','
trailing nullcols(id,name,sex,age)
说明:infile后面参数为欲导入的excel表(已转换成csv格式)路径及名称;append在表后追加;table后面跟oracle数据库中的表名称; terminated by ','表示字段分隔符;(id,name,sex,age)表示字段名称列表。
4.同时按Windows徽标键和R键,打开运行,输入cmd,打开命令提示符,输入命令:
sqlldr userid=system/test@netservicename control=d:\input.ctl
说明:system/test,为oracle数据库表student的所有者及其密码;
@ netservicename为网络服务名;
control是input.ctl文件名称及路径。
5.进入oracle数据库,查询student表,excel已导入成功。
输入l 命令,查看历史执行命令,然后可以用c /one/two 进行将One替换成two。或者 a one进行追加one。修改完成后,输入/就可以重新执行了。
Oracle读取数据的最大限制取决于操作系统和Oracle对多块读IO的限制。在物理上来说,一个SQL语句要读取某个记录,必须将该记录读取到DB CACHE中,然后才能从DB CACHE中获取,这种访问我们一般称为物理读(READ),如果这个数据已经存在于DB CACHE中,那么前台进程可以直接从DB CACHE中读取数据,这样的读取成为逻辑读(GET),如果要读取的数据已经被修改,需要从UNDO中读取前映像来获取一致性的数据,那么会从UNDO中取出前映像,和当前的数据块一起形成一个一致性读块(CR BLOCK),然后再从CR BLOCK中读取数据,这种访问方式称为一致性读(CR GET)。 从逻辑上讲, Oracle读取数据通过三种途径:全表扫描( Full Table Sacn,FTS )、引扫描、通过ROWID直接访问。在阅读SQL执行计划的时候,可以通过 TABLE ACCESS子句来查看Oracle访问某个表的方法,一般来说,对于大型的表来说,如果出现 TABLE ACCESS FULL 的提示,是需要加以重视的,一般情况下,对于大表的全表扫描应该是尽量避免的。下面是一个简单的执行计划:Query Plan----------------------------------------- SELECT STATEMENT [CHOOSE] Cost=1234 TABLE ACCESS FULL LARGE [:Q65001] [ANALYZED]查看SQL的执行计划的时候,最右边的,最上面的操作是首先被执行的,上面的例子只有一个操作,就是对表“LARGE”进行全表扫描。当这个步骤执行完毕后,就会将结果集返回给上面一层的语句,上面的例子就是 SELECT STATEMENT 这个语句,一般来说 SELECT STATEMENT 是整个执行计划的顶层。 [CHOOSE]表明这个SQL语句的OPTIMIZER_GOAL ,在这个提示的右侧是COST数据,如果COST是有实际值的,那么说明使用了CBO优化器,如果COST没有实际值,那么说明使用了RBO优化器。比如: SELECT STATEMENT [CHOOSE] Cost=COST只是一个相对的值,只是优化器用来分析访问路径的优劣的,相同的SQL, COST越小的执行计划,起执行效果越好,开销越小。而不同的SQL ,其COST值是没有可比性的。 [:Q65001]指明这部分操作被采用并行查询的方式执行,