Achtung – Urheberrechtshinweis!
Die Artikel dieses Blogs stehen unter einer CREATIVE COMMONS LICENSE! Bitte beachten Sie die entsprechenden Hinweise auf http://creativecommons.org/licenses/by-sa/2.0/de/
Bei Fragen oder Anregungen wenden Sie sich bitte an blog {at} fourdragons(.)de
Gestern hat mich der Kollege Presseschauer auf eine Lösung unserer Schweizer Niederlassung (danke an Claus) aufmerksam gemacht die ich absolut faszinierend finde.
Wenn man einen Teilstring in einem Text finden möchte kann man dies mit einer ganz einfachen Berechnung durchführen. Man benötigt hierfür keine Schleifen um den gesuchten Text im Quelltext zu finden.
Hier die grundsätzliche Lösung:
(len()-len(replace(,,”)))/len()
Man ersetzt also den zu suchenden Text durch nichts (”) und zählt danach die Länge des verbleibenden Textes. Durch Berechnung der Längendifferenz zwischen dem unveränderten Quellstring und dem “replace”ten String und anschließender Division durch die Länge des Suchtextes erhält man die Anzahl der Vorkommen des Suchtextes innerhalb des Quelltextes.
Wenn man diese Lösung nun in T-SQL übertragen möchte so stellen sich mir hierbei noch zwei weitere Fragen:
- Wie kann ich nach einem ganzen Wort suchen?
- Wie kann ich ggf. Case insensitive suchen?
Mehr…
Achtung – Urheberrechtshinweis!
Die Artikel dieses Blogs stehen unter einer CREATIVE COMMONS LICENSE! Bitte beachten Sie die entsprechenden Hinweise auf http://creativecommons.org/licenses/by-sa/2.0/de/
Bei Fragen oder Anregungen wenden Sie sich bitte an blog {at} fourdragons(.)de
Eine häufig vorkommende Aufgabe bei der Wartung von Datenbanken ist die Anpassung von Tabellen. Wenn man z.B. in einer Tabelle den Datentyp ändert dann ist dies mit ein paar Klicks bzw. einem sehr kurzem Script schnell geschehen. Wenn diese Tabelle allerdings in Views verwendet wird, dann werden die Metadaten der View durch die Änderung der Feldattribute nicht automatisch mit geändert.
Manuell müsste man also jede betroffene View öffnen und sie dann mit einem ALTER-Kommando erneut abspeichern. Dies aktualisiert die Metadaten aller relevanten Felder mit den aktuellsten Werten.
Um jetzt nicht jedesmal ein ALTER-Kommando absetzen zu müssen, kann auch die Systemprozedur sp_refreshview verwendet werden.
In der Hilfe zu SQL-Server werden hierzu auch einfache Beispiele benannt:
| 1 | USE AdventureWorks; |
| 2 | GO |
| 3 | EXEC SP_REFRESHVIEW N'Sales.vIndividualCustomer'; |
Mehr…
Achtung – Urheberrechtshinweis!
Die Artikel dieses Blogs stehen unter einer CREATIVE COMMONS LICENSE! Bitte beachten Sie die entsprechenden Hinweise auf http://creativecommons.org/licenses/by-sa/2.0/de/
Bei Fragen oder Anregungen wenden Sie sich bitte an blog {at} fourdragons(.)de
Um bei einer Beladung eines Datawarehouse bzw. Datamarts nicht mit Problemen bezüglich fehlender Fremdschlüssel-Referenzen konfrontiert zu werden, muss eine bestimmte Reihenfolge eingehalten werden. Diese Fill-Sequence definiert die Tabellen die befüllt werden müssen um später in der Liste auftauchende Tabellen ohne Probleme befüllen zu können.
Die selbe Reihenfolge wird übrigens auch bei der Erzeugung von Tabellenobjekten in einer Datenbank benötigt um die Objekte korrekt anlegen zu können (Foreign-Key-Verknüpfungen).
Nachfolgend findet man ein Script dass diese Reihenfolge als Ergebnis ausgibt:
Mehr…