I have a PostgreSQL database that I think was create using a custom template database.
Is there a way to see what template was used to create the database? There doesn't seem to be any documentation that describes this.
As far as I know, no, there is no system catalogue that tracks this. I'm not sure it would be terribly useful to know that database "X" was created from "template2" unless you could prove exactly what the contents of "template2" were at the point of copying. If you're tracking things to that level of detail then you will already have the creation logged.
Related
Is it possible to change the application data from a extension?
I was creating a visual extension(table) in which if I change the value of a cell I should be able to change the value in the application level (not in database level),How can I achieve this?
Changing the value in Qhypercube.[].qDataPages.qDataPages... is only changing the value in Extension level.
I think the problem here is data persistence, since Qlik Sense itself is not a data warehouse or a true "data store" in the traditional sense. When you load data from a database into an app and it goes through the app's load script, it's then cached to the underlying QVF file for the app. Updating the data would need to happen at either the source level (the database in this case), an intermediary store like a QVD, or "on the fly" via variables and chart scripting. Those first two options are persistent and that third one is not.
That's why if you look at other similar Qlik extensions that enable users to input data, they are "writeback" solutions, as they update the underlying database that the app is pulling from. You can find a few examples of those here, here, and here.
A few existing ones also take the approach of outputting to QVDs, which could be your best bet if you want to avoid updating a database. See this one as an example, as well as their implementation docs here.
You could probably achieve all of this with a combination of:
Getting the hypercube of your (updated) table (more info)
Create a session app (more info)
Write to a new or existing QVD (more info)
(Partial) reload the current app (more info)
This would all depend on the Update rights of the users of the app, though.
On the side of my Gooddata project, I maintain a small PostgreSQL database that contains a few tables.
I would like to be able to integrate both my ETL processes using the same tool, and it seems to me cloudconnect would be the easiest way, since I already have my whole GoodData ETL in it.
Here are the ways I tried to do it without success:
I tried to have a look in the documentation, and it seems to me that all the functionalities of CloverETL that enabled this (DBOutput, PostGreSQLDataWriter) are not available in Cloudconnect.
I managed to connect to the Agile Datawarehouse Service (Database attached to GoodData), but it seems that only the ADS database is able to understand the request:
COPY MyDataBaseTable (field1,field2) FROM LOCAL '${DATA_TMP_DIR}/CIforADS.csv'
even when I adapt the syntax to PostgreSQL because the dynamic addressing I use here does not seem to work.
Is there any way to proceed that I'm missing? Can anyone think of a workaround?
In general this could be achieved by using of "DBExecute" component, but
I'm not sure if I understand it well - do you want to load data into your own Postgres instance using CloudConnect?
Can someone point to me the relevant documentation that I need to read in order for me to understand how to connect and query an already existing PostgreSQL database which was created outside of Pyramid?
I'm working on a project and my part is to create the web app while a friend is thinking about the database design (he also creates the tables structures).
What I would like is to import in some way the whole structure he created without having to recreate the tables in my models.py document.
Hope this makes sense
Thanks and best regards!
I have a postgresql database which I keep updated using Osmosis. Osmosis can write to two different database schemas, named Simple and Snapshot. There are not that much different from the database Geoserver uses, But I can't make Geoserver use it perfectly.
The main problem seems to be the way tags are stored in those DBs. I can add the nodes layer and display it with that default Points style, but as soon as I use a "ogc:Filter" in my style to filter the nodes by their "place" tag, the WMS is broken and does not respond (says: The requested Style can not be used with this layer. The style specifies an attribute of place and the layer is: TestDB:nodes)
Is there anyway to make GeoServer understand that one of those shemas, or make Osmosis update to the DB GeoServer knows?
This is a case for using TRIGGERs to manage the integration. The two programs use two different schemas. You can CREATE TRIGGERs in the database which ensure that data written to one application is made available to another. Another option is you can set one or both to use VIEWs populated in part by the other application. In PostgreSQL, a VIEW can have triggers attached so these are not really
This is, in any case, a potentially large project so rather than offering sample code, I will offer a general outline of what sorts of things you need to think about.
Are these generally applicable? If so do you want to start an open source integration project?
Are both of these read-only workloads? Does data ever update? In general, if you are going to use views, updates pose the most concerns, so you want to run the views on the side not doing the updates if such is the case.
What is the write model of both sides? Insert/Update? Append only? Static data? What data do you have to "replicate" between the schemas?
Once you have those answers it should be relatively straightforward to get started and ask for help (either as an open source project or here) where you get stuck.
I have understood the basic concepts of core data and how to create schemas or data model in xcode. However I am struggling to create database and import it xcode.
I don't have any experience with creating databases before.
Can somebody guide me here.
Thanks in advance!
If your application is document based, the database is the document. You create it in code when you create the document.
If it's not document based and will use just one single database, then you generally create it in code the first time the application is run (or, more likely, whenever the application is started and it cannot find an already existing database).
In either case if the database can start empty, that's all you need. If an empty database would be invalid and you do need some minimal data when you initialize it, you will have to populate it upon creation.
Depending on how much data your minimal database needs to have you can either hardcode the initialization or use a static resource (that is, a file) in your application bundle containing the initialization data in some form that you know how to read and use that to populate the database.
Using SqlLite is more attractive to me as I import the database without any modifications to the android version.
And I made some generic class to handle any database for android and iPhone but I cannot share it here.
Class DBWRAPPER
{
initDB();
ExecuteScalar()
ExecuteDicionary();
Close();
}
To follow-up on the AnalogFile answer, in case your application is not document base, you probably want to use core data with a preexisting SQLite DB. You could feed your DB with a scripting language like Python. e.g. I think it is a better approach than populating your DB programmatically in XCode. Check this tutorial for more info about this approach.