定义一个游标,取出5500条记录。定义循环,每次处理1000条数据,提交,结束。
plsql里面怎么从一张表里面随机取出10条记录 我来答 分享 微信扫一扫 网络繁忙请稍后重试 新浪微博 QQ空间 举报 浏览18 次 可选中1个或多个下面的关键词,搜索相关资料。也可直接点“搜索资料”搜索整个问题。
检查一下游标C1中查询语句的执行计划,看看是不是耗时很多。10万数据并不多,而且你做了函数索引。所以我猜这个不是问题产生的原因;检查一下你的两层循环到底有多少次,是不是次数过多。目测不会超过10万吧。
impdp 用户名/密码 dumpfile=12dmp logfile=12log directory=imp_dir tables=test table_exists_action=append。使用excel文件直接拷贝。这种主要用于要写入的数据已是excel文件或者行列分明的其它格式文件,每一列的值和表结构相对应,可直接打开表的行级锁,把数据拷贝进入。
批量更新用update语句,根据条件不同,可选用where条件。
如果是为了实现指定的业务逻辑的话,是需要对每个列设置值的,除非有的列不需要修改。如果是从excel或其他文件中导入数据,那还有更简单的办法。
采用plsql等工具、或者oracle的imp、impdp命令来导入,这种主要用数据库与数据库之间的大批量数据导入,导入的数据格式为plsql的pde、oracle的dmp等。
批量更新用update语句,根据条件不同,可选用where条件。
update tablename set row = v_tableRec where ...;也可以 insert into tablename values v_tableRec ;其中 update的语法是我在oracle‘中 试出来的。文档很少,的确可以使用。
采用insert into selct from 语句来一次性插入一个集合,这种主要依据于要插入的数据源已经存储于数据库对象中,或者利用dual虚表来构造数据,经过加工后写入一个集合。
1、批量更新用update语句,根据条件不同,可选用where条件。
2、如果是为了实现指定的业务逻辑的话,是需要对每个列设置值的,除非有的列不需要修改。如果是从excel或其他文件中导入数据,那还有更简单的办法。
3、第一步打开电脑上的PLSQL工具。第二步打开数据库连接,选择Sequence。第三步选择要修改的序列,鼠标右键点击编辑。第四步在编辑处的开始于设置初始值(默认从0开始)。
登录PL/SQL到指定数据库。登录后,点击左上方“纸片”状图标,然后选择“Command Window”选项,进入命令窗口。然后在本地电脑编写insert(即插入语句),每句以逗号分隔。如图:然后为文件起名字,以.sql为文件后缀,如“执行.sql”,保存到指定路径,如c盘data目录下。
大家说的没错,只需要一个循环就行了,因为你的数据都是一样,只要控制循环,执行1000次就好了。比如有一个ttt_test的表,里面有个tid字段, 我插入1000个1。
INSERT INTO B SELECT 测试数据, id FROM A 解决问题。
一条insert语句在不使用 insert into table select ... from anohter_table where...格式是做不到的。
字段)(字段入围全部可以不写)+as select+字段+from+数据来源表名 where+条件;(注意:前后字段顺序一致)如果从外部表导入,那么就没什么问题sqllar导入。如果是需要手动的输入,那么我建议就建立外部表,然后用sqllar去倒,可以每次输入都同时输入一张外部表,然后用sqllar导入,这样就可以了。