Insert data from SQL Server 2008 St.Ed to ORACLE 11gr2 St. Edition

Dear all,
I'm searching a solution for faster transmission of data of a db SQL Server (2008 St. edition) vs PROD db that is an ORACLE 11gr2 St. edition too.
Actually this operation spend 1,5 hours but I'd like cut this time because size of the data grow up in future and this time could be a serious problem ....
Looking on Oracle Enterprise Manager I've seen that main problem is about commit .. SQL Server every record insert into Oracle TBL generate a commit  ... unfortunately I cannot insert when commit must be done ... If will be solved it probably may be solved situation ...
Thanks in advance for every idea.
Andrea

Nardo wrote:
SQL server is connect with Oracle DB by OLEDB, commit every record is why SQL haven't possibility of manage it ... anyway I'm sorry for delay of the answer, I've solved using sqlloader ... faster and without impact ... must be have hight attention if there will be change any field ... that's all.
REDO upgrade was done like first step because anyway it was too small.
Thanks for you answer and sorry again for delay !!!!
Thanks.
If you are depending on MS SQL server technology to do this, you are going to be stuck with the performance of that technology.
A few weeks ago we had a need to load institute a daily load of or DW from a MSSQL database.  The MS-centric person responsible developed a procedure (using MS tools) that took 4.5 hours to load 1.2 million rows.  I ran a session trace and the tkprof report revealed exactly what has already been described.  Single row insert and commit.  I knocked together a PL/SQL procedure that did a single INSERT .. (SELECT .. FROM TABLE@MSSQL). and it ran in 4 minutes.  Using the Oracle transparent gateway for ODBC.

