How to insert 22.5K rows in one sql statement in Oracle

Hi Gurus,
I have a one table with one column. I require to input 22.5k numbers example "08323459" in that table. Can anyone tell me how to insert those 22.5K numbers with one sql command.
I am using PL/SQL client. And oracle version is 11G.

If you have an Excel file, the simplest approach is generally to save the file as a CSV, copy it to the database server, create an external table that exposes the file as a table, and then write your INSERT by selecting the data from the external table.
INSERT INTO permanent_table( column_name )
  SELECT column_name
    FROM external_tableAssuming you have SQL*Loader installed on your client machine, you could also use SQL*Loader to read the data in the file and load it into the database table.
Justin

Similar Messages

  • Insert multiple rows with one sql statement in access

    Hi,
    I'm trying to copy a table into another. What I want to do is to use "Insert into table1 select * from table2 where field > val". Something like that. I know a lot of databases support it. I was wondering if ms access ODBC driver also supports it. I searched quite a bit and haven't found a definitive answer on this.
    Thank you

    Yes, M$ Access 2000 supports it. This is from their help:
    INSERT INTO Statement
    Adds a record or multiple records to a table. This is referred to as an append query.
    Syntax
    Multiple-record append query:
    INSERT INTO target [(field1[, field2[, ...]])] [IN externaldatabase]
    SELECT [source.]field1[, field2[, ...]
    FROM tableexpression
    Single-record append query:
    INSERT INTO target [(field1[, field2[, ...]])]
    VALUES (value1[, value2[, ...])
    The way you've written the INSERT, table1 and table2 have to have the same # of columns and the same types, of course.

  • Script error - Inserting multiple rows in one SQL statement.

    Hi,
    Tried using INSERT ALL INTO command inside Script. But getting below error.
    Oracle <> error message for operation <OCIStmExecute>: <ORA-00928: missing SELECT keyword>.
    Same query with single insert statement runs fine without any issues.
    Oracle eg:
    INSERT ALL
        INTO item (title) VALUES ('title5')
        INTO item (title) VALUES ('title6')
        INTO item (title) VALUES ('title7')
    SELECT * FROM dual;
    Appreciate your suggestions.
    Thx

    Hi,
    Actual syntax is as below:
    INSERT ALL
      INTO suppliers (supplier_id, supplier_name) VALUES (1000, 'IBM')
      INTO suppliers (supplier_id, supplier_name) VALUES (2000, 'Microsoft')
      INTO suppliers (supplier_id, supplier_name) VALUES (3000, 'Google')
    SELECT * FROM dual;
    Now in your non working query, you have applied comma after first INTO statement.
    Please remove it.
    Thanks,
    Swapnil

  • How to insert a new row in the middle of an set of rows

    Hi
    How to insert a new  row in the middle of an set of rows ? and How to Reset the line id after the new row added ?
    Regards,
    Sudhir B.

    Hai,
    just try this,
    Instead of using omatrix.Addrow(1,-1) use like
    omatrix.AddRow( RowCount , Position)
    RowCount
    The number of rows to add (default is 1)
    Position
    The position of the new rows (0-based; default is -1, meaning append row to the end)
    After adding rows in matrix For, sno.
    for i=1 to omatrix.visualrowcount
    otext=omatrix.getcellspecific("columnid",i)  '--where columnid is the unique id of the sno column
    otext.value=i
    next i
    Hope this helps you.
    Thanks & Regards,
    Parvatha Solai.N

  • How can i use one SQL statement to solve problem?

    How can i use one SQL statement to solve the question below?
    For a Table named A, there is a column named F(char type).
    Now select all the records where F like '%00' and update their F value to '%01'
    Just one SQL statement.Do not use PL/SQL block.
    How to do that?
    Thanks.

    What is the data volume for this table?
    Do you expect lots of rows to have '%00' as their value?
    Following two statements come to mind. Other experts would be able to provide better alternatives:
    If you have index on SUBSTR(f, 2):
    UPDATE A
    SET    f = SUBSTR(f,
                      1,
                      length(f) - 2) || '01'
    WHERE  substr(f,
                  -2) = '00';If most of the rows have pattern '%00':
    UPDATE A
    SET    f = SUBSTR(f,
                      1,
                      length(f) - 2) ||
               DECODE(SUBSTR(f,
                             -2),
                      '00',
                      '01',
                      SUBSTR(f,
                             -2));

  • Getting A Count In One SQL Statement

    Since I don't know how to do what I'm about to ask, I would normally create a table (tbl1) with the main dataset I want and then create a second table (tbl2) with additional data I want, join the two and update tbl1 data with tbl2 data.
    However, I would like to know how to do this in one SQL statement. I somehow need to link the count sql with the main body..?
    So..I have to pull data by group id. Each group id can have a certain number of active members in it. I would like to use one SQL statement to pull the group id's and also, at the same time, give me a count of each group's active membership. Both the main and count statments in the below SQL include the emp_grps table which can obviously be linked so the right groups are updated..
    Not sure how to begin to reflect this in an SQL statement, so I'll just give you the wrong version to show what data elements I have. The following gives the total count by all group's in each groups individual record. Of course, as mentioned, all I want is that group's share of the membership in their individual record:
    select group_id,
    (select count(*)
    from elig elg
    join emp_grps eg
    on elg.group_id = eg.group_id
    where eg.rmc_code in ('CR')
    and elg.elig_start_date < sysdate
    and elg.elig_end_date > sysdate) mbr_count
    from odw.emp_grps eg
    where eg.rmc_code in ('1M')
    Output from this query:
    GROUP_ID MBR_COUNT
    A 10,000
    B 10,000
    C 10,000
    D 10,000
    What I want to see:
    GROUP_ID MBR_COUNT
    A 7,000
    B 1,000
    C 1,500
    D 500
    Thanks for any assistance..

    Hi,
    So you want one row for every distinct value of group_id, with a count that reflects just that group_id.
    That sound like a job for GROUP BY group_id and the aggregate COUNT function, like this:
    SELECT    eg.group_id
    ,       COUNT ( CASE
                      WHEN  eg.rmc_code  IN ('CR')
                    THEN  1
                  END
                )     AS mbr_count
    FROM        elig           elg
    JOIN       emp_grps      eg    ON   elg.group_id  = eg.group_id
    WHERE       eg.rmc_code             IN ('CR', '1M')
    AND       elg.elig_start_date < SYSDATE
    AND       elg.elig_end_date   > SYSDATE
    GROUP BY  eg.group_id
    HAVING       COUNT ( CASE
                      WHEN  eg.rmc_code  IN ('1M')
                    THEN  1
                  END
                ) > 1
    ORDER BY  eg.group_id
    ;It's unclear what you're trying to do with eg.rmc_code. I'm guessing you want to count the rows where it's one value ('CR'), but only display groups that also have another value ('1M').
    Of course, I can't say for sure without seeing your actual tables, or at least small test versions of them.
    Post CREATE TABLE and INSERT statements (relevant columns only) for all tables involved, and the resutls you want from that sample data (if it's not the results you already posted).
    Always say which version of Oracle you're using.

  • HOW do I create a href to an sql statement?

    Answer to query:
    “You sould create a href to an sql statement ( create new user / passwd : and insert in a table (C_user,C_PASSWD), to have a list of users registred at your application)
    A htp page can manage this
    you should create roles that be granted to users,
    1- create &user dientified by &passwd;
    2- create role1....;
    3- grant &role1 to &user1;
    :user will be added by user if he chooses registration href.
    then he must add information in order to continue registration or push OK to confirm registration and let oracle grant previleges to the new user, a trigger can insert the new informations to the user_table_traces.”
    MY QUESTION:
    HOW do I create a href to an sql statement?
    Thank You

    Hello,
    I have an application written in PL/SQL that sits on top of an Oracle database. I want to know how add a password/login feature to the application. In other words the user can go to a certain URL to access and use the application. However when the user clicks on a certain link that is restricted, then the webpage displays fields so that the user has to enter a username and password. In order to access restricted features of the application such as ADD, UPDATE and DELETE.
    Thanks

  • Can you really update two tables in one SQL statement

    Ok a post in the forum has got me awefully curious:
    Can you update two tables in one update statement i.e something like this
    update table a , b
    set b.<column> = something
    a.<column> = something
    Something to this effect.
    If you are curious to know what post I am talking about it is called "updating a single row"

    No. You can only update one table in one SQL statement.

  • How to get the process id of a sql statement or a session  ....

    How to get the process id of a sql statement or a session . ..?
    Thanks

    What about this?
    SELECT pid
      FROM v$session s, v$process p
    WHERE p.addr = s.paddr
       AND s.sid = :sid;   -- replace :sid with your session idRegards.
    Al

  • How to call a FoxPro .prg file through SQL statement

    I created a program exclusive.prg which basically consisted of the statement USE my table exclusive. How can i call this function through a SQL statement using java

    Hi,
    Thank you for he reply.
    Runtime.getRuntime().exec(..)works fine with .exe files.
    but, when a foxpro program file(.prg) is compiled, a (.fxp) file is produced and not a .exe file
    when i write some thing like
    statement.execute("exclusive.fxp")i'm getting an error. here is the stack trace
    java.sql.SQLException: [Microsoft][ODBC Visual FoxPro Driver]Syntax error or access violation
         at sun.jdbc.odbc.JdbcOdbc.createSQLException(Unknown Source)
         at sun.jdbc.odbc.JdbcOdbc.standardError(Unknown Source)
         at sun.jdbc.odbc.JdbcOdbc.SQLExecDirect(Unknown Source)
         at sun.jdbc.odbc.JdbcOdbcStatement.execute(Unknown Source)
         at excel.TestMom.main(TestMom.java:28)i also tried using
    statement.execute("do exclusive.fxp") and
    statement.execute("do exclusive.prg")I got the same error.
    Dont know what else to do.Can you please suggest some way to work around.

  • Execute just that one SQL statement ....

    Would like to request to add running just that one sql statement in the statment worksheet which has your cursor in it without having to select the entire statement.
    Updating any part of a statement deselects it ..... reselecting a larger statement is cumbersome and time consuming
    Regards
    Ronald

    There are some problems with the statement selection (as per the other reply) but you can run just the current statement that the cursor is in, with the F9 or the Run Statement button on the SQL Worksheet.
    If you are used to using TOAD where blank lines are seperators, remember that Raptor expects you to terminate your SQL statements with a ; and your PL/SQL statements with a / (on a new line).

  • Report Painter - how to insert sub header rows with no values

    In a report painter, I am designing a report with several rows with formulas. I need to insert a sub-header row in the middle of the rows. That will not have a value. It shall contain no value, but I am given only options of either insert a row of characteristics or a formula. I need neither of them. Can we have something excel  like feature in report painter (4.6c) just to insert a sub header row? If so how do we get that.
    e.g
    ADMINISTRATIVE EXPENSES (how to insert this row?)
    Account 1 - 10

    Hi,
    try to add a formular row containing a formular like = +x -x.
    Maybe you can use "formatting / row" and use overscores / underscores to get a blank row (underscore one line, overscore the line thats following).
    No other idea...
    best regards, Christian

  • How to generate synthetic rows (raw(16) guid cols) in one SQL statement?

    We're populating a table containing two GUID columns:
    create table object
    ( object_guid raw(16) primary key
    , project_guid raw(16)
    )All object GUIDs are unique (thus the PK), and each object belongs to a given project (should be a FK to some project table). We want N objects / rows, belonging to only 100 projects, i.e. 1% of the rows of the object table belong to the project #1, 1% to #2, etc...
    Right now we're using about 25 lines of C++/OCI code to do that (one query doing a "select sys_guid() from dual", and using the generated GUIDs to do inserts into object), but I suspect it's possible to do this using a single SQL statement using mysterious connect by or some other Oracle SQL magic. (our OCI code does quite a few round-trips to do the equivalent).
    Would anyone please demonstrate how to generate the rows as explained above, and possibly describe how it works for the non-initiated?
    Thanks, --DD
    PS: I'm sure it can be done in PL/SQL as well, but I'm interested in a SQL version if one's possible.

    I've found two ways, both taking a few SQL statements, but somehow I think this ought to be possible without intermediary tables... I'm sure there's a better way.
    #1drop   table project_tmp;
    create table project_tmp
    as select rownum pid, sys_guid() guid from dual
    connect by level <= 100;
    drop   table object_tmp;
    create table object_tmp
    as select mod(rownum, 100) + 1 pid, sys_guid() guid from dual
    connect by level <= 1000;
    drop   table object;
    create table object
    as select o.guid object_guid, p.guid project_guid
    from object_tmp o, project_tmp p
    where o.pid = p.pid;
    drop table project_tmp;
    drop table object_tmp;#2:drop table project;
    create table project
    as select mod(rownum, 100) + 1 prj_id, sys_guid() guid from dual
    connect by level <= 100;
    drop table object;
    create table object
    as select mod(rownum, 100) + 1 prj_id, sys_guid() object_guid from dual
    connect by level <= 1000;
    alter table object add project_guid raw(16);
    update object o set o.project_guid = (select guid from project p where p.prj_id = o.prj_id);
    drop table project;
    alter table object drop column prj_id;Verification:select count(distinct project_guid) from object;
    select project_guid, count(OBJECT_GUID) from object group by project_guid;

  • How to insert 20 records  only in one table

    hi to all,
    i want insert 20 records only in a table,but suppose i want to enter 21th record it will not inserted .
    suppose delete one record then insert, it will insert.
    but always count(*) is not greater than 20.
    is there any solution for that,
    pls help me

    Yes there is a solution for that using a materialied view:
    SQL> select * from v$version;
    BANNER
    Oracle Database 10g Express Edition Release 10.2.0.1.0 - Product
    PL/SQL Release 10.2.0.1.0 - Production
    CORE    10.2.0.1.0      Production
    TNS for 32-bit Windows: Version 10.2.0.1.0 - Production
    NLSRTL Version 10.2.0.1.0 - Production
    SQL> drop table t purge;
    Table dropped.
    SQL> drop materialized view t_mv;
    Materialized view dropped.
    SQL> create table t (
      2  x integer,
      3  y varchar2(30)
      4  );
    Table created.
    SQL> CREATE MATERIALIZED VIEW LOG on t
      2  WITH ROWID (x, y)
      3  including new values;
    Materialized view log created.
    SQL> CREATE MATERIALIZED VIEW t_mv
      2  REFRESH FAST ON COMMIT AS
      3  SELECT count(*) cnt
      4  FROM t;
    Materialized view created.
    SQL> alter table t_mv ADD CONSTRAINT chk check(cnt<=20);
    Table altered.
    SQL> insert into t select object_id, object_name from all_objects where rownum <
    21;
    20 rows created.
    SQL> commit;
    Commit complete.
    SQL> insert into t values(21,'KO');
    1 row created.
    SQL> commit;
    commit
    ERROR at line 1:
    ORA-12008: error in materialized view refresh path
    ORA-02290: check constraint (TEST.CHK) violated
    SQL>
    SQL> select count(*) from t;
      COUNT(*)
            20
    SQL>Not sure that trigger based solution works due to multi versioning read consistency.

  • How to insert line or row in a table?

    Hi OAF experts,
    can anyone show me how to insert row or line in a table bean by setting the table.setAutoInsertion(false) ?
    Thank you.
    Jon

    As per Dev Guide:---
    The other change you can make is to suppress the default Add Another Row button behavior of adding a
    single row to the view instance associated with the table, so that you can handle the event with your own code.
    The following code example illustrates how to accomplish this:
    processRequest
    // Enabled add row and turn off the default "Add Another Row" table event
    // The add row event has to be auto-handled by developer in processFormRequest
    tableBean.setInsertable(true);
    tableBean.setAutoInsertion(false);
    processFormRequest
    if ((tableBean.getName()Equals(pageContext.getParameter(SOURCE_PARAM))) &&
    (ADD_ROWS_EVENT.equals(pageContext.getParameter(EVENT_PARAM))))
    OAApplicationModule am = pageContext.getApplicationModule(tableBean);
    am.invokeMethod("handleInsertRow", null);
    // The ***AMImpl.java in which method "handlInsertRow" has been defined
    public void handleInsertRow()
    OAViewObject vo = findViewObject("voName");
    vo.invokeMethod("handleInsertRow");
    // The ***VOImpl.java which is associated with the table; and in which the
    // handleInsertRow is defined
    public void handleInsertRow()
    Row row = createRow();
    // Set any default attributes
    row.setAttribute(...);
    // Insert the row into the VO
    insertRow(row);
    Thanks
    --Anil                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

Maybe you are looking for

  • Best practice regarding package-private or public classes

    Hello, If I was, for example, developing a library that client code would use and rely on, then I can see how I would design the library as a "module" contained in its own package, and I would certainly want to think carefully about what classes to e

  • How to restore photos with all albums and metadata to later version of iPhoto?

    Hi everyone I recently had a hard drive crash on my "vintage" 2006 intel iMac. Got the HD replaced but the support service I used was unable to retrieve any of my data off it. Luckily I had all files backed up in a cloud service. The support service

  • Time machine local snapshot restoring hangs

    Interested in others experiances with restoring form a local snapshot. Mine fail. They cause finder to stall at "preparing to copy". I have tested by clearing the local snapshot and then letting my Macbook pro create a new one. Then tried to restore

  • How can I transfer images and keep their filenames

    When I sync the images between my macbook and ipad it renames the images to IMG001...How can I transfer the images onto the iPad and keep their original filenames?

  • Why my program can't exit ?thanks

    here is my code: I want to exit it when I press "F1",but it don't have any response ,why?thanks! import java.awt.*; class myframe      public boolean handleEvent(Event evt)           if (evt.id==Event.F1) System.exit(0);           return true;      p