locked
SSMA for Access to SQL Express 2008 x64 RRS feed

  • Question

  • I have Office 32bit and SQL Express x64 on my Windows 7 machine. I am using SSMA 32bit to do migration. However there seems to be some problems about this 32/64 bit environment.

    1. Create a new SSMA project. Add an Access mdb file. Then “Connect to SQL” always fail with the error message:
    Exception: Object reference not set to an instance of an object.
     site: Void Connect(System.String, System.Security.SecureString)
     source: Microsoft.SSMA.Framework.Access.SqlServer
       at Microsoft.SSMA.Framework.Access.SqlServer.Workspace.SqlServerWorkspaceItem.Connect(String connectionParameters, SecureString password)
       at Microsoft.SSMA.GUI.Generic.LowLevel.AppCommandProcessing.Commands.SsmaAppConnectToTarget.Connect(DefaultSSMAWorkspace workspace, ConnectGuiContext context)
       at Microsoft.SSMA.GUI.Generic.LowLevel.AppConnectToTargetMsSql.ConnectToTargetStart(Object guiContext)

     

    2. Then I switched the order and tried to “Connect to SQL” first and then added an Access mdb. It worked fine. Then I saved the SSMA project file, exited the SSMA tool, and launched the tool again to open the project file. But it failed with the following messages:
    Exception: Exception caught during initialization.
     site: Void .ctor(Microsoft.SSMA.Framework.Generic.Collectors.ICollectionContext, System.String, System.String)
     source: Microsoft.SSMA.Framework.Generic.SSMAEnvironment
       at Microsoft.SSMA.Framework.Generic.SSMAWorkspace.DefaultSSMAWorkspace..ctor(ICollectionContext collectionContext, String pathName, String projectName)
       at Microsoft.SSMA.Framework.Access.SqlServer.Workspace.Access2SqlServerWorkspace.LoadWorkspace(String pathName, String projectName, ICollectionContext collectionContext)
       at Microsoft.SSMA.GUI.Generic.LowLevel.LowLevelAdapterAccess2MsSql.StartOpenWorkspace(Object cont)
    Inner Exception #1: Object reference not set to an instance of an object.
     site: Boolean Load()
     source: Microsoft.SSMA.Framework.Generic.SSMAEnvironment
       at Microsoft.SSMA.Framework.Generic.Workspaces.Default.MetabaseWorkspaceItem.Load()
       at Microsoft.SSMA.Framework.Generic.SSMAWorkspace.DefaultSSMAWorkspace..ctor(ICollectionContext collectionContext, String pathName, String projectName)

    It seems that SSMA 32-bit doesn't work well with SQL x64. How can I work around this?

    Thanks,
    Heng-yi

     

    Sunday, September 19, 2010 4:32 PM

Answers

  • The SNAC is already installed. The file sqlncli10.dll is in both C:\Windows\system32 and C:\Windows\SysWow64 folders.

    I did other experiments. Since the content of SSMAforAccess.exe.config and SSMAforAccess32.exe.config files are very different. So I copied the SSMAforAccess.exe.config to SSMAforAccess32.exe.config, and then launched SSMAforAccess32.exe again. It seems to work fine now. Could it be the problem that SSMAforAccess32.exe.config missing some app settings?

    Thanks,
    Heng-yi

     

    • Proposed as answer by Tom Li - MSFT Wednesday, September 22, 2010 9:03 AM
    • Marked as answer by Tom Li - MSFT Saturday, October 9, 2010 4:11 PM
    Tuesday, September 21, 2010 7:45 PM