Similar Messages

  • JDeveloper 11.1.1.2.0 - Panel Dashboard using Data from SQL Server 2008

    Hi All,
    I am using JDeveloper 11.1.1.2.0 and am trying to create a cross application dashboard. This dashboard would show 2 panel's of data from an Oracle Database (Already completed this) and two panel's of data from a SQL Server 2008 Database.
    I have successfully installed a SQL Server 2008 database locally on my machine. I have downloaded the JDBC drivers from the Microsoft website and I have two JAR Files:
    * sqljdbc.jar
    * sqljdbc4.jar
    I have created a SQL Server connection within the JDeveloper connections panel and I can successfully query my database.
    I have created a New application module and set its connection to a JDBC connection with the credentials specified within the Connections tab. I then added the two JAR files as libraries to the Model project and
    ran the Application Module tester. This succesfully shows some records.
    Within the View Project I Created a new page and dropped the View Object on as a table. I then go to Run the page and get an error relating to the JDBC drivier not being found. I have read a few posts about adding it to Weblogic lib files and modifying the start up scripts but can anyone give me a definitive working solution? I also tried changing my Application Module to using a DataSource, but I also have the same problem within the Weblogic console (it cannot create a data source for SQL SERVER as it does not have the drivers).
    Any help is greatly appreciated.
    Thanks

    Thanks for the responses.
    I have edited C:\oracle\Middleware\wlserver_10.3\common\bin\commEnv.cmd to add the entries as follows...
    set WEBLOGIC_CLASSPATH=%JAVA_HOME%\lib\tools.jar;%BEA_HOME%\utils\config\10.3\config-launch.jar;%WL_HOME%\server\lib\weblogic_sp.jar;%WL_HOME%\server\lib\weblogic.jar;%FEATURES_DIR%\weblogic.server.modules_10.3.2.0.jar;%WL_HOME%\server\lib\webservices.jar;%ANT_HOME%/lib/ant-all.jar;%ANT_CONTRIB%/lib/ant-contrib.jar;%WL_HOME%\server\lib\sqljdbc.jar;%WL_HOME%\server\lib\sqljdbc4.jar
    You can now see the additional entries at the end of the classpath.
    The Weblogic home is set as follows set WL_HOME=C:\oracle\Middleware\wlserver_10.3
    I have placed the files in C:\oracle\Middleware\wlserver_10.3\server\lib
    I restarted the server. Logged into the Weblogic console and tried to create a datasource with the Microsoft Drivers but still no luck. I gave the Oracle Microsoft Driver a go and it seemed to work! I'm guessing that there is a driver bundle in.

  • How to only migrate data from SQL Server 2008 to Oracle 11?

    According to our requirement, We need to only migrate data from a SQL Server database to an existed
    Oracle database user.
    1) I tried to do it with SQL Developer 3.0.04 Migration Wizard, But find an issue.
    My SQL Server database name is SCDS41P2, and my Oracle database user name is CDS41P2;
    When I used SQL Developer to do offline move data by Migration Wizard, I found all oracle user
    name in movedata files which gotten by run Migration Wizard
    is dbo_SCDS41P2. If the Oracle user name is not the same as my existed Oracle user name,
    the data can't be moved to my existed Oracle user when I run oracle_ctl.bat in command line window.
    So I had to modify the Oracle user name in all movedata files, but it's difficult to modify them because there are many tables in
    databases. So could you please tell me how to get the movedata files which the oracle user name in them is my
    expected Oracle user name?
    2) I also tried to use the 'copy to Oracle' function to copy the SQL Server database tables data
    to the existed Oracle database user. When clicked 'copy to Oracle', I selected 'Include Data' and 'Replace' option
    But I found some tables can't be copied, the error info is as below:
    Table SPSSCMOR_CONTROLTABLE Failed. Message: ORA-00955: name is already used by an existing object
    Could you please tell me how to deal with this kind of error?
    Thanks!
    Edited by: 870587 on Jul 6, 2011 2:57 AM

    Hi,
    Thanks for you replying. But the 'copy to oracle' function still can't be work well. I will give some info about the table. I also search 'SPSSCMOR_CONTROLTABLE' in the target schema, and only find one object. So why say 'name is already used by an existing object'? Could you please give me some advice? Thanks!
    What is the 'Build' version of your SQL*Developer ?
    [Answer]:
    3.0.04
    - what does describe show for the SPSSCMOR_CONTROLTABLE in SQL*Server ?
    [Answer]:
    USE [SCDS41P2]
    GO
    /****** Object: Table [dbo].[SPSSCMOR_CONTROLTABLE] Script Date: 07/18/2011 01:25:05 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE TABLE [dbo].[SPSSCMOR_CONTROLTABLE](
         [tablename] [nvarchar](128) NOT NULL,
    PRIMARY KEY CLUSTERED
         [tablename] ASC
    )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
    ) ON [PRIMARY]
    GO
    - what does describe show for the SPSSCMOR_CONTROLTABLE in Oracle ?
    [Answer]:
    -- File created - Monday-July-18-2011
    -- DDL for Table SPSSCMOR_CONTROLTABLE
    CREATE TABLE "CDS41P2"."SPSSCMOR_CONTROLTABLE"
    (     "TABLENAME" NVARCHAR2(128)
    ) PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
    STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
    PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
    TABLESPACE "USERS" ;
    -- DDL for Index SYS_C009547
    CREATE UNIQUE INDEX "CDS41P2"."SYS_C009547" ON "CDS41P2"."SPSSCMOR_CONTROLTABLE" ("TABLENAME")
    PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS
    STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
    PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
    TABLESPACE "USERS" ;
    -- Constraints for Table SPSSCMOR_CONTROLTABLE
    ALTER TABLE "CDS41P2"."SPSSCMOR_CONTROLTABLE" MODIFY ("TABLENAME" NOT NULL ENABLE);
    ALTER TABLE "CDS41P2"."SPSSCMOR_CONTROLTABLE" ADD PRIMARY KEY ("TABLENAME")
    USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS
    STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
    PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT)
    TABLESPACE "USERS" ENABLE;
    Edited by: 870587 on Jul 18, 2011 1:42 AM

  • How to move data from Sql Server 2008 R2 to Visual Foxpro 6.0 dbf file format

    I have some data that resides in SQL that needs to be automated via a SSIS package to create the output to a Visual Foxpro 6.0 format for use by another application that cannot access the SQL server.
    How can this be done with SSIS

    use the OLEDB provider from Microsoft http://www.microsoft.com/en-us/download/details.aspx?id=14839
    Arthur My Blog

  • Read Money format from SQL Server 2008

    Hi all,
    i created a db link from oracle to sql server using Heterogeneous Connectivity, it works fine, i can read/write data from SQL Server 2008 but i can't read column with money format correctly, i got always a integer number.
    Can anyone help me, please?
    Sergio

    Hi Mark,
    with the command
    describe TEST@DL_SQLSERVER2008
    i get the error :
    Error: ORA-00904: "OBJECT_TYPE": invalid identifier
    If i create a table :
    CREATE TABLE TEMP AS (SELECT * FROM TEST@DL_SQLSERVER2008 );
    the column of the table TEST with type MONEY is mapped to the type number(19,4)
    With the query from SQL Server the output is :
    Entita Serie     Articolo     Prezzo
    1     AB      0207405      3,822
    1     AB      0503019      3,60
    1     AB      0509015      15,75
    1     AB      0706015      1,96
    1     AB      0810050      1,617
    1     AB      STANDARD 0,00
    With the query from Oracle the output is :
    Entita Serie     Articolo     Prezzo
    1     AB      0207405      3
    1     AB      0503019      3
    1     AB      0509015      15
    1     AB      0706015      1
    1     AB      0810050      1
    1     AB      STANDARD 0
    Thanks,
    Sergio

  • HOW TO INSERT DATA INTO SQL SERVER FROM MS ACCESS TABLE??

    NEED TO INSERT DATA INTO SQL SERVER FROM MS ACCESS TABLE.

    this is another method
    http://www.mssqltips.com/sqlservertip/2484/import-data-from-microsoft-access-to-sql-server/
    Please Mark This As Answer if it helps to solve the issue Visakh ---------------------------- http://visakhm.blogspot.com/ https://www.facebook.com/VmBlogs

  • Best way to push change data from sql server to windows/web application

    i apologized that i do not know should i ask this question in this forum or not.
    i have win apps which will load all data initially from db and display through grid but from the next time when any data will change in db or any data will be inserted newly in db then only change or newly inserted data need to be pushed from db side to
    my win apps. now only sql dependency class is coming to my mind but there is a problem regarding sql dependency class that it notify client but do not say which data is updated or inserted.
    so i am looking for best guidance and easy way to achieve my task. what will be the best way to push data from sql server to win or web client.
    there is two issue
    1) how to determine data change or data insert. i guess that can be handle by trigger
    2) next tough part is how very easily push those data from sql server end to win apps end.
    so looking for expert guide. thanks

    Hello,
    Yes, you can create DML trigger on INSERT and UPDATE to get the changed data into a temp table. And then query the temp table from application.
    If you are use SQL Server 2008 or later version, you can also try to use
    Change data capture, which
    can track insert, update, and delete activity that is applied to a SQL Server table and store the changed values on the Change Table.
    Regards,
    Fanny Liu
    Fanny Liu
    TechNet Community Support

  • How to delete the Folder from sql server 2008

    Hi all,
    I was trying to delete the folder from sql server 2008 with the below script
    DECLARE @path VARCHAR(256) -- path for backup files
    DECLARE @cmd VARCHAR(8000)
    DECLARE @folderName VARCHAR(256) -- filename for backup
    SET @folderName = + (CONVERT(varchar(10), GETDATE()-7, 112))  -- 7 days back date folder name
    SET @path = 'I:\Backup_Test\' + @folderName -- Folder path
    SET @cmd = 'del ' + @path -- Delete
    EXEC master..xp_cmdshell @cmd
    --Print @cmd
    This is not working it was asking the Confirmation (I:\Backup_Test\20100629\*, Are you sure (Y/N)? ) what will i do to the delete the folder.
    Thanks,
    Prasad R.

    I would notice   you that T-SQL does not play well to do things like that. Do not you want using .net language to delete folders?
    Old method is
    declare @HR int, @CFOLDER varchar(255),@FSO int
        set @CFOLDER='D:\folder\'
        EXEC @HR = sp_OACreate 'Scripting.FileSystemObject', @FSO OUT
        EXEC @HR = sp_OAMethod @FSO, null, 'DeleteFolder', @CFOLDER 
    Now regarding to your second question please examine xp_fileexist  system stored procedure
    CREATE FUNCTION dbo.fn_file_exists(@filename VARCHAR(300))
      RETURNS INT
    AS
    BEGIN
      DECLARE @file_exists AS INT
      EXEC master..xp_fileexist @filename, @file_exists OUTPUT
      RETURN @file_exists
    END
    GO
    -- test
    SELECT dbo.fn_file_exists('c:\a.txt')
    Best Regards, Uri Dimant SQL Server MVP http://dimantdatabasesolutions.blogspot.com/ http://sqlblog.com/blogs/uri_dimant/

  • Error while exporting data from sql server to excel

    Hi,
    I am trying to export data from sql server to excel.
    The query that I used is s follows
    INSERT INTO OPENROWSET( 'Microsoft.Jet.OLEDB.4.0', 'Excel 8.0;Database=C:\Folder1\abc.xls','select * from [Sheet1$A1:IV65000]')
    select 
    column1,column2.... from Table1
    I get the following error message while doing so..
    String or binary data would be truncated.
    The statement has been terminated.
    One of the column's holds data more than 225 characters.
    What is the way to correct this, i want the whole data of the colum in the excel sheet.

    I haven't had great luck with the INSERT INTO OPENROWSET method.  Can you try one of the many samples from one of these 3 links?
    http://www.excel-sql-server.com/excel-sql-server-import-export-using-vba.htm#Excel%20Data%20Export%20to%20SQL%20Server%20Test%20Code 
    http://www.mssqltips.com/sqlservertip/1540/insert-update-or-delete-data-in-sql-server-from-excel/
    https://www.simple-talk.com/sql/database-administration/getting-data-between-excel-and-sql-server-using-odbc--/
    Knowledge is the only thing that I can give you, and still retain, and we are both better off for it.

  • How to select data from Sql server 2005 database tableinto oracle database table

    Hi,
    I have table text1 in sql server database and text2 in oracle database (11g). Now how to move data from SQL Server table into oracle table. So please help me how to do it.
    Thanks a lot in advance.
    rk
    OS: Windows 7 professional

    Hi,
    you can use export/import wizard and specify sql server as a source and oracle as destination.
    I hope this is helpful.
    Please Mark it as Answered if it answered your question
    OR mark it as Helpful if it help you to solve your problem
    Elmozamil Elamir Hamid
    MCSE Data Platform
    MCITP: SQL Server 2008 Administration/Development
    MCSA SQL Server 2012
    MCTS: SQL Server Administration/Development
    MyBlog

  • Migration from SQL SERVER 2008 to Oracle 10g issues.

    Hi ,
    I'm trying to migrate from SQL Server 2008 to Oracle 10g and I end up with some issues that I wanted to ask some info about it.
    First, I was following a tutorial
    http://st-curriculum.oracle.com/obe/db/hol08/sqldev_migration/mssqlserver/migrate_microsoft_sqlserver_otn.htm
    and and in the last version of Oracle SQL developer I downloaded, I didn't find the Load Database Capture Script Output option.
    My first question is how can I either add this option or is there a new way to load the capture script ?
    Then I use the migration wizard and after following everything, I had the migration complete message from the application.
    When I tried to open my connectionss, it tells me version 11.2 is required. Does that mean that Oracle SQL developper 3 only
    do the migration for oracle 11g? And if I tried the previous versions, it doesn't support SQL server 2008.
    What do I do in this case ?
    Thanks !

    Thank you for your reply.
    After using the wizard and made the offline migration script, in the Migration projects window I made a move data to the oracle connection I previously made and after when I tried to reopen the connection, I couldn't.
    Well I didn't retry it yet to see if I'll have the same behavior but basically this is what I think I did. When I tried to open the connection I made, it says, Oracle 11.2 is required.
    Now, I just generate target from the convert model and it says migration complete but how do I test it and I do I go to oracle and see change ?
    Do I had to create a special user in SQL Server to log to it first ? How do I logon to it ?
    Edited by: 873671 on Jul 20, 2011 7:03 AM
    Edited by: 873671 on Jul 20, 2011 7:19 AM

  • Import data from SQL Server to Oracle

    I have created a dblink in oracle to access the SQL database. I am able to run queries through the dblink and it works fine. I have created a test table on Oracle Server to import the data. The field named "description" has CLOB data type. The corresponding datatype on SQL Server is varchar(7000).
    When I insert the data from SQL Server, it completes successfully without any error but it truncates the data on CLOB field.
    If I run the select query in SQLPlus I can see the entire description.
    Select "description" from sql_view@dblink;
    -- the above works fine.
    CREATE table test
    (description CLOB);
    INSERT INTO TEST
    Select "description" from sql_view@dblink;
    -- this works but it truncates the data after 256 characters
    My question is, how to get the data from SQL Server without truncating characters.
    Thanks in advance,
    Gopal

    I hear the same from other friend that sql server truncated the leading zeros from the id column.
    I really don't have a solution for this but you can try the work around. Export the data to flat file and upload in oracle using SQL loader, as this would be much faster and efficient.

  • Transfer tables from sql server 2008 to oracle 11g

    Hi ,
    I have to transfer 2-3 tables (5 Lacs records each) from sql server 2008 to oracle Ent. 11g (platform Linux)
    i have to upload data with some conditions.
    not allowed to install oracle client on sql server for link server. i can get data in csv file
    which will be the best possible way
    1) using Db link on oracle server
    2) get data into csv file and load using SQL loader
    3) get data into csv and load using external table
    4) using tool - sql developer
    Thanx,

    user10188639 wrote:
    Hi ,
    I have to transfer 2-3 tables (5 Lacs records each) from sql server 2008 to oracle Ent. 11g (platform Linux)
    i have to upload data with some conditions.
    not allowed to install oracle client on sql server for link server. i can get data in csv file
    which will be the best possible way
    1) using Db link on oracle server
    2) get data into csv file and load using SQL loader
    3) get data into csv and load using external table
    4) using tool - sql developer
    Thanx,
    >which will be the best possible way
    which metric measures best? is higher or lower value better?
    How will you, I or anyone recognize which option is best solution?

  • Have trouble query after creating a linked server from SQL Server 2008 to EXCEL 2007

    I created a linked server from SQL Server 2008 Management Studio Express to an EXCEL 2007 workbook using:
    sp_addlinkedserver @server='LSERVER_EX0', @srvproduct='EXCELDATA', @provider='Microsoft.ACE.OLEDB.12.0', @datasrc='C:\Temp\abc.xlsx', @provstr='EXCEL 12.0'
    The linked server LSERVER_EX0 was created, but I cannot see any table(excel sheet), and when i ran the following to query tables,
    sp_tables_ex 'LSERVER_EX0'
    I got:Cannot obtain the schema rowset "DBSCHEMA_TABLES" for OLE DB provider "Microsoft.ACE.OLEDB.12.0" for linked server "LSERVER_EX0". The provider supports the interface, but returns a failure code when it is used.
    Any hint why?
    on another note, i was able to import the EXCEL sheets using the Import and Export Data wizard, but i cannot control the column data type and size in this way.

    Open management studio, goto "Server Objects"->"Linked Servers"->Providers, select the provider you use, right click it and in provider options, check "Allow inprocess".

  • Loading data from SQL server to Oracle database

    i want to create one table in oracle db from table in sql server. Table is huge it got 97,456,789 records.
    I created db link (HS) in oracle database which is pointing to sql server. i can select that table from oracle thru db link.
    select * from "dbo"."t1@dblink;
    i fired below create table.
    create table t2 nologging parallel (degree=3) as select * from "dbo"."t1@dblink;
    and its taking long time.... but its running...
    is there any alternate method to do this and and populate table in oracle db faster.
    Please advise. thanks.

    vhiware wrote:
    create table t2 nologging parallel (degree=3) as select * from "dbo"."t1@dblink;
    and its taking long time.... but its running...I doubt that parallel processing will be used as this is unique to Oracle (using rowid ranges typically) and not SQL-Server.
    is there any alternate method to do this and and populate table in oracle db faster.Part of the performance overhead is pulling that data from SQL-Server to Oracle across the network link between them. This can be sped up by compressing the data first - and then transferring that across the network.
    For example: using +bcp+ to export the data on the SQL-Server box to a CSV file, compress/zip the file, scp/sftp the file to Oracle, and then unzipping it there. Parallel and direct load processing can now be done using SQL*Loader to load the CSV into Oracle.
    If this is a Linux/Unix base system, then the unzip/decompress process can be run in parallel with the SQL*Loader process by creating a pipe between the two - where the unzip process writes uncompressed data into the pipe and SQL*Loader reads and loads data as it becomes available via the pipe.
    Alternatively, you can do you own PQ processing. Let's say the data is date ranged. You can create a procedure on Oracle that looks something like this:
    {code}
    create or replace procedure CopyDay( day date ) is
    begin
    insert /*+ append */ into local_tab select * from remote_tab@remotedb where col_day = day;
    -- add logging info, commit, etc.
    end;
    {code}
    You can now start 10 or more of these for different days and run it in the background using DBMS_JOB.

Maybe you are looking for

  • My apple id is not working in itunes. why?

    my apple id is not working in itunes. why?

  • Not able to select Adapter engine with adapter configuration

    Hello, We've just installed new XI system (PI 7.0 SP7). When we want to configure an comm. channel adapter running on the central adapter (eg. RFC_adapter)engine. In the dropdown bo for the Adapter Engine No entry is available for selection. When loo

  • Relation between qRFC and SXMB_Moni tables.

    Hello Experts, I would like to know if there exists any rerference OR any link between the qRFC tables (TRFCQOUT / TRFCQIN) with the backend master tables of SXMB_MONI (SXMSPMAST, SXMSPERR, SXMSPHIST) ETC. This would give me an idea whether I can fet

  • P_trace & p_debug as a report parameter

    I want to pass enable debug & trace for the report . I need to pass the parameter p_trace and p_debug for enabling trace & debug . I just want to know how I handle this parameter & enable trace & debug

  • Form Received Is Jibberish

    I am such a novice that I didn't even know what forum to submit this question to. This is my problem that I hope you can lend some simple-non programmer type solutions to. I have lucked up on being able to creat great forms in Abode Acrobat Pro LiveC