Conversion problems with Memo field in Access database

I have the latest version of Migration Workbench and the Access 2000 plug-in.
I am using an ODBC driver, and the SQL conversion requirements for converting
to a native driver seem too time and labor intensive to be feasable.
My problem is that I have some "Memo" columns in my Access database containing
over 200,000 rows that I need converted to Oracle. This is something I'm going
to need to do over-and-over again for different Access databases.
I gave up on mapping the Access "Memo" datatypes to Oracle "Clob" datatypes. It
was either taking forever or taking WAY too long.
Then I tried mapping the Access "Memo" datatypes to "Varchar2(4000)" and although
it completed it took longer than my customer will like (think 1/2 an hour just for
all the rows of one memo column in one table).
Finally I tried going into the original Access database and converting the "Memo"
column into a "Text" column. It wouldn't work, I kept getting the error:
=====
Microsoft Access can't change the data type.
There isn't enough disk space or memory.
=====
even though I had over 10GB of free disk space and only 1/3 of my memory was being
used. I assume this is a memory-max limitation in Access 2000.
Any suggestions for speeding the conversion? Could I stagger using Migration workbench
to create the tables. . .then use SQL*Loader to load the data. . .then use Migration
workbench again to put in the idexes, etc? Would this be faster even if it worked?
Thanks,
Aaron Chawla

I have the latest version of Migration Workbench and the Access 2000 plug-in.
I am using an ODBC driver, and the SQL conversion requirements for converting
to a native driver seem too time and labor intensive to be feasable.
My problem is that I have some "Memo" columns in my Access database containing
over 200,000 rows that I need converted to Oracle. This is something I'm going
to need to do over-and-over again for different Access databases.
I gave up on mapping the Access "Memo" datatypes to Oracle "Clob" datatypes. It
was either taking forever or taking WAY too long.
Then I tried mapping the Access "Memo" datatypes to "Varchar2(4000)" and although
it completed it took longer than my customer will like (think 1/2 an hour just for
all the rows of one memo column in one table).
Finally I tried going into the original Access database and converting the "Memo"
column into a "Text" column. It wouldn't work, I kept getting the error:
=====
Microsoft Access can't change the data type.
There isn't enough disk space or memory.
=====
even though I had over 10GB of free disk space and only 1/3 of my memory was being
used. I assume this is a memory-max limitation in Access 2000.
Any suggestions for speeding the conversion? Could I stagger using Migration workbench
to create the tables. . .then use SQL*Loader to load the data. . .then use Migration
workbench again to put in the idexes, etc? Would this be faster even if it worked?
Thanks,
Aaron Chawla