All replies

  • Hello Heng-yi,

    You have two options: use the CorFlags conversion tool or install an evaluation copy of Office 64-bit. These options are explained in detail in the following thread:

    http://social.msdn.microsoft.com/Forums/en-US/ssdsgetstarted/thread/781f522d-64ce-4c12-a7d6-d2d212638c8b

    Hope this helps.   
     
    Regards,

    Alberto Morillo
    SQLCoffee.com

    Monday, September 20, 2010 5:55 AM
  • I am using the 32bit SSMA tool. The SSMA for Access version 4.2 already has the SSMAforAccess32.exe tool so I don't need to use CorFlags to manually set it. So the communicating to Access mdb file is ok. The problem seems to be on the SQL Express x64 side. Is there any compatibility issue between SSMA 32 bit tool and SQL Express x64?

    Thanks,
    Heng-yi

     

    Monday, September 20, 2010 6:14 AM
  • SSMA 32-bit tool should work fine with SQL Express x64.

    Looks like you have an issue with SQL Server Native Client libraries (SNAC). Have you installed the x64 version of SNAC? http://go.microsoft.com/fwlink/?LinkID=188401&clcid=0x409. SSMA 32-bit tool requires SNAC 32-bit libraries to connect to SQL Server and the above link should install both 32 and 64-bit SNAC.

    Regards,

    Keshav

    SQL Server Migration Assistant Team

    Tuesday, September 21, 2010 5:30 PM
  • The SNAC is already installed. The file sqlncli10.dll is in both C:\Windows\system32 and C:\Windows\SysWow64 folders.

    I did other experiments. Since the content of SSMAforAccess.exe.config and SSMAforAccess32.exe.config files are very different. So I copied the SSMAforAccess.exe.config to SSMAforAccess32.exe.config, and then launched SSMAforAccess32.exe again. It seems to work fine now. Could it be the problem that SSMAforAccess32.exe.config missing some app settings?

    Thanks,
    Heng-yi

     

    • Proposed as answer by Tom Li - MSFT Wednesday, September 22, 2010 9:03 AM
    • Marked as answer by Tom Li - MSFT Saturday, October 9, 2010 4:11 PM
    Tuesday, September 21, 2010 7:45 PM
  • I had the same problem with SSMA for Access. It did not work with a 32 bit Access database(accdb, created with Access 2010)
    to SQL Server 2008 (developer edition) 64-bit.
    My solution was:
    - Uninstall SQL Server 2008 64-bit (my OS is Windows7 64-bit)
    - Reinstall SQL Server 2008 as 32-bit (for 32-bit you must choose "x86" under Options in setupform)
    - run SSMA again(problems with wizard, it worked better when connected to SQL first)

    Hope this helps.

    Regards
    Mats

    Sunday, September 26, 2010 5:39 PM
  • Thanks. I'm stilling using SQL 2008 Express x64 and Office 2010 32-bit on the Windows 7 x64 machine. I just updated SSMAforAccess32.exe.config file, and so far it works fine. You could also try that.

    Can someone from MSFT confirm this is a problem in the SSMAforAccess32.exe.config file?

    Heng-yi

     

    Sunday, September 26, 2010 11:52 PM
  • Heng-yi,

    The errors that you first reported in this thread are because of a bug in SSMA. We are trying to work on a fix. Can I request you to send an email to SSMAHelp@microsoft.com with your original problem description and repro steps. We want to make sure the fix covers your scenario.

    Thanks,

    Keshav

    SQL Server Migration Assistant Team

    Tuesday, September 28, 2010 2:12 AM
  • I copied the SSMAforAccess.exe.config to SSMAforAccess32.exe.config, and then launched SSMAforAccess32.exe again.

    Hi guys,

    As a follow up I will testify that Heng-yi first approach worked on my machine too. I have

    - SQL server Express 2008 x64 (10.0.16.00.22)

    - SSMA x32 (v4.2.2277) (since the SSMA x64 doesn't seem compatible with Access 32 bits)

    I had the same issue "Error caught during initialization" while trying to reopen a freshly saved project. So I copied the content in between the above mentionned files and it worked.

     

    Regards,

    Zebrette

    Tuesday, November 2, 2010 2:51 PM
  • Folks:

    This issue is fixed in the SSMA Access v4.2 product now. Please download the updated SSMA for Access v4.2 from http://www.microsoft.com/downloads/en/details.aspx?FamilyID=5abe098d-c7e1-46c6-994a-09a2856eef0b&displaylang=en

    Thanks for your patience, feel free to contact us at ssmahelp@microsoft.com in case you have any issues.

    Regards,

    Keshav Ramarao,

    SSMA Team

    Thursday, November 4, 2010 1:20 AM
  • i'm getting this same error message with "Error collecting data. See the inner exception for details." running SSMA V4.2.2277. 

    I get this on a windows 2003 64bit os connecting to a sybase database.   

     

    Thursday, December 9, 2010 7:54 PM
  • Brett16:

    What Sybase connectivity provider are you using? Is it of the same platform (x64 or x86) as the SSMA application (64-bit or 32-bit)? Do the user credentials you are using have permissions to read data from the Sybase database? You can send all this info along with log file (<System Drive>:\Documents and Settings\<username>\Application Data\Microsoft SQL Server Migration Assistant\s2ss-2008\log\<ssma.log>) to SSMAHelp@microsoft.com.

    Regards,

    SSMA Team

    Thursday, December 9, 2010 8:36 PM