Script for inserting 1000 record in a table...
Hello Gurus,
I have a table structure like this....
USERID USERNAME USERPWD EMAILID FIRSTNAME LASTNAME ISACTIVE
1 superuser Pyramid123 [email protected] a b 1
21 neha Pyramid123 [email protected] s s 1
I need to write a script where i can insert 1000 dummy related records into this table..
your help would be appreciated..
Thanks,
HP
Hi,
Hope the below solves your problem.
SQL> CREATE TABLE t (USERID NUMBER,
2 USERNAME VARCHAR2(20),
3 USERPWD VARCHAR2(10),
4 EMAILID VARCHAR2(20),
5 FIRSTNAME VARCHAR2(10),
6 LASTNAME VARCHAR2(10),
7 ISACTIVE NUMBER);
Table created
SQL> INSERT INTO t
2 SELECT srl,
3 name,
4 pwd,
5 LOWER(SUBSTR(name, 1, 10)) || '@abc.com',
6 SUBSTR(name, 1, 10),
7 SUBSTR(name, 11, 20),
8 1
9 FROM (
10 SELECT level srl,
11 dbms_random.string('U', 20) name,
12 dbms_random.string('A', 10) pwd
13 FROM DUAL
14 CONNECT BY LEVEL <= 1000);
1000 rows inserted
SQL> commit;
Commit complete
SQL> select count(1) from t;
COUNT(1)
1000
SQL> select * from t where rownum < 10;
USERID USERNAME USERPWD EMAILID FIRSTNAME LASTNAME ISACTIVE
342 JLMPNCRYRZYLEGVVKLQT ypsFEvtYOg [email protected] JLMPNCRYRZ YLEGVVKLQT 1
343 UINEJWHGFHCBOUXWQWEL OSBmpXSSDp [email protected] UINEJWHGFH CBOUXWQWEL 1
344 TLGFDHHLMACMMENWRMZG RIrPTdotaX [email protected] TLGFDHHLMA CMMENWRMZG 1
345 QARLMGJVFJXTJRQUFRFU lkbvEGACDi [email protected] QARLMGJVFJ XTJRQUFRFU 1
346 TYMDMPTWASFOGIYZYBZP SadCSlHiZc [email protected] TYMDMPTWAS FOGIYZYBZP 1
347 XDTRMJICNQNKFMDRRMZB lSchkFigpz [email protected] XDTRMJICNQ NKFMDRRMZB 1
348 DQZUKSXOLMQLMFBMEGNI psBCKgLVPP [email protected] DQZUKSXOLM QLMFBMEGNI 1
349 JMTNKXDDAPDHYLHUVSWF WXYrBQNKJk [email protected] JMTNKXDDAP DHYLHUVSWF 1
350 ZHAFZAJPJCBHNLTCQWTB rhtoGTpBle [email protected] ZHAFZAJPJC BHNLTCQWTB 1
9 rows selected
Regards
Ameya
Similar Messages
-
Commit for every 1000 records in Insert into select statment
Hi I've the following INSERT into SELECT statement .
The SELECT statement (which has joins ) has around 6 crores fo data . I need to insert that data into another table.
Please suggest me the best way to do that .
I'm using the INSERT into SELECT statement , but i want to use commit statement for every 1000 records .
How can i achieve this ..
insert into emp_dept_master
select e.ename ,d.dname ,e.empno ,e.empno ,e.sal
from emp e , dept d
where e.deptno = d.deptno ------ how to use commit for every 1000 records .ThanksSmile wrote:
Hi I've the following INSERT into SELECT statement .
The SELECT statement (which has joins ) has around 6 crores fo data . I need to insert that data into another table.Does the another table already have records or its empty?
If its empty then you can drop it and create it as
create your_another_table
as
<your select statement that return 60000000 records>
Please suggest me the best way to do that .
I'm using the INSERT into SELECT statement , but i want to use commit statement for every 1000 records .That is not the best way. Frequent commit may lead to ORA-1555 error
[url http://asktom.oracle.com/pls/apex/f?p=100:11:0::::P11_QUESTION_ID:275215756923]A nice artical from ASKTOM on this one
How can i achieve this ..
insert into emp_dept_master
select e.ename ,d.dname ,e.empno ,e.empno ,e.sal
from emp e , dept d
where e.deptno = d.deptno ------ how to use commit for every 1000 records .
It depends on the reason behind you wanting to split your transaction into small chunks. Most of the time there is no good reason for that.
If you are tying to imporve performance by doing so then you are wrong it will only degrade the performance.
To improve the performance you can use APPEND hint in insert, you can try PARALLEL DML and If you are in 11g and above you can use [url http://docs.oracle.com/cd/E11882_01/appdev.112/e25788/d_parallel_ex.htm#CHDIJACH]DBMS_PARALLEL_EXECUTE to break your insert into chunks and run it in parallel.
So if you can tell the actual objective we could offer some help. -
Error in inserting a record in to table
hi..
i created a trigger....when i am trying to insert new record in to table i am getting the fallowing error...plz kindly help me out from this...
SQL> create or replace trigger secure_emp
2 before insert on employees begin
3 if(to_char('sysdate','DY') in ('SAT','SUN')) or
4 (to_char('sysdate','HH24:MI') not between '8:00' and '18:00') then
5 raise_application_error(-20500,'error');
6 end if;
7 end;
8 /
Trigger created.
SQL> insert into employees(employee_id,last_name,first_name,email,hire_date,job_id,salary,department
_id)
2 values (300,'smith','jack','SJACK',sysdate,'IT_PROG',4500,60);
insert into employees(employee_id,last_name,first_name,email,hire_date,job_id,salary,department_id)
ERROR at line 1:
ORA-06502: PL/SQL: numeric or value error: character to number conversion error
ORA-06512: at "SCOTT.SECURE_EMP", line 2
ORA-04088: error during execution of trigger 'SCOTT.SECURE_EMP'Yeah. Whenever Oracle sees TO_CHAR('string_literal1', 'string_literal2), it implicitly converts it to TO_CHAR(TO_NUMBER('string_literal1'), 'string_literal2). That's why an error in trigger occurs.
SQL> explain plan for
2 select null
3 from dual
4 where dummy = to_char('A', 'DY');
Explained
SQL> @utlxpls
Cannot SET MARKUP
PLAN_TABLE_OUTPUT
Plan hash value: 397561404
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
| 0 | SELECT STATEMENT | | 1 | 2 | 2 (0)| 00:00:01 |
|* 1 | TABLE ACCESS FULL| DUAL | 1 | 2 | 2 (0)| 00:00:01 |
Predicate Information (identified by operation id):
1 - filter("DUMMY"=TO_CHAR(TO_NUMBER('A'),'DY'))
13 rows selected -
Abort inserting a record in a table using a trigger
Hi there,
Is there any way to abort inserting a record in a table using a trigger?
For full details, I have the following table ("myTable"):
BSC INTEGER NOT NULL,
BTS VARCHAR2(20) NOT NULL,
INFO1 INTEGER,
INFO2 INTEGER
myTable_PK = PRIMARY KEY (BSC,BTS)
I have also a stored procedure that imports a data from text file and inserts them to the specified table (using UTL_FILE package). The stored procedure works great.
But the thing that in the text file itselft it might be (due to third-parity report generation bug) that the primary key will be violated or the BSC/BTS field has null value. In such case I just want to ignore the insertion statement using a trigger.
ThanksOk Jens, could you tell me what exception could I use?
Below a protion of my StoredProcedure.
CREATE OR REPLACE PROCEDURE update_myTable() IS
FHANDLE UTL_FILE.FILE_TYPE;
BSC INTEGER;
BTS VARCHAR2(20);
INFO1 INTEGER;
INFO2 INTEGER;
BEGIN
FHANDLE := UTL_FILE.FOPEN('LOG_FILE_DIR',FILENAME,'R',4000);
LOOP
UTL_FILE.GET_LINE(FHANDLE,STR);
-- Process the line STR and generates BSC, BTS, INFO1, and INFO2 values
EXECUTE IMMEDIATE 'INSERT INTO myTable VALUES(:1,:2,:3,:4)' USING BSC,BTS,INFO1,INFO2;
END LOOP;
EXCEPTION WHEN NO_DATA_FOUND THEN UTL_FILE.FCLOSE(FHANDLE);
END UPDATE_R205BTS;
Remember that I am already using an exception with NO_DATA_FOUND to indicate the end of file then closing it.
Thanks for your reply -
Triggers to insert the record in a table
I have two table 1. Holiday 2. Attendance.
When I insert the record in holiday table for his
advance holiday with empid, the same time I want to insert it attendance table
automatically for the same date using a trigger
Insert into attendance (empid,date,holiday) values (20078,07/10/2014,1). If holiday column value 1 represent holiday marked,
0 represent holiday not marked. The same thing can happen vice versa
If employee mark his current attendance as holiday through attendance,
it should be inserted into holiday table
automatically using triggers.
Insert into Holiday (empid,date,holiday) values (20078,06/08/2014,1). If holiday column value 1 represent holiday marked,
0 represent holiday not marked. The same thing can happen vice versa
Please I am looking for your help , how I can make it using triggers
to insert both table in two different ways of options.
Regards
Pol
polachanHi polachan,
According to your description, if you want to synchronize the data between the holiday table and the attendance table while inserting records into holiday table, you need to create a trigger on the holiday table, please try the following syntax.
use <databasename>
go
create trigger Tr_holiday
on holiday
for insert
as
declare @empid varchar(20),
@date datetime,
@holiday int
select @empid = empid, @date=date, @holiday=holiday from inserted
declare @qty int
select @qty =count(*) from attendance where empid=@empid and date=@date and holiday=@holiday
if @qty<1
begin
insert into attendance
select i.empid,
i.date,
i.holiday
from inserted i
end
Meanwhile, if you want to insert the record into the holiday table when holiday is updated to 1 in the attendance table, you need to create another trigger on the attendance table, please try the following syntax.
use <databasename>
go
create trigger Tr_attendance
on attendance
for update
as
declare @holiday int
if update (holiday)
begin
select @holiday=holiday from inserted
if @holiday=1
begin
insert into dbo.holiday
select empid,
date,
holiday
from inserted
end
end
For more details about creating triggers in SQL Server, please review this article:
CREATE TRIGGER (Transact-SQL).
Thanks,
Lydia Zhang -
Insert 1000 records per second
I need to insert 1000 records in mysql database what is the best approach
i will get the requests from a through a http url currently we are using http server to handle the incoming requestsThis thread was originally posted to the Java Database Connectivity (JDBC).
It appears to be off-topic for that forum.
It has been moved to a database sub-forum, hopefully for closer topic alignment. -
Inserting Multiple Records into two table
I want to insert records from a ADF swing form into two tables. In the first table the primary key is generated by a trigger and then I need to retrieve the primary id generated and then insert multiple records in another table using the primarykey obtained from the first table as foreign key.
How to do this ?User,
If you're using ADF Business components, have a read on the DBSequence data type. If you have two VO's linked by a view link, and the FK is a DBSequence type, all this happens for you out-of-the-box.
Hope this helps,
john -
Inserting new records into database table at runtime
Hi all ,
How to insert new records into database table at runtime on click update?
Thanks.Hi Sasikala,
Just for your understanding am giving a sample code snippet which you can use to read the contents of your Table UI element & save the data on to your database. Suppose you have a button up on pressing which you want to read the data from your screens table & save on to the database then you can proceed as shown below:
1) Obtain the reference of your context node.
2) Fetch all the data present in your table into an internal table using methods of if_wd_context_node
3) Use your normal ABAP logic to update the database table with the data from your internal table
In my example I have a node by name SFLIGHT_NODE and under this I have the desired attributes from SFLIGHT. Am displaying these in an editable table & the user would press up on a push button after making the necessary changes to the tables data. I would then need to obtain the tables information & save on to the database.
data: node_sflight type ref to if_wd_context_node,
elem_sflight type ref to if_wd_context_element,
lt_elements type WDR_CONTEXT_ELEMENT_SET,
stru_sflight type if_main=>element_sflight_node,
it_flights type if_main=>elements_sflight_node.
" navigate from <CONTEXT> to <SFLIGHT_NODE> via lead selection
node_sflight_node = wd_context->get_child_node( name = 'SFLIGHT_NODE' ).
lt_elements = node_sflight->get_elements( ).
" Get all the rows from the table for saving on to the database
loop at lt_elements into elem_sflight.
elem_sflight->get_static_attributes( importing static_attributes = stru_sflight ).
append stru_sflight to it_flights.
endloop.
" Finally save the entries on to the database
modify ZSFLIGHT99 from table it_flights.
if sy-subrc eq 0.
endif.
However a word of caution here.... SAP doesn't ever recommend directly modifying the database through an SQL query. You would preferably make use of a BAPI for the same. Try go through Thomas Jung's comments in [here|modify the data base table which is comming dynamiclly;.
Regards,
Uday -
Insert multiple records into a table(Oracle 9i) from a single PHP statement
How can I insert multiple records into a table(Oracle 9i) from a single PHP statement?
From what all I've found, the statement below would work if I were using MySQL:
insert into scen
(indx,share,expire,pitch,curve,surface,call)
values
(81202, 28, 171, .27, 0, 0, 'C' ),
(81204, 28, 501, .25, 0, 0, 'C' ),
(81203, 17, 35, .222, 0, 0, 'C' ),
(81202, 28, 171, .27, 2, 0, 'C' ),
(81204, 28, 501, .20, 0, 1, 'C' ),
(81203, 28, 135, .22, 1, 0, 'C' )
The amount of records varies into the multiple-dozens. My aim is to utilize the power of Oracle while avoiding the i/o of dozens of single-record inserts.
Thank you,
WillYou could look at the INSERT ALL statement found in the documentation here:
http://download.oracle.com/docs/cd/B10501_01/server.920/a96540/statements_913a.htm#2133161
My personal opinion is that you probably won't see any benefit because under the hood I think Oracle will still be doing single row inserts. I could be wrong though.
The only way to confirm was if you did a test of multiple inserts vs an INSERT ALL, that is if the INSERT ALL met your requirements.
HTH. -
Message split for every 1000 records
Hi All,
My scenario is Proxy to File.We have to process thousands of records from r/3 to.I need to create separate XML file for every 1000 records in receiver directory.Is there any solution to achieve this?
Thanks in advance
Kartikeyahere;s the blog krish was referring to..
Night Mare-Processing huge files in SAP XI -
How to insert a record in ROOSPRMSC table? (accidentally deleted)
Calling an InfoPackage in BW causes short dump, while fixing the short dump issue, accidentally
deleted the "ROOSPRMSC" table entries.
Could you tell me how to insert a record in "ROOSPRMSC" table???Hi Senthil,
Regards,
Phani Raj Kallur
Message was edited by: Phani Raj Kallur -
Start routine for insert a record by each day in a range of dates
Hi all,
I need create a start routine for insert 1 record by each day in a range of dates:
example:
Actual.
DATE_I DATE_F TIME_I TIME_F TIME_minutes
04/04/2008 05/04/2008 13:40:00 23:00:00 2000
Result:
DATE_I DATE_F TIME_I TIME_F TIME_minutes
04/04/2008 04/04/2008 13:40:00 24:00:00 X
05/04/2008 05/04/2008 00:00:00 23:00:00 Y
I thanks any help.
regards.
Alberto.Hi Alberto,
What I understood from your requirement is that you want to split the record into 2 since you have 2 dates coming from the source.
In the transformations you will have to create new rule group one for each of the dates.
You can create the new rule group by clicking on the 'Rule Group' button and then clicking on the 'New Rule Group'.
In the newly created rule groups take care to distribute data for each date separately.
Hope it is clear.
All the best...
Regards,
Krishna -
Trigger for every 1000 record insert
Hi
I am working in oracle 9i / Aix 5.3
I need a trigger which should fire whenever my temp_table growing 1000,2000...etc.,
The records should reach me in the body of email.
Like
Hi
The temp_table count has been reached to 1000.
Thanks
second time execution...
Hi
The temp_table count has been reached to 2000.
Thanks
etc.,
How can i achieve this? I'm ok to shell script also for the above functionality
Thanks
RajWhy do you want to do this?
SQL> create table temp_table (x number);
Table created.
SQL> ed
Wrote file afiedt.buf
1 create or replace function temp_table_cnt return number is
2 pragma autonomous_transaction;
3 v_cnt number;
4 begin
5 select count(*) into v_cnt from temp_table;
6 return v_cnt;
7* end;
SQL> /
Function created.
SQL> ed
Wrote file afiedt.buf
1 create or replace trigger trg_a_temp_table
2 after insert on temp_table
3 for each row
4 declare
5 v_cnt number;
6 begin
7 v_cnt := temp_table_cnt();
8 if mod(v_cnt,1000) = 0 then
9 dbms_output.put_line('Email Sent for '||v_cnt||' records.');
10 end if;
11* end;
SQL> /
Trigger created.
SQL> set serverout on
SQL> ed
Wrote file afiedt.buf
1 begin
2 for i in 1..3456
3 loop
4 insert into temp_table values (i);
5 commit;
6 end loop;
7* end;
SQL> /
Email Sent for 0 records.
Email Sent for 1000 records.
Email Sent for 2000 records.
Email Sent for 3000 records.
PL/SQL procedure successfully completed.
SQL>... however I wouldn't consider this good design, as it requires each of the rows to be committed so that the autonomous transaction procedure can count the number of rows on the table. Of course, if the rows are being inserted through, let's say, user input and are committed on a 1 by 1 basis anyway, then it's perfectly acceptable, but I wouldn't use it for bulk insertions. -
How i can Insert selected records in database table using check box.
Hi Friends,
I have non database block, which displayed multiple records, now I add a Check Box to this block and now I want to insert the records in a database table which I checked. So when I press a button, all the checked records are inserted in the table.
Please send me the code of this solution.
Thanks in advance.
ShahzadI have almost the exact scenario but instead of inserting into the DB, I want to find the Checked records and process them in PL/SQL script.
I currently have a cursor that looks for all the checked records. It's only getting the first record, so I figured I need to loop through the block looking for checked records.
Also can I save them to a temp or PL/SQL table to process later? -
How to insert some records in one table and some records in another table
Interview question
how insert records in two tables by using trigger
CREATE or REPLACE TRIGGER Emp_Ins_Upd_Del_Trig
BEFORE delete or insert or update on EMP
FOR EACH ROW
BEGIN
if UPDATING then
UPDATE emp2
SET
empno = :new.empno,
ename = :new.ename
--, job = :new.job
--, mgr = :new.mgr
--, hiredate = :new.hiredate
, sal = :new.sal
--, comm = :new.comm
--, deptno = :new.deptno;
sdate = :new.sdate,
edate = :new.edate
end if;
if INSERTING then
INSERT INTO emp2
VALUES
( :new.empno
, :new.ename
--, :new.job
--, :new.mgr
--, :new.hiredate
, :new.sal
--, :new.comm
--, :new.deptno
new.sdate,
new.edate);
end if;
if DELETING then
DELETE FROM emp2
WHERE empno = emp2.empno;
end if;
END;
it is working fine but he wants to insert some specific litimit on one table and some specified limit of records in one ..
In this senerio can i insert records by use count of records...
please help me..Can you be more specific on the "Limit"
Conditional insert can be used in this case.
Maybe you are looking for
-
Progress bar on start up doesn't finish
When I log onto my MacBook Pro after I enter my password a progress bar appears which starts to move across but only goes about 20% of the way before the desktop appears. I have heard that there has been a problem with automatic updates which don't f
-
Copying in Preview causes app to crash
All of a sudden copying in Preview causes the app to hang briefly then exit. Anyone else having this problem and any ideas on a workaround for copying .pdf text?
-
Folders are disappearing from my desktop I am on 10.6.8
Folders disappeared from my desktop. All the files in a FileMaker Advanced 11 folder which was on my HD disappeared but the folder remained. Files that were on a backup server disappeared - first half, then a few days later the remaining files were g
-
Itunes library.itl can't be opened
when i want to open itunes, the messages "itunes library.itl can't be opned since it had been configuered by a newer itunes version (or similar, it's written in German) does anybody know anything about this?
-
Dear Sir, Complements of the day, I am javed iqbal ahmed from the city kararchi of the South East Asian country Pakistan. I am fine and I pray from the Almighty Allah(GOD) that you will be fine and good condition of health. Sir during search of regar