Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
prasennav
Partner - Contributor II
Partner - Contributor II

Qlik Sense fetching all tables in postgre SQL

Hello Qlikers,

****************************************************** SRCIPT **************************************************


LIB CONNECT TO 'PostgreSQL_Database';


SQLTableList:

LOAD "TABLE_NAME" as TableNames;
select table_name as "TABLE_NAME"
from information_schema.tables where table_schema = 'public';

Let vTableCount = NoOfRows('SQLTableList');

Let vTableCountQVD = '[' & NoOfRows('SQLTableList') & ']';

For i = 0 To $(vTableCount) -1

LET vMyTableName = '"public".'&'"'&Peek('TableNames', $(i), 'SQLTableList') &'"'&;
LET vMyTableNameQVD = Replace(Peek('TableNames', $(i), 'SQLTableList'), ' ', '');


$(vMyTableNameQVD):
SQL SELECT * FROM $(vMyTableName);

STORE $(vMyTableNameQVD) INTO [lib://QVD_PATH/$(vMyTableNameQVD).qvd] (qvd);

DROP Table $(vMyTableNameQVD);

Next i

***************************************************** END ****************************************

 

Regards,

Prasenna

Labels (3)
1 Solution

Accepted Solutions
Levi_Turner
Employee
Employee

Hey there, this code looks to run fine on my end:

LIB CONNECT TO 'PostgreSQL';
SQLTableList:
LOAD 
	"TABLE_NAME" as TableNames;
SELECT 
	table_name as "TABLE_NAME"
FROM information_schema.tables where table_schema = 'public';

Let vTableCount = NoOfRows('SQLTableList');
Let vTableCountQVD = '[' & NoOfRows('SQLTableList') & ']';

Trace $(vTableCount);
Trace $(vTableCountQVD);

FOR i = 0 To $(vTableCount)-1
	LET vMyTableName = '"public".'&'"'&Peek('TableNames', $(i), 'SQLTableList') &'"'&;
	LET vMyTableNameQVD = Replace(Peek('TableNames', $(i), 'SQLTableList'), ' ', '');

	$(vMyTableNameQVD):
    LOAD *;
	SQL SELECT 
    	*
	FROM $(vMyTableName);

	STORE $(vMyTableNameQVD) INTO [lib://data/$(vMyTableNameQVD).qvd] (qvd);
	DROP Table $(vMyTableNameQVD);
NEXT i

View solution in original post

2 Replies
Levi_Turner
Employee
Employee

Hey there, this code looks to run fine on my end:

LIB CONNECT TO 'PostgreSQL';
SQLTableList:
LOAD 
	"TABLE_NAME" as TableNames;
SELECT 
	table_name as "TABLE_NAME"
FROM information_schema.tables where table_schema = 'public';

Let vTableCount = NoOfRows('SQLTableList');
Let vTableCountQVD = '[' & NoOfRows('SQLTableList') & ']';

Trace $(vTableCount);
Trace $(vTableCountQVD);

FOR i = 0 To $(vTableCount)-1
	LET vMyTableName = '"public".'&'"'&Peek('TableNames', $(i), 'SQLTableList') &'"'&;
	LET vMyTableNameQVD = Replace(Peek('TableNames', $(i), 'SQLTableList'), ' ', '');

	$(vMyTableNameQVD):
    LOAD *;
	SQL SELECT 
    	*
	FROM $(vMyTableName);

	STORE $(vMyTableNameQVD) INTO [lib://data/$(vMyTableNameQVD).qvd] (qvd);
	DROP Table $(vMyTableNameQVD);
NEXT i
sergioabr_tocca
Partner - Contributor II
Partner - Contributor II

Thank you!!

Worked here too!