Die Größe aller Tabellen einer Datenbank anzeigen

16 Dezember 2014 von admin Keine Kommentare »
Mit diesem Skript werden auf einer MS SQL Datenbank alle Tabellen mit den entsprechenden Größen dargestellt. Das Skript kann ohne Anpassung übernommen werden.
SELECT
t.NAME AS TableName,
s.Name AS SchemaName,
p.rows AS RowCounts,
SUM(a.total_pages) * 8 AS TotalSpaceKB,
SUM(a.used_pages) * 8 AS UsedSpaceKB,
(SUM(a.total_pages) - SUM(a.used_pages)) * 8 AS UnusedSpaceKB
FROM
sys.tables t
INNER JOIN
sys.indexes i ON t.OBJECT_ID = i.object_id
INNER JOIN
sys.partitions p ON i.object_id = p.OBJECT_ID AND i.index_id = p.index_id
INNER JOIN
sys.allocation_units a ON p.partition_id = a.container_id
LEFT OUTER JOIN
sys.schemas s ON t.schema_id = s.schema_id
WHERE
t.NAME NOT LIKE 'dt%'
AND t.is_ms_shipped = 0
AND i.OBJECT_ID > 255
GROUP BY
t.Name, s.Name, p.Rows
ORDER BY
TotalSpaceKB desc

Replace – Suchen und Ersetzen

31 Januar 2014 von admin Keine Kommentare »

In einer Tabellenspalte befinden sich Werte (z.B. Texte) die überarbeitet werden sollen. Im Allgemeinen lässt sich dies durch die Funktion UPDATE Table SET …. sehr schnell erledigen. Wenn jetzt allerdings darum geht nicht den gesamten Inhalte des Feldes, sondern nur einen  Teil zu ändern, reicht der Update-Befehl nicht mehr aus. Hier wäre oft eine Suchen-Ersetzen Funktion hilfreich.

SQL bietet diese Funktion mit der REPLACE Funktion

Bei REPLACE wird eine Tabellenspalte durchlaufen und der Inhalte jedes Datensatzes nach einen SUCH-WERT durchsucht und mit einen ERSETZEN-WERT ersetzt.

Beispiel:

UPDATE tbl_Musiktitel
SET url = REPLACE(URL , ’23Album‘, ’23Musik/Album‘)

oder

UPDATE Beitraege
SET beitrag = REPLACE(beitrag, ‚Falscher Eintrag‘, “)

 

Vor einer UPDATE / REPLACE Operation empfiehlt es sich eine Sicherheitskopie der betreffenden Tabelle anzulegen.

 

CTE – Common Table Expressions

12 August 2013 von admin Keine Kommentare »

CTEs können nützlich sein, wenn Abfragen aus einem Satz von Daten auswählen müssen, der nicht als Tabelle innerhalb der Datenbank existiert. Angenommen, Sie möchten eine Abfrage für einen Satz aggregierter Daten schreiben, die Werte auf der Grundlage von Kunden und deren Bestellungen berechnet. Die aggregierten Daten könnten die Tabellen „Customers“, „Orders“ und „Order Details“ verknüpfen und die Summe und den durchschnittlichen Wert der Bestellungen berechnen. Weiter nehmen wir an, dass Sie eine Abfrage für dieses aggregierte Rowset ausführen möchten. » Weiterlesen: CTE – Common Table Expressions

Trigger erstellen

12 August 2013 von admin Keine Kommentare »

Ein Trigger ist eine spezielle Art einer gespeicherten Prozedur, die automatisch ausgeführt wird wenn ein Ereignis auf dem Datenbankserver auftritt. Trigger werden zum Beispiel ausgeführt, wenn der Benutzer ein Update, Delete oder Insert Kommando absetzt. Dabei spielt es keine Rolle ob Daten manipuliert werden, also Tabellenzeilen betroffen sind. » Weiterlesen: Trigger erstellen

Zähler einer Detailtabelle erhöhen

26 April 2013 von admin Keine Kommentare »

In einer Auftragsdatenbank werden Aufträge in einer Mastertabelle und die dazu gehörigen Positionen in einer Detailtabelle gespeichert. Hierbei soll die Positionsnummer bei der Neuanlage einer Auftragsposition automatisch um 10 hoch gezählt werden. » Weiterlesen: Zähler einer Detailtabelle erhöhen

SharePoint Server 2010

10 August 2012 von admin Keine Kommentare »

Mit SharePoint Server 2010 vereinfacht man erheblich die Zusammenarbeit von Teams. Informationen und Dokumente können zentral verwaltet, veröffentlicht und ausgetauscht werden. » Weiterlesen: SharePoint Server 2010

Tabellen ändern oder erweitern

3 April 2012 von ms Keine Kommentare »

Mit dem Befehl ALTER TABLE werden Änderungen und Erweiterungen in Tabellen durchgeführt. Mit geeigneten Parametern können zum Beispiel Felder, Primärschlüssel (Primary Key), Einschränkungen und Gültigkeitsregeln (CHECK CONSTRAINTS), Standardwerte (DEFAULT) und Beziehungen (REFERENCES) einer Tabelle hinzugefügt oder entfernt werden. Einige Befehle können auch als Kombination verwendet werden. » Weiterlesen: Tabellen ändern oder erweitern

