Skip to main content
Announcements
Qlik Community Office Hours - Bring your Ideation questions- May 15th, 11 AM ET: REGISTER NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

QVD creation and Incremental Load!! help

Hello all,

I am trying to create multiple qvd (ODBC connection) from a SQL database for different tables(Problem1::many tables have same fieldnames with different values , I concatinated the tables to avoid synthetic key but one of the table lost all its value in concatinated table) to create QV application that has these QVDs as datasource rather than direct database connection. I need to  apply incrementally load later on these to reload the curent data. I have just concept of incremental loading but never used it before. HOW can I DO This ? Please help.

Regards,

Abha

1 Solution

Accepted Solutions
Not applicable
Author

HI,

To Avoid synthetic keys without concatenating tables you can use the statements:
QUALIFY *;

Unqualify '%*';

Then in you load of the tables you rename or create the keys to link the tables:

LOAD *,

     TableKey as %NewTableKey

from MyDatabaseTable;

For an incremental load it depends but if you ahave an unique key (which is best) then you can do as follows:

//Get new lines:

Load *, TableKey as %NewTableKey fro myDatabaseTable;

//Add the records already in qvd:

Load *

where not exists(%NewTableKey)

from myDatabaseQVD.qvd(qvd);

Cheers,

Jdd

View solution in original post

2 Replies
Not applicable
Author

HI,

To Avoid synthetic keys without concatenating tables you can use the statements:
QUALIFY *;

Unqualify '%*';

Then in you load of the tables you rename or create the keys to link the tables:

LOAD *,

     TableKey as %NewTableKey

from MyDatabaseTable;

For an incremental load it depends but if you ahave an unique key (which is best) then you can do as follows:

//Get new lines:

Load *, TableKey as %NewTableKey fro myDatabaseTable;

//Add the records already in qvd:

Load *

where not exists(%NewTableKey)

from myDatabaseQVD.qvd(qvd);

Cheers,

Jdd

Not applicable
Author

Thank You Jdd.

I have one more question::

I have a big database(millions of rows) and I want to create QVDs of this database , How can I do it?  I mean should I create one qvd out of this database or do I have to create separate QVD for each table ?? And I want to automate the process of QVD creation weekly , is it possible to automatically create QVDs weekly or incremental loading is a better idea ?? I have no idea about automatic creation but I gained some idea about incremental loading from your answer. Please help

Regards,

Abha