Problem Definition: I would like to export all the data from all the tables from QuickBooks into SQL Server 2008 database. I tried to create a SSIS and using RssBus .NET Data Provider for QuickBooks - http://www.rssbus.com/ado/quickbooks/. I am able to export data from QuickBooks Customers table into SQL Server 2008 database table by using ADO.NET (source data reader) and OLE DB Connection (for destination SQL Server).
Question: I would like to loop through all the tables on source side and then export one by one. Is it possible through SSIS package? I will really appreciate if someone can point good resource links or example or detailed instruction will be much appreciated!
Then I would like to do import from SQL Server to QuickBooks. I am expecting SSIS can be used to accomplish the import process.
Thanks in anticipation!
You can't loop over the tables, you have to define each source and target table in advance in the package.
Of course, you always have the option of creating packages dynamically from .NET code, so you could read the list of tables in QuickBooks then generate a package. If the table structures change a lot or if there is a very large number of tables it could be worth it (I know nothing about QuickBooks).
Related
I am struggling a bit with the following. Our forecasting tool generates some 100k of records of forecast information in Access each month. The tool is an Excel - Access combination. I want to upload the data from Access to SQL Server after the forecast is done (for multiple purposes). I tried to look up the most easy way but not sure what to use. ADO seems handy where I could integrate that in an existing macro that cleans up the database. Anybody done this before and has some snippet of code to use?
We use SQL Server Management Studio 2008, but not sure whether that's relevant here.
Thanks in advance,
Michiel
In Access, link via ODBC the tables in SQL Server you wish to upload to.
Then create and run append queries to insert the data in the linked tables.
I suggest using SSIS package which is started by job on sql server side (by shedule or manual). You can create package with the help of sql server import/export wizard. I think this is the best way to import data from access to sql server.
Thanks for the answers. I will try to do the linked table way, but I already had a look to that and it seems that due to the fact that I use citrix server I was not able to link it directly to SQL server via ODBC. So I have to check what's different there. Not familiar with the SSIS package yet but I will definitely look into that if the first option does not seem to work out.
Thanks again guys
I am new to SSIS is there is any component to load data from MYSQL to SQL server using SSIS. Currently am loading data using ODBC connection it is really slow and it around the speed of 30000 rows/Minute. Is there any way to make the load run fast.
Thanks in Advance...
You can install the .NET Connector for MySQL: http://dev.mysql.com/downloads/connector/net/
Then you can create a script task to act as a data source, import MySql.Data.MySqlClient, and query MySQL directly in C#. The data will then enter your Data Flow and you can map it to a SQL Server destination the same as normal.
I find that when using the SSIS connection manager with .Net Providers I get malformed SQL errors, but this way you write all the SQL yourself.
To improve the performance, we can add Conditional Split Transformation build some parallelism into the common data flow that directly load data from ODBC Source to OLE DB Destination.
For more information about speeding up SSIS Bulk Inserts into SQL Server, please see the following blog:
http://henkvandervalk.com/speeding-up-ssis-bulk-inserts-into-sql-server
In DataFlowTask property, Increase buffer size and no of row commit
I am trying to migrate DBF files to MS SQL Server 2008. While importing files from SQL Server Import And Export Wizard. I am unable to import the files. I have created the connection. But when I try to Edit Mappings/ Preview the table It shows error
"External table is not in expected format"
Anyhelp would be appreciated.
If you can't get the wizard to work, you'd have to write your own code, using linked servers or OPENROWSET. If you are new to SQL Server, linked servers and OPENROWSET are about the last thing you want to have to figure out.
Once upon a time long long ago, I wrote drivers in Foxpro that read data from and wrote data to SQL Server tables. This would have been SQL Server 7.0, and I was probably using OLE DB. If SQL can't talk to Foxpro (which wouldn't surprise me), you may need to get Foxpro to talk to SQL.
Failing that, dumping from Foxpro to some form of text delimited file and then importing them will work, though it'd take more effort.
I would recommend using SQL Bulk XML Load to move data from DBF tables to MS SQL Server. Doug Hennig wrote a blog post here with sample code.
I need to migrate the DTS (SQL 2000) package into SQL 2008 SSIS.
The DTS package is using HTML file data source and a Transformation task to import the HTML table
into the SQL table.
I didn't find the HTML data source in the Connection Manager in the SSIS designer.
Does this functionality exist in the SSIS ?
Thank you.
If it is well formed you could try and run it through as xml source; but I suspect that you may run into issues when it wants a schema.
Another option is to create a custom data source script component to read the file. this would require a little bit of C# knowledge
Good luck
We use a product called SalesOutlook which is a type of CRM system. I need to export data from this using SSIS or some other program.
When you install the program, it creates a DSN on my system called SalesOutlookReports. It use the Microsoft Access Driver (*.mdb).
When I try to look at it using Crystal Reports I see a list of tables like:
SchemaAccount Contacts
SchemaAccount Profiles
SchemaNotes
And then under that is another folder called Synonyms and it contains
Account Contacts
Account Profiles
Notes
If I open the synonyms, I get my data, if I open the schema tables I get the meta data about the table.
My question is this. How can I easily import information from the tables I need into SQL Server for manipulation? How can I designate the synonyms instead of the "tables" so I can import the data? I cannot find a way to do it using the import/export wizard with SQL Server nor in SSIS. Perhaps I could use a linked server from SSMS?
ODBC connection in SSIS Data Flow Task should do the trick. Place a Data Flow task and then inside that you can select an ADO.NET data source. You can connect to an ODBC connection using that datasource. Select your MS Access database and voila you have a source. You can add derived columns if you need to adjust the data type and finally connect it to an OLEDB destination, which would be SQL Server.