Union Abfragen

27 März 2012 von ms Keine Kommentare »

Mit einer UNION Abfrage können Abfrageergebnisse aus mehreren SELECT Anweisungen zu einem „vereinigten“ Ergebnis ausgegeben werden. Wenn Sie z.B. eine Adressliste aus einer Kundentabelle und Lieferantentabelle in eine Ergebnistabelle zusammenführen wollen, ist UNION eine gute Möglichkeit. » Weiterlesen: Union Abfragen

Zeugnisverleihung im Bildungszentrum

15 März 2012 von admin Keine Kommentare »

Im Bildungszentrum Mühldorf der Handwerkskammer erhielten am 12. März 2012 im Rahmen einer kleinen Feier insgesamt 11 Teilnehmer nach 200 Unterrichtseinheiten ihre Zeugnisse für die bestandene Prüfung zum „Netzwerkservicetechniker (HWK)“.

Sechs Teilnehmer erhielten sogar für den erfolgreichen Abschluss zum Betriebsinformatiker (HWK) neben dem Zeugnis die begehrte Schmuckurkunde. » Weiterlesen: Zeugnisverleihung im Bildungszentrum

Datum des Freitags einer KW ermitteln

7 März 2012 von ms Keine Kommentare »

Falls in einer Datenbank oder als Ergebnis einer Funktion nur die Kalenderwoche und das Jahr gegeben sind, kann diese Funktion dazu verwendet werden, den Freitag (oder jeden anderen Tag) der Woche als Datum zu ermitteln.

Die Funktion setzt das Vorhandensein der Funktion ISOWeek voraus, die in einem anderen Beitrag erklärt wurde. » Weiterlesen: Datum des Freitags einer KW ermitteln

Kalenderwoche auf SQL Server 2005

6 März 2012 von ms Keine Kommentare »

Kalenderwoche auf SQL Server 2005

Die Berechnung von Wochen aus einem Datum kann man auf einem SQL Server 2005 normalerweise mit der Funktion Datepart ohne viel Aufwand erledigen. Das Ergebnis der Funktion entspricht aber nicht der in Deutschland üblichen Kalenderwoche.  Hilfe bringt hier einen Benutzerdfinierte Funktion, wie unten im Beispiel dargestellt. Auf dem SQL Server 2008 und später ist diese Funktion nicht nötig, da der nötige Parameter iso_week in die Funktion Datepart  z.B. DATEPART (iso_week , date )
eingefügt wurde. » Weiterlesen: Kalenderwoche auf SQL Server 2005

SQL Server 2012 Launch in Köln

28 Februar 2012 von reinowar Keine Kommentare »

MS + ich waren in Köln und hatten das Vergnügen den SQL Server 2012 vor der Auslieferung kennenlernen zu dürfen.

Die Highlights auf einen Blick: » Weiterlesen: SQL Server 2012 Launch in Köln

Microsoft Office Specialist 2010

25 Februar 2012 von ms Keine Kommentare »

Die HWK Mühldorf bietet als offizielles Microsoft Trainings- und Prüfungs-Center Kurse und Prüfungen zum Microsoft Office Specialist an. Die Ausbildung erfolgt kompakt durch zertifizierte Trainer (MCT). Sie erhalten deutsche Schulungsunterlagen, die optimal auf die Prüfung im angestebten Abschluss vorbereiten.

Niemand, der beruflich mit einem PC zu tun hat, kommt heute ohne fundierte Office Kenntnisse aus, wenn er seinen Arbeitsablauf effektiv gestalten möchte. Office gilt als der Standard für Bürosoftware. » Weiterlesen: Microsoft Office Specialist 2010

Abfragen als VIEW

25 Februar 2012 von ms Keine Kommentare »

Abfragen als VIEW (Sicht) speichern

Mit der Select Anweisung können Informationen aus Tabellen kombiniert, berechnet, mit Bedingungen oder sortiert ausgewählt werden.

In der betrieblichen Praxis kommt es aber vor, dass sich Abfragen oder Berechnungen regelmäßig wiederholen. Solche „wiederkehrenden“ Auswertungsanforderungen können in SQL als VIEW (Sicht) gespeichert werden. Diese Views, auch logische Tabellen genannt, tragen im DBMS einen eindeutigen Namen und können wie eine physische Tabelle verwendet werden. » Weiterlesen: Abfragen als VIEW

CASE Anweisungen

25 Februar 2012 von ms Keine Kommentare »

Fallunterscheidungen mit CASE Anweisungen

Eine Schwäche von SQL ist, dass es sich eine nicht prozedurale Sprache handelt. Eine Erweiterung, die hier einen Ausgleich zu Sprachen wie z.B. VB bringt ist die Anweisung CASE. » Weiterlesen: CASE Anweisungen

Datentypen

25 Februar 2012 von ms Keine Kommentare »

