Search Postgresql Archives

Re: Thoughts on how to avoid a massive integer update.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On May 8, 2020, at 3:52 PM, Fehrle, Brian <bfehrle@xxxxxxxxxxxx> wrote:

David’s assessment is correct (and I think we’re all on the same page). The value of the foreign keys that tie the tables together must be changed, and yeah that value _should_ simply be an additional column in the info_table and the foreign key be an arbitrary integer, but since it wasn’t set up that way from the beginning (over a decade ago), this is what I’m stuck with.
 
Blah.


Uncle.

And you’re stuck with it because no-one joins back to info, I take it?  Denormalization writ large.  Oh heck do the switcheroo and mail out a magic decoder ring ;)

 
From: Rob Sargent <robjsargent@xxxxxxxxx>
Date: Friday, May 8, 2020 at 3:05 PM
To: "David G. Johnston" <david.g.johnston@xxxxxxxxx>
Cc: "Fehrle, Brian" <bfehrle@xxxxxxxxxxxx>, "pgsql-general@xxxxxxxxxxxxxx" <pgsql-general@xxxxxxxxxxxxxx>
Subject: Re: Thoughts on how to avoid a massive integer update.
 

[External Email]

 


On May 8, 2020, at 2:57 PM, David G. Johnston <david.g.johnston@xxxxxxxxx> wrote:
 
On Fri, May 8, 2020 at 1:51 PM Rob Sargent <robjsargent@xxxxxxxxx> wrote:
 
On May 8, 2020, at 2:43 PM, David G. Johnston <david.g.johnston@xxxxxxxxx> wrote:
 
On Fri, May 8, 2020 at 1:41 PM Rob Sargent <robjsargent@xxxxxxxxx> wrote:
My understanding is the keys in the info_table need to change.  That causes the very expensive update in the update in the data tables. No? 
 
The keys in the info_table need to change because their contents are no longer legal to be stored (OP has not specified but think using an integer value of someones social security number as a key).  The FK side of the relationship equality has the same illegal data values problem and need to be changed too.
 
Wow, I couldn’t disagree more ;)
 
Your agreement or disagreement with the problem statement is immaterial here - the OP has stated what the requirement, for which I have made a simplistic analogy in order to try and get the point across to you.  As the OP has said it is a poor design - and now it is being corrected.  The request is whether there is some way to do so better than the two options the OP already described.
 
David J.
 
Sorry, I wasn’t disagreeing with the problem statement. OP did say the “info.id” needed to change from 123 to 456.  With the current foreign key alignment that is very expensive.  I think we’re all in agreement there.  To push “456” back out to the data table I see as perpetuation of the problem.  I didn’t sense that OP felt it necessary to continue in the current mode as a requirement.  If so, my mistake
 


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]

  Powered by Linux