Similar Messages

  • Problem with memo field displaying

    I have a table in MS access with a memo field. Everything the
    user inputs in the field is recorded in the table. When I try to
    output the memo field I am on getting part of the field. Attached
    is the code for displaying the data from the acty_comments field.
    Also below is the actual data that is in the field. When I copy the
    contents of the field to a word document and run word count I get
    4,680 word. Can anyone tell me what is going on.
    Thanks
    Actual Data:
    "The answers to the questions are below in italic magenta.
    The answers reiterate FAR sections. As they are parts of
    published regulations, there is no sense in referring to them
    ""official GSA policy"" as if there is some other authority for the
    informa
    - here is where it stops-
    - here is what should be next
    tion.
    Ask Acquisition is a convenience service of the Office of
    Acquisition Policy; not as an avenue for policy decisions. If they
    need a formal response from the Office of Acquisition Policy, you
    will need to send any formal inquiries to
    - more data -

    What is the value of the
    Long Text Buffer advanced setting for your Access data
    source in ColdFusion Administrator? And/or is CLOB enabled?
    Phil

  • Problem with a field set to refresh after insert at Row level

    hello all,
    i have a problem with a field (a serial) which is set by a db trigger at insertion. The field "refresh after insert" is properly set in the Entity and everything is refreshed correctly when i insert data via an adf form in a jspx but when i want to insert programmatically nothing is refreshed. I insert data this way :
    ViewObject insertVO = findViewObject("myView");
    Row newRow = insertVO.createRow();
    newRow.setAttribute("mandatoryAttribute1",value1);
    newRow.setAttribute("mandatoryAttribute2",value2);
    <more init here but not the serial since it will be set by the DB trigger>
    insertVO.insertRow(newRow);
    but when i want to get back the value with "newRow().getAttribute("TheSerial");" i always get a null back and not the value set by the db trigger.
    One way to get the serial is to commit after each insert but i don't want to commit between inserts.
    i've tried to unset the refresh after insert and override the createDef() method to setUseReturningClause(false) as it's is advised in chapter 26.5 of the ADF 4GL dev. guide but in this case i have an exception JBO-29000: JBO-26041.
    How can i get the value back properly ?
    thanks
    -regards

    The data for the newly created row doesn't get inserted into the database until the commit is executed, so the insert trigger isn't called.
    If you need to get the value without committing, then you should implement the trigger programmatically and drop the trigger from the database. The code below shows how you could do this.
    ViewObject insertVO = findViewObject("myView");
    Row newRow = insertVO.createRow();
    SequenceImpl seq = new SequenceImpl("MY_SEQ", insertVO.getDBTransaction());
    Long next = (Long)seq.getData();
    newRow.setAttribute("primaryAttribute", new Number(next));
    ...You will need to replace MY_SEQ and primaryAttribute with the correct values for your example, but this should acheive what you want.

  • Problem with currency  field in smart form

    hi
    friends ..
    i had problem with currency field in smartform iam printing 5 currecny
    fields after the main window .But not getting printed on right way gets printed down from the given mesaurement and i get lot of gap betwen the
    each fields for ex.
    33,260.00
    120.00
    0.00
    0.00
    0.00
    i thought the the problem is with space .so iwanted to condense it but cannot as it is currency field so move into character fields .but the user want out put in currency format like 22,60.20 if i  get the value in char variable i get 2260.20 which i dont want .
    so pls help me how to condense or shift left and print the currency field on right place.
    regards
    answers will be rewarded points.

    hi,
    this is a normal problem u can avoid this by moveing these currencu value to a character field then print the char field us ing condece... &var(C)&..
    eve if not solve the problem use the TEMPLATE node..
    Please Close this thread.. when u r problem is solved. Reward all Helpful answers
    Regards
    Naresh Reddy K

  • Problems with Memo data type in access

    I have a Java program which is connected to a Microsoft Access Database. When trying to get a Memo data type field out of the DB and putting it into a StringBuffer, it causes a Function sequence error, even though it does put the field into the said StringBuffer.
    For all other data types, like text (string), long integer etc there is no error but only for a memo field.
    What's the best way to get a memo field out of an Access DB without it causing problems? or should i just forget Microsoft's Access and make my DB in Oracle?

    Hi! Can you tell me how connect a java program with a Microsoft access DB? Should I have to use a particular driver? Where I can find it?
    thank you vcery much for your help!!

  • Another problem with updating in ms access

    Hello there,
    Me too has a problem with the update statement and ms access (using 2003).
    I've read many other problems, but a way to the solution that worked for I didn't found :S
    The strange thing with my problem is that i'm able to update integer fields in the database, but not varchar/text fields.
    I'm not getting any exception back, the database is closed (i'm very sure), so HELP! :)
    I'll show you the code i'm connecting with the database:
    public void openDatabaseConnection() {
            // Eerst controleren of de DatabaseDriver wel aanwezig is.
            try {
                Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
            catch (Exception e) {
                System.out.println("Looking for Class: " + e.toString());
            // Nu kan de connectie met de database opgezet worden.       
            try {
                theDatabaseConnection = DriverManager.getConnection("jdbc:odbc:Shawa","","ShaBaMa");           
            catch (SQLException ex) {
                System.out.println("openDatabaseConnection: SQLException: " + ex.getMessage());
                System.out.println("openDatabaseConnection: SQLState: " + ex.getSQLState());
                System.out.println("openDatabaseConnection: VendorError: " + ex.getErrorCode());        
        }The code for updating an integer field (wich is working!) is like this:
        public Customer cashCustomer(Customer aCustomer){
            PreparedStatement pstmt;
            ResultSet result;
            try{
                openDatabaseConnection();
                pstmt = theDatabaseConnection.prepareStatement("UPDATE customer SET aantal_bier = aantal_bier + ?, aantal_fris = aantal_fris + ? WHERE id=?");
                pstmt.setInt(1, aCustomer.getCashBeer());
                pstmt.setInt(2, aCustomer.getCashSoda());
                pstmt.setInt(3, aCustomer.getId());
                theDatabaseConnection.setAutoCommit(false);
                pstmt.executeUpdate();
                theDatabaseConnection.commit();
                pstmt.close();
                theDatabaseConnection.close();
            catch (SQLException eSql){
                System.out.println("Cash Customer: " + eSql.toString());
                System.out.println("Cash Customer: SQLException: " + eSql.getMessage());
                System.out.println("Cash Customer: SQLState: " + eSql.getSQLState());
                System.out.println("Cash Customer: VendorError: " + eSql.getErrorCode());
            return aCustomer;
        }Now the code for updating Varchar/text fields (wich is not working):
        public Customer editCustomer(Customer aCustomer){
            PreparedStatement pstmt;
            ResultSet result;
            try{
                openDatabaseConnection();
                pstmt = theDatabaseConnection.prepareStatement("UPDATE customer SET name=? , lastname=?, onderdeel=?, aantal_bier=?, aantal_fris=?, op_kaart=? WHERE id=?");
                pstmt.setString(1, aCustomer.getName());
                pstmt.setString(2, aCustomer.getLastname());
                pstmt.setString(3, aCustomer.getSection());
                pstmt.setInt(4, aCustomer.getBeer());
                pstmt.setInt(5, aCustomer.getSoda());
                pstmt.setInt(6, aCustomer.getId());
                pstmt.setString(7, aCustomer.getAddCash());
                theDatabaseConnection.setAutoCommit(false);
                pstmt.executeUpdate();
                theDatabaseConnection.commit();
                pstmt.close();
                theDatabaseConnection.close();
            catch (SQLException eSql){
                System.out.println("Updating Customer: " + eSql.toString());
                System.out.println("Updating Customer: SQLException: " + eSql.getMessage());
                System.out.println("Updating Customer: SQLState: " + eSql.getSQLState());
                System.out.println("Updating Customer: VendorError: " + eSql.getErrorCode());
            return aCustomer;
        }I can add and delete from the database. The thing with the ' ' didn't work for me too.
    Anybody a solution for me??? plz plz plz!

    You are updating zero records. Because you are filling in the parameter ofWHERE id=?with this code:pstmt.setString(7, aCustomer.getAddCash());The executeUpdate() method returns the number of records affected, if you wish to check that.

  • Problem with Prepared Statement & MS Access

    Hi
    I have tried to find some info about this but can't see anything specific to what I think the problem may be. Hopefully someone can point me in the right direction.I am trying to get information out of an MS Access database using a Prepared Statement but I am getting strange results.
    When I run the query in the database it gives me the correct totals (�51) for 4 records. When I run the Prepared Statement ,I get 81. Has it got anything to do with the data type I am using( sorry if this is a really basic question). here is my code- the connection etc is elsewhere.
    private void getReportMoneyTotal() throws SQLException
              Calendar todayTotal =Calendar.getInstance() ;
               SimpleDateFormat reportDateFormat = new SimpleDateFormat("dd MM yyyy");
              PreparedStatement preparedT =context.getConnection().prepareStatement(
                   "SELECT Sum(tblSession.Fee) AS Total, Count(tblBooking.BookingID) AS CountOfBookingID FROM tblSession INNER JOIN "+
                   "(tblBooking INNER JOIN tblCustomer_Booking ON tblBooking.BookingID = tblCustomer_Booking.BookingID) ON tblSession.SessionID = tblBooking.SessionID "+
                   "WHERE (((tblBooking.EventDate)>DateAdd('m',-1,#"+reportDateFormat.format(todayTotal.getTime())+"#)) AND ((tblSession.Session)='Morning' Or (tblSession.Session)='Evening')) OR (((tblSession.Session)='Afternoon') AND ((tblBooking.Extension)=Yes))"
              ResultSet resultTotal =preparedT.executeQuery();
              resultTotal.next();
              Double total =resultTotal.getDouble("Total");
              Locale locale = new Locale("GBP");
            NumberFormat gbpFormat = NumberFormat.getCurrencyInstance(locale);
              System.out.println(gbpFormat.format(total));
              preparedT.close();
         }I do realise that my code probably isn't very elegant but I'm only learning!

    Hi Matt--
    I am not clear if you are saving the url with the # # around
    the text or if
    the
    data already contains the # marks.
    When you insert a link, you want to make sure you insert is
    insert into table ( link1) values ( <cfqueryparam
    cfsqltype="cf_sql_varchar"
    value='#linkvaluehere#'> )
    remember to
    1) enclose your data's value inside quotes (some databases
    are picky about
    single v. double quotes).
    2) if it IS in quotes, swap doubles for singles and see if
    that helps.
    3) make sure your data being saved is NOT double hashed like
    '##linkvalueher##'. Double ##'s tell
    Coldfusion not to treat it as a variable.
    hope his helps,
    tami
    "Mattastic" <[email protected]> wrote in
    message
    news:f9c7h0$8ub$[email protected]..
    | Hi Folks,
    |
    | I'm storing a link in a nvarchar field in SQL server,
    www.foo.co.uk, it
    looks
    | and works fine in SQL server. Problem occurs when I setup
    an ADP in Access
    and
    | insert links. Certain links have a hash symbol around them.
    so
    |
    http://www.foo.co.uk, would be #
    http://www.foo.co.uk# which is
    causing
    problems.
    |
    | Can anyone tell me why this is happening? and how to stop
    it?
    |
    | Thankyou
    |

  • Problem with Exporter for MS Access 3.2 in SQL Developer

    Hi,
    I have problem with exporting tables and data from MS Access to XML with Exporter for MS Access 2000.
    This error ocurr: 'Error #5 - XML Exporter'
    When I use Exporter for MS Access 2002 this error ocurr: 'Error #3478 - XML Exporter'
    Any leads how to solve this problem ?

    Thread moved to Forum Home » Database » SQL Developer
    SQL Developer
    Please, stay tune there.
    Nicolas.

  • Access 2010, Sharepoint 2010 issue with adding field to access db table

    I needed to add an additional field to one of my access tables contained in the sharepoint list. 
    My application is a front end Access DB (run locally), and the backend is the 'data' database contained in the sharepoint lists.
    I added the field to the database (called BOM).  When I open the access list (from sharepoint) , and also look at the database in access, the field is there and things are fine.
    However, it does not show up in my linked front end.  I deleted the linked sharepoint tables from my front end, and then re-imported.  Now I see the BOM field I created, but it has replaced the 'ID' field, which was the primary key.  I had
    added the 'BOM' field as the last field in the table.  Now it is the first field, having replaced the 'ID' field. 
    What's going on here? 
    Thanks in advance!

    Hi,
    This is the forum to discuss questions and feedback for Microsoft Office, and the issue more related to Sharepoint 2010, I'll move your question to the Sharepoint 2010 forum
    http://social.technet.microsoft.com/Forums/sharepoint/en-US/home?forum=sharepointgeneralprevious
    The reason why we recommend posting appropriately is you will get the most qualified pool of respondents, and other partners who read the forums regularly can either share their knowledge or learn from your interaction with us. Thank you for your understanding.
    George Zhao
    TechNet Community Support

  • Problem with decimal fields using BADI For PD Infotypes

    Hi,
    I'm implementing BADI  HRBAS00INFTY.
    For reading the fields of infotype , I'm using the substring
    of the field NEW_INNNN-VDATA .
    I have a problem with fields of type DEC.
    In field NEW_INNNN-VDATA it looks like this :  '####'
    I believe that the possible reason for this is conversion from DEC to CHAR
    But I don't know how to fix it.
    Thank you .
    Message was edited by: Alon Lozinsky

    Hi Alon,
    We had same issue. Use following code.
    data: hri1011_str type hri1011.
    move new_innnn-vdata to hri1011_str.
    HRI1011_STR fields will have decimal values.
    Let me know if you still have any issues. If solution works, kindly do Point Recognition.
    -Bharat

  • Problem with number field

    Hi,
    I'm using ADO (Oracle Provider for OLEDB) to connect Oracle 9. If the type of any field in table is Number(9) and I open query with this field, all negative values are displayed as positive values. For example: If I write -1 value to this field and then post the dataSet (Delphi7 - TADOQuery) value is refreshed to 1. Real value in database is -1.
    Could anybody help me with this problem?
    Regards Jan.

    Once again :)
    I finally foud out that Deplhi does support (varDecimal), but delphi TCustomADODataSet (ADO recordSet wrapper) component incorrecltly treats such field type. It regards Decimal(<9,0) as integer (TIntegerField) but when it gets value from underlying ADO recordset it expects integer variant. So it's delphi problem. I hat to fix this problem in source code of this component.
    Regards Jan.

  • Problem displaying memo field

    I have a table in MS access with a memo field. Everything the
    user inputs in the field is recorded in the table. When I try to
    output the memo field I am on getting part of the field. Attached
    is the code for displaying the data from the acty_comments field.
    Also below is the actual data that is in the field. Can anyone tell
    me what is going on.
    Thanks
    Actual Data:
    "The answers to the questions are below in italic magenta.
    The answers reiterate FAR sections. As they are parts of
    published regulations, there is no sense in referring to them
    ""official GSA policy"" as if there is some other authority for the
    informa
    - here is where it stops-
    - here is what should be next
    tion.
    Ask Acquisition is a convenience service of the Office of
    Acquisition Policy; not as an avenue for policy decisions. If they
    need a formal response from the Office of Acquisition Policy, you
    will need to send any formal inquiries to
    - more data -

    are you using GROUP BY? or aggregating in some way? using
    DISTINCT?
    There is a limitation in Access if so.
    I know there is a M$ technote somewhere, but I can't find it
    right now.
    Here's a link that might help
    http://allenbrowne.com/ser-63.html
    Tim Carley
    www.recfusion.com
    [email protected]

  • Problem with currency fields in alv while editing

    hi guys,
    while creating the editable fields and saving the data in database i have problem with currency(price fields),
    when iam entering 10000 it is storing as 100.00 in database but
    i want to store it as 10,000.00
    can any one help me ....
    it is urgent
    thanks..

    When populating the fieldcatalog for ur currency amount field then
    populate these additional fields with currency key and table name where this key field belongs.
             cfieldname     type slis_fieldname, " field with currency unit
             ctabname       type slis_tabname,   " and table
    May be then it will solve ur prob.
    Regards,
    Joy.

  • Anyone else having issues writting string "memo" fields to Access 2007-2010 or SQL Server Express 2008-2012?

    I have a data cluster that I am working to write to either Access 2007 thru 2010 and/or SQL Server Express 2008 thru 2012 all on a Windows 7 64 bit OS. Some of the elements are long strings that I put delimited data for the raw trace data. The fields can be 10's of KB long. With Access I cannot stuff any string >255char into the memo field. With SQL Server Express 2008R2 - 2012 I found that if the strings are >32767 they again fail to fill the memo fields. The Access write or reads work fine otherwise, just not the listed offending fields in the cases mentioned.  Anyone else having the issue or a solution?

    If the long string field has repetitive data, you might be able to compress it using GZIP to reduce it's size below the 32K limitation you mentioned.
    GZIP compress/uncompress of string using .NET
    Now is the right time to use %^<%Y-%m-%dT%H:%M:%S%3uZ>T
    If you don't hate time zones, you're not a real programmer.
    "You are what you don't automate"
    Inplaceness is synonymous with insidiousness

  • Big problem with a select using remote database

    Hi Guy.
    I have a big problem with a simple query, but this is a scenario.
    Actuallly I'm in Alexandria - Egypt with a server with Oracle 10.2.0.4 database 32 bit on linux Red Hat as 4.8. the server can connect to another database oracle but 9.2.0.6 installed on Red Hat As 4.5 placed in Milano Italy . Ttwo networks are connected via two adsl cisco router with firewall and Vpn functions. In Egypt there isn't a very good adsl.
    In Alexandria, I'm trying to connect to database in Italy with sqlplus. The sqlplus connected I write.. select * from addetti and all work fine.
    My problem is that when I try to make the same select on a table with many columns oracle database kill me a session.
    My table (ic_lav) is long 174 colums 1924 byte for row. Well when I write a query with select * from ic_lav all oracle close my session.
    So I began to change my query I start to
    select field1 from ic_lav... and work
    select field1,field2,field3,..........field50 from ic_lav and work
    select field1,field2,field3,..........field70 from ic_lav and doesn't work
    the select work with 68 columns
    problem: the query with more then 1064 byte for row doesn't work.
    I've tryed with anoter big table with the same problem, but the select fwork with 65 columns...
    Iit is obvious that there is any problem with the limit of the query.
    The same query (select * from ic_lav) in localMilano)l work fine.
    The same query (select * from ic_lav) in vpn with a better adsl line and openvpn software (NO CISCO firewall) WORK FINE.
    The same query connectetd in Milano with a vpn make with analogic modem and remote access by windows work fine.
    the query (make on my laptop connectet with vpn by cisco doesn't work.
    In cisco firewall we haven't any error (cisco man tell me so)
    on database 9 I found :
    *** 2009-06-12 09:49:45.509
    *** SESSION ID:(66.44406) 2009-06-12 09:49:45.497
    FATAL ERROR IN TWO-TASK SERVER: error = 12152
    *** 2009-06-12 09:49:45.509
    ksedmp: internal or fatal error
    Current SQL statement for this session:
    select * from ic_lis where ditta
    ----- Call Stack Trace -----
    but I don't understand why the lost connection problem (bug 3816595 A processstate dump is produced for a lost connection (12152) ) is caused by len of row
    Anybody have some idea ?
    Thank you

    My table (ic_lav) is long 174 colums 1924 byte for row. Well when I write a query with select * from ic_lav all oracle close my session.Do you get any error?
    If the query length is a problem, you could create a view and query the view instead to see if this problem is resolved.

Maybe you are looking for

  • Authorization to restrict G/L Account

    Dear All I am looking to restirct postings to GL account based on the user in T Code F-02. Can any one highlight which authorization objects can i use to restrict user for posting to GLs and Cost Elements Your valuable input is required in this aspec

  • How to call a BW Query from an ABAP program?

    How to call a BW Query from an ABAP program?

  • Mail adapter (receiver): Where do i put the SSL port ? (Yahoo 456) ?

    Hi, For Yahoo email, the following SSL port (smtp) must be supply: Outgoing Mail Server (SMTP): smtp.mail.yahoo.ca Use SSL, port: 465, use authentication Where (in the CC) do i supply the parameter ? I have tried: smtp://smtp.mail.yahoo.ca:465 but i

  • Tecra 8000 composite video out

    I am trying to direct video output from my tecra 8000 via the yellow video composite jack at the back of the unit. I thought it was as simple as pluging in both sides of an RCA jack (one end to the video input of a VCR and the other end into the Tecr

  • Cannot connect to the Music Store.  Unknown error (502).

    When I attempt to access the iTunes Music Store I get the following message: "iTunes could not connect to the Music Store. An unknown error occurred (502). Make sure your network connection is active and try again." Well... (1) My network connection