Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
    2. VO
      singulars
      1. This table or related slice is empty.
    1. COYou wrote: "Spreading the data across several schemas will make it impossible to do effective queries with no real benefit". I can't see how? I think it's the other way around. In my webapp, I use objects that holds references to other objects. I have to fetch the component ID:s and put them into other queries to successfully build together complete objects. Mixing in the use of user ID would only complicate matters. The way I see it, schemas are a perfect balance between the standard way of doing it (user table and ID columns) and the more extreme to create a new database for every user.
      singulars
    2. COTry writing a query to fetch a user by email for example. What you are describing works well for document databases such as MongoDB, CouchDB or Jackrabbit, but is a poor fit for relational databases.
      singulars
    3. COApprechiate your answers papirtiger. Still, if I wanted to run a query to get a user by his e-mail, I'd query the admin database I mentioned in my first post (the question). I intend to keep all "metadata" about the users in the admin database, neetly packed into just a few tables. There I will store their usernames, e-mails, and not the least the schema name used in the other database. This other database will only store user specific data needed by the core of the application. And as I said earlier, this user specific data are quite complicated stuff with their own interrelated IDs.
      singulars
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload