The Lounge is rated PG. If you're about to post something you wouldn't want your
kid sister to read then don't post it. No flame wars, no abusive conduct, no programming
questions and please don't post ads.
We have views and stored procedures between the data and the applications. If I need to migrate a column to a different name or size, I
1. add the new column,
2. add code to the create and update procedures to update the new column as well as the old,
3. manually copy the old data to the new data,
4. change the views to use the new column (if adding new functionality rather than migrating, use ISNULL() as needed),
5. make new versions of the procedures (I add a number to the name for that purpose) to use the new column,
6. change the application in development and testing to use the new procedures,
7. deploy the new version of the application.
Later, after the data and application have been backed up or updated several times, I can delete the old versions of the procedures.
Has anyone ever heard of a system or language or framework that provides the means to have code self-destruct after a certain date?
Haven't heard of it. I wouldn't use it.
I version the database. Each instance has a version number table which includes at least the version number and a timestamp. The application knows what version(s) it will deal with and will refuse to run (exit) if the version is not allowed.
Separate process updates the database, when completed it updates the version table.
Each version consists of one or more updates that are blocked together. That means that every so often one can just delete the oldest blocks (say 6 months ago) so that they no longer run. Presumption is that there are no older databases at that point (if selling a product then the updated product would include the old install and thus the update.) Naturally it is under version control so it is always retrievable.
Is your question about programming?
We prefer questions that can be answered, not just discussed.
Provide details. Share your research.
If your question is about this website, ask it on meta instead.
visit the help center »
asking help »
Interviewer: What would you say is your biggest strength? Me: I perform under pressure. Interviewer: Can you give me an example? Me:
Mm ba ba de
Um bum ba de
Um bu bu bum da de
PRESSURE, pushing down on me...
I had one vision, a flash, and then a breakthru: if you don't stop me now, friends will be friends. After all it's a beautiful day, living on my own... I want it all to be remember fondly, after all those are the days of our lives.
* CALL APOGEE, SAY AARDWOLF
* GCS d--- s-/++ a- C++++ U+++ P- L- E-- W++ N++ o+ K- w+++ O? M-- V? PS+ PE- Y+ PGP t++ 5? X R++ tv-- b+ DI+++ D++ G e++>+++ h--- ++>+++ y+++* Weapons extension: ma- k++ F+2 X
* Never pay more than 20 bucks for a computer game.
* I'm a puny punmaker.
"the debugger doesn't tell me anything because this code compiles just fine" - random QA comment
"Facebook is where you tell lies to your friends. Twitter is where you tell the truth to strangers." - chriselst
"I don't drink any more... then again, I don't drink any less." - Mike Mullikins uncle
Using two vendor supplied products, product 'A' supports a connection string options to say "use the timestamp from the data server" and "use the timestamp from the client computer"; product 'B' supports allows connection through meta-sources, but only the "client timestamp" option.
However.. and here is the frustration... product 'A' is being deprecated and product 'B' is the path forward.. and it is missing an important feature.
If you havn’t heard the Schultz home was burned down from the fire in California. This is a great loss of some of Sparky’s greatest hand drawn masterpieces and I am sure that we are all extremely heartbroken at this turn of events.