Auf einem SQL Server hat jede Spalte, jede lokale Variable, jeder Ausdruck und jeder Parameter einen entsprechenden Datentyp. Ein Datentyp ist ein Attribut, das für das jeweilige Objekt angibt, welchen Typ von Daten ein Objekt aufnehmen kann: Ganzzahlige Daten, Zeichendaten, Währungsdaten, Datums- und Uhrzeitdaten, binäre Zeichenfolgen usw. » Weiterlesen: Datentypen

Der EXISTS Operator

25 Februar 2012 von ms Keine Kommentare »

Der EXISTS Operator liefert True zurück, falls die Unterabfrage mindestens einen Wert zurückliefert. Die Unterabfrage wird hierbei mit einer impliziten Top 1 – Klausel ausgeführt und beendet, sobald eine Zeile gefunden wurde. Für positive Prüfungen ist dies erheblich schneller als z.B. ein Count(*) > 0 – Vergleich. » Weiterlesen: Der EXISTS Operator

Komplexe Abfragen

25 Februar 2012 von ms Keine Kommentare »

Komplexe Abfragen über mehr als eine Tabelle

Beziehungen zwischen Tabellen in relationalen Datenbanken werden in SQL mit JOINs (engl. Aneinanderfügen) erstellt. Hierzu kann bei Gleichheitsverknüpfungen (INNER JOIN oder EQUI JOIN) auch das Gleichheitszeichen (=) verwendet werden.

Bei Beziehungen zwischen Tabellen, die Daten einer Basistabelle vollständig und Daten einer zweiten verknüpften Tabelle bei Bedarf anzeigen, kommt der OUTER JOIN (LEFT JOIN oder RIGHT JOIN) zum Einsatz. » Weiterlesen: Komplexe Abfragen

Wie formuliere ich eine Abfrage?

25 Februar 2012 von ms Keine Kommentare »

SQL ist, eine einfach zu erlernende Abfragesprache für relationale Datenbanken, wie zum Beispiel dem SQL Server 2008.
Trotzdem stellt sich für viele Einsteiger oft die Frage: Wie soll ich beginnen, um eine Select-Anweisung (Auswahlabfrage) zu formulieren?
Diesen Punkt soll dieser Beitrag kurz und knapp erklären und somit den erfolgreichen Start mit SQL ermöglichen. » Weiterlesen: Wie formuliere ich eine Abfrage?

Abfragen mit OUTER JOINS

25 Februar 2012 von ms Keine Kommentare »

(RIGHT JOIN oder LEFTJOIN)

Dieser Abfragetyp wird verwendet wenn aus einer Tabelle alle Werte und aus der verknüpften Tabelle die dazu passenden Werte ausgebeben werden sollen: » Weiterlesen: Abfragen mit OUTER JOINS

Abfragen mit JOINS

25 Februar 2012 von ms Keine Kommentare »

Dieser Abfragetyp zeigt alle Werte aus beiden Tabellen, die in den Key-Feldern identische Werte besitzen. D.h. Kunden ohne Auftrag werden NICHT ausgegeben. » Weiterlesen: Abfragen mit JOINS

Auswahl von Daten

25 Februar 2012 von ms Keine Kommentare »

Komplette Syntax der Select Anweisung

SELECT DISTINCT TOP 10 FELDNAMEN as NEUER_NAME

FROM TABELLEN ….

WHERE BEDINGUNG

GROUP BY FELDNAMEN

HAVING GRUPPENBEDINGUNG

ORDER BY FELDNAMEN (ASC oder DESC)

 

Auswahlabfrage (einfache Variante)

SELECT FELDNAMEN

FROM TABELLENNAMEN

WHERE Bedingung

 

Beispiel

SELECT * FROM Adressen WHERE Ort LIKE ‚München‘

 

Auswahl mit Sortierung

SELECT Vorname, Lebensalter

FROM Adressen

ORDER BY Lebensalter

 

Komplexe Abfragen mit Aggregatfunktionen

SELECT FELDNAME1, SUM(FELDNAM2)

FROM TABELLENNAME

GROUP BY FELDNAME1

 

Beispiel:

SELECT anr, sum(menge*vkp) as Umsatz

FROM pos

GROUP by anr

Ändern von Datensätzen

25 Februar 2012 von ms Keine Kommentare »

Update TABELLENNAME

SET FELDNAME = NEUER INHALT

WHERE BEDINGUNG

 

Beispiel

Update Adressen

SET Vorname = ‚Sepp‘

WHERE Nachname = ‚Müller‘

Tabellenstruktur ändern

25 Februar 2012 von ms Keine Kommentare »

(Feld in bestehende Tabelle hinzufügen)

ALTER TABLE TABELLENNAME

ADD FELDNAME DATENTYP FELDGRÖSSE

Beispiel

alter table Adressen

add Status int;

Daten in eine Tabelle einfügen

25 Februar 2012 von ms Keine Kommentare »

Insert Into TABELLENNAME (Tabelle muss bereits vorhanden sein)

Values(Wert1, Wert2, Wert3 ………..)

 

Beispiel

INSERT INTO Adressen

VALUES(1, ‚Hans‘, ‚Meiser‘, 55);