Ich bin in einer Situation, in der ich aus einer proprietären Datenbank lese, die ich für meine Bedürfnisse nicht ändern kann. Die genialen Architekten haben eine schrecklich normalisierte Datenbank und wenn sie den Server in Dev aufbauten, dachten sie nicht, die Primärschlüssel (Integer-Identitätswerte) zwischen Dev und Prod zu vergleichen.Synchronisieren von hartcodierten Werten zwischen Prod und Dev
In dieser Situation mussten wir die Abfragen schreiben, in denen wir hartcodierte Werte verwenden - Beispiel where productid = 12345
. 12345
ist nicht immer das gleiche Produkt in Dev wie Produktion. Dies bedeutet, 2 Sätze SQL-Code zu verwalten. Außerdem besteht ein hohes Risiko für potenzielle Fehler (es werden keine korrekten Skripts bereitgestellt). Ich bevorzuge den Teststandard in Dev und verwende den exakt gleichen Code für die Produktion. Dies minimiert das Risiko.
Hinweis: Ich vereinfache dies für die Zwecke dieses Beispiels, aber die Art, wie es entworfen wurde und die Art, wie wir die Abfrage durchführen müssen, erfordert die harte Codierung. (Entschuldigung für meinen blashpemy).
Jemand sagte, dass Sie dies mit SQL Server Token Replacement tun können, aber ich kann nicht scheinen, zu viel zu finden, online. Anscheinend können Sie die Werte, die Sie benötigen (Produkt-IDs), in einer SQL-Datei festlegen, und sie wird auf dem Server bereitgestellt, wobei tokens
durch die korrekten hartcodierten Werte ersetzt wird.
Ich bin nur auf der Suche nach ein paar Tipps für den Einstieg.
einfach eine Tabelle erstellen, mit den Feldern und Werten, die Sie in Ihrer Datenbank benötigen . Fügen Sie die entsprechenden Umgebungs-IDs in diese Tabelle ein. Schreiben Sie Ihre Abfragen, indem Sie die Werte aus dieser Tabelle ziehen. – techspider