Sie sind auf Seite 1von 8

sQLT

Voraussetzung
NT-Server
MS lE 4.01 + SPl
SQL-Server
(MS Office)

DBMS Database Managementserver

SQL-Anmeldung
Admin-Anmeldung muß in der NT-Anmeldung vorhanden sein dann SOL-Enterprise-Manager /
Sicherheit / Benutzernamen / Neuer Benutzername..... neuen Benutzer mit NT Rechten anlegen.
Beachten: Wird der NT-Anmeldename oder Paßwort geändert ist kein zugrilf mehr auf den SOL-
Server möglich
Anderung der Anmeldung
SQL-Anmeldung Löschen NT-Anmeldung ändern und SOL-Anmeldung neu erstellen.
I'- Transaction-Server
Protokolliert alle Transaktionen die in der DB vorgenommen wurden
Sämtliche Schreiboperationen bezüglich der DB werden in einer separaten Datei protokolliert , um im
Störungsfall einen stimmigen/konsistenten zustand wieder herstellen zu können. (....herstellen des
Zustands vor der Transaktion.)
- Alten Zustand
- Neue Transaktion
- Rollforward ...in dem aus der Protokolldatei der zusland wieder hergeslellt wird der vor der Transaktion bestand
- 27.9.xx , Datensicherung
- 30.9.xx 11:15 t Störfall
- 30.9.xx l2:00 t Rücktührung der Sicherheitsdatei vom 27.9.xx
- Daten einspielen die zwischen der leEten Datensicherung bis zum Störfall, aber nur die, die in
einwandf reien zusland sind.
- Rollback
.
Geschäftsregeln
- vergeben von Gültigkeitsregeln (2.8. nur Eingabe von wert 1-12) zur Vermeidung von Fehlern
-
I

Artikel erreicht Mindestbestand


- @ nicht passiert oder
-g Email an die Bestellabteilung
- @ Bestellung automatisch genorieren

Benutzerverwaltung
Tabelle 1234
- lesen 8x x
- ändern o8x x
-eintügenoxx
- löschen O @

SQL-Server StructuredoueryLanguage
Abfragetypen
1. Select -Ablragen Select * from Kunden where Ort ="Goslal'
2. Update - ändern
3. lnsert - Einlügen / neu
4. Delete - Löschen
5. Werte einlügen
N = Patentyp Unicode (identisch mit ASCII, 2 Byte paar ca,6S.SS5 Zeichen) sonst nur 2S5 Zetchen
Unicode ist ein einheitlicher Zeichenstandaid där lür alle lesbar ist.

Unicode
definierter zeichensatz für nationale zeichensätze 65.535 Zeichen 2 Byle (-32767 - +32767)
) doppelter Platzbedarf ASCII (255) entspricht der ersten 2SS ZeicheÄ in Unicode

Aktionsabfrage
Eine Abfrage, die Daten kopiert oder ändert. Aktionsabfragen umfassen Anfüge-, Lösch-,
Tabellenerstellungs- und Aktualisierungsablragen. Lösch- und Aktualisierungsabfragen ändern bereits
vorhandene Daten; Anfüge- und Tabellenerstellungsabfragen kopieren bestehende Daten. lm
Gegensatz dazu geben Auswahlabfragen Datensätze zurück. Eine SOL-pass-Through-Abfrage kann
ebenfalls eine Aktionsabfrage sein.

Themen
neue Datenbank
- neue Tabellen
- Feld§pen
- Primärschlüssel bewirkt die Eindeutigkeit von Datensätzen
- Autowert
- Standardwert

Bit 1t0 false / true logisch


lnteger 4 Byte ! 2.147.483.684 Ganzzahl
Tinylnt 1 Byte 0 bis 255 Ganzzahl
Decimal / numeric I Byte r 1038- l 18 stellen genau
Money I Byte 19 stellen genau
Datetime I Byte 0 Genauigkeit 0 Slellen
Datum/Uhrzeii 01.01.1753 - 31.12.9999 1/300 sek genau
Small datime 4 Byte 01 .01 .1900
"o -
char Nicht-Unicodezeichendaten fester Länge mit einer maximalen Länge von 8.000 Zeichen.
varchar Nicht-Unicodedaten variabler Länge mit maximal 8.000 Zeichen.
text Nicht-Unicodedaten variabler Länge mit einer maximalen Länge von 2^31 - 1
(2. 1 47.483.647) Zeichen.

Winzard / Assistenten
Kriterien
SQL-Befehle / Prozeduren

Übung: company Name absteigend sortieren

SOL Text
SELECT CompanyName AS Firma, City AS Ort,
Phone AS Telefon
FBOM Customers
WHERE (CompanyName > N'b* AND CompanyName < N'f*')
ORDER BY CompanyName
Neue Datenbank anlegen
Datenbank / Zauberstab (Assistent) / Datenbank / Datenbankerstellungs-Assistent / OK

KundenNr. lnt nern lnt lnt


Name cher 50 nern Text vercher
Straße vercher 50 a Text vercher
PLZ cher 5 a Text vercher
Ort Text a Text vercher
Seit Datum smalldateTime a Datum/Uhrzeit DateTime
Umsatz LJ decimal a Währung money

neue Tabelle: Bestellungen


BestellNr, : Autowert
KundenNr.: int
Bestell_Dat: Datetime
Bestell_Wert: money
Zahlung_Kond: verchar, 50

Größe Genau Dezima Null ldentitäl tD- tL) lst


Spaltenname Datentyp
Rowcuid
igkeil zulassen Sandärd Schrltlwe te

1 BestellNr decimal I 18 0 0 0
0 IKundenNR] inl 4 10 0 1 0 0
0 Bestell Dat datetime 8 0 0 0 0
0 Bestell wert money 8 19 4 0 0
0 Zahlung_Kond varchar 50 0 0 0 0

Beplikation
- vervielfältigen

Datenexport
Tabelle Kunden + Kunden.txt + Excel
Assistent / Data Transformation Service / DTS Export Assistent usw.

Benutzer
SQl-Systemadministrator + sa mit NT Einbindung

Direkter zugriff aus Excel aber nur in einer Richtung mit SOL-Excel, in beide Richtungen nur mit
Access

Wartungsplan
- Nicht verwendeter Speicherplatz entfernen
- Datensicherung
- Zeitplan erstellen
- automatisch ausführen lassen
5x ö
täglich separate Sicherungsdatei (letzte Tagessicherung (Fr.) ist die Wochensicherung)
- Woche 4/5x + separale Sicherungsdatei (letzte Wochensicherung ist die Monatssicherung)
- Monat 12x + separate Sicherungsdatei (letzte Monatssicherung ist die Jahressicherung)
- Jahr 1x + separate Sicherungsdatei
Backup
Datenbanksicherung
Kontextmenü / Neue Aulgabe / Datenbank sichern... / OK.
Datenban kwiederherstellun g
Kontextmenü / Neue Aufgabe / Datenbank wiederherstellen / Datenbank oder von Medien anklicken /
Wiederherstellung über vorhandene Datenbank erzwingen / OK.
ODBC
Open Data Base Comeclivity
- Beispiel
Excel + SQL-DB
sowie Access / Word i dBASE i Paradox / FoxPro / usw........

Name = DB-Kurs
- Angaben: SoL-Treiber
- Ouelle = DBKurs / Kunden
- Login informationen
DSN = Data Source Name
DBA = Data Base Administrator

lmoort Excel ) DB_Kurs - Kunden


O Zieltabelle erstellen - Zeilen neu erstellen
- O Zeilen in Zieltabelle löschen - erst löschen und dann neu erstellen
O Zeilen an Zieltabelle anfügen - Zeilen anfügen
tr ITENTITY_INSERT aktivieren - kann bewirken das im Ergebnis doppelte Prim.-Schlüssel erscheinen

Standardwert
check-Einschränkung Kunden: Filiale, int,1
- Plausibilitätskontrolle Filiale [1-10]
Entwurfsansicht / Kontextmenü / Eigenschaften / Tabellen / Einschränkungsausdruck eintragen
) Filiale > 0 and Filiale < 11
Übung: Datenbank neue Tabetle - Artikel mit den Fetdern:
ArtikelNr.; Autowert ab 100.000; 10
Bezeichnung
Preis
Aufn_Datum
Bestand
Min Bestand

Zugriff von Access


Access Tabelle öffnen / neu /Tabelle verknüplen / Datentyp ODBC-Datenbanken / Datenbank
auswählen / Tabelle auswählen / OK

Serienbrief mit Word


in Word auf Extras / Seriendruck / Erstellen / ...... / Daten importieren / Datenquelle öffnen /
MS Ouery... / <Neue Datenquelle> OK / 1 . Name der Datenquelle angeben / 2. SOL-Server
auswählen / 3.Verbinden / Server [okal] Login-lD = sa OK / 4.Tabelle auswählen / Spalten
auswählen / evtl.sortierreienfolen einstellen /Fertig stellen

Proiekt Mailclient einrichten


- Voraussetzung ist eine Anbindung an Postollice
- Postotfice: Systemsteuerung MS Posto{fice
- mindestens ein Postfach einrichten
- Mail: Systemsteuerung Mail
- Verwaltung / SOL-Server Agent / Aufträge /
SQL-Script
- Textdatei i.sql
- gespeicherteProzeduren
- Trigger
f Kommentare

--Komentare
print,,Hallo" -Komentar
Anweisung
il (Bedingung)
Begin
Anweisung 1
Anweisung 2
End
White (Bedingung)
Begin
Anweisung 1
Anweisung 2
End

\_ Befehl: exec

synlex
sp.add.login[@ loglnnarns=]'login'
[,[@passwd=] 'password'
[,[@deldb=] 'database'
[,[@deflanguage=]'language'
t[@sid=1 'sid'
[,[@encryptopt=] 'encrypiopt'

exec sp.add.login'user1','pass1', @defdb='DBKurs'


1. exec sp.add.login 'Albert','Susi' + neuer Benutzer ,,Alberf' mit Password,,Susi" in SQL-Server
2. use [DB Kurs] , [ ] nur wenn der Name nicht den Regeln entsprichl z.B. leerzeichen enthält
'Albert'
exec sp_grantdbaccess Albert Dalenbankzugriff erteilen
exec sp_addrole'Werkstatt' Neue Rolle ,,Werkstatt' zuteilen
exec sp_addrolemember 'Werkstatt','Albert' Albert in der Rolle ,,Werkstatt" hinzufügen

3. use [DB Kurs] Datenbank öffnen l.Anweisung

\- grant Select grant - Recht gewähren t Select 2.Anweisung


on Kunden Objekt auf das sich das Recht bezieht
to public
I

wem wird das Recht erteilt (Rolle/Benutzer) bis h,e/


grant lnsert,update,Delete S.Anweisung
on Kunden,Artikel to Albert,Max

SQL-Script zur anlegung einer neuen Tabelle ,,Saisonartikel" in ,,DB Kurs"


use IDB Kur.s l
Create Table Saisonartikel
(ArtikelNr int rdentily(250000,10) Primary Key,
Bezeichnunq varchar (50) Not Null,
Liefer,ant varchar (50 ) ,
EK money,
VK noney,
Lager int Not Nu]] Defaull(1)
check(Lager > 0 and Lager <11),
Bestand int,
Aufn_Date datetime Not Nu11 Defautt (getdate O))
DB: DB Kurs angeben

As
Begin
print "Hallo !üe1d 1 'l

Trigger
Trigger ist ein SOL-Script welches während der Laufenden Bearbeitung der Tabelle, bei Vorligen /
eintreten eines bestimmlen Ereignisses (2.8. ln-ertTnpOätef,.ütomäEch ausgeführt wird

- Tabelle auswählen
- Ereignis auswählen
- Aktion angeben

Verwenden von Trigger


- stared procedure
- beigefügt einer Tabelle
- wird ausgelührt bei Eintreten eines Ereignisses

Trigger Erstellen
Enterprise Manager / per SOL-Script / DB Kurs / Tabellen ) Artikel / Alle Aufgaben / Trigger
verwalten
CREATE TRIGGER ITesl-Trigqer] ON lArtikell
FOR INSERT

Begin
print "Trigger meldet: A1les OK"
end

use IDB Kurs ]


insert into Artikel
(Bezeichnung )

Values ( 'Kaffeekanne ' )

exec xp_sendmail Administrator, "Neuer Artikel angefegt"


Enterprise Manager:
CREATE TRIGGER IesI_TRIGGER ] ON [Artikel]
FOR INSERT
AS
begin
print "Trigger meldet: alles OK"
oder exec master..xp_sendmail'Operator','neuer Artikel angelegt'
end

Ouery Analyser:
use dbkurs
insert into Artikel
(Bezeichnung)
Values('Kaff eeKanne')

Enterprise Manager:
CREATE TRIGGER [TRlccER NAME] ON [Artikel]
FOR INSERT, UPDATE, DELETE
AS
begin
exec("lnsert into saisonartikel(Bezeichnung)
values('Testartikel I 4:40')")
end

Query Analyser:
insert into Artikel (Bezeichnung)
Values (" Kaff ee_Test")

SOL-Server Trigger
DB Kurs
L
Kunden
I
Bestellungen
IL..-andere
artitel

Datenbank: Fibuanlegen -Assistent benutzen


Tabelle: Lieferanten Datensatz
LieferNr Autowert
Name varcha(50) Odermark
Ort varcha(50) Gos/ar
Rabatt numeric 7.00

Replikation
- Technologie zur Verteilung von Daten in einem Unternehmen
- Daten an verschiedene Standorten zur Verfügung stellen
- über LAN, WAN, lnternet
- Datensynchronisieren
- gleich Stand der Datenwerte an den verschiedene Standorten erwirken

Snapshot-Replikation nurinRichlungAbonnenten
Der Verleger ersetzl die Dalen der Abonnenten regelmäßig durch den aktuellen Stand (Snapshot).
Standart Lösung: wenn Daten nicht ständig auf aktuellem Stand sein müssen
Transaktions-Relpikalion:
Daten werden in der Regel beim Verleger aktualisiert. Als Basis dient das Transaktionsprotokoll
Replikation kann von zeilnah bis nach Terminplan erfolgen (größerer administrativer Aufwand
erforderlich)

Merge-Replikation: inbeideRichtungen
Datenaktualisierungen können sowohl beim Verleger als auch bei den Abonnenlen vorgenommen
werden. Die Anderungen werden regelmäßig beim Verleger zusammengeführt: zeitnah bis
Terminplan. Der Verleger stellt die zusammengeführten Daten wiederum den Abonnenten zur
Verfügung.
> Die Merge-Replikation Ermöglicht das Abgleichen
> Der Push tühtt dann den Abgleich durch (kann einige zeit dauern).

Flealisierung der Replikation


1. Publizierungs-undVerteilungskonfiguration
2. Publikationerstellen
3. Push-abonnementerstellen
Replikation erstellen
Zauberstab / Beplikation / Publikationserstellungs-Assistent / DB auswählen / Publikation erstellen /
nein,.. ./.Merge-Replikation / Alle... / Tabelle(n) auswählen / Name geben / Ja,.. / weiter bis
Fertigstellen.
Push für neuen Abonnenten erslqllg!
(Pushabonnemet-Assistent / Replikation auswählen /) Push für neues Abonnemeni Erslellen /
Abonnement auswählen / Zieldatenbank auswählen / Terminplan - Fortlaufend / Ja,.. / / Erforderliche
Dienste starten / Fertigstellen.
> Verteibr kann nicht Abonnement werden!

Übung: Erweitern Sie die Replikation um die Tabelle Saisonafükel


- Voraussetzungen:
- legen Sie die Tabelle auch in der Datenbank Fibu an
- achten auf datenwet't + Primary Key
SQL-Server 7.0
Client / Server Architektur

s
H

Iryq!ryr
tt L_l
Ouery Prozessor
Data Access
Services
- Benutzerverw.
- Transaction-Server
Präsentationsprogramm
:
(Anwendungsprogramme)
I Daten
\-------------.- I

L Datenbank
Geschäftsregeln
gesPeicherte Prozeduren

Der SQL-Server verwallet zentral die Daten für alle angeschlossenen Benutzer.
Er stellt daneben Dienste für die Daiensicherheii (Transaction-Server), die Benutzerverwaltung und
die Unternehmensweite Einhaltung von Geschäftsregeln zur Vedügung.
Die Clients stellen Anforderungen an den Server in Form von SOL-Anweisungen. Der Server stellt
lediglich die Daten den Clients zur Verfügung, welche in den einzelnen Aufträgen Konkret angelordert
wurden- Die Ausgabe(incl. Formatierung) der Daten wird von den Präsentationsprogrammen auf den
Client übernommen

SQL-Server Datenbankarchitektu r
ffinbanken gespeichert.
Es existieren neben den Benutzerdatenbanken noch mehre Systemdatenbanken welche von SQL-
Server zur Auslührung seiner Autgaben verwendet werden (master, model, tempDB & msDB)

ln den Datenbanken werden neben den eigenllichen Nuizdaten auch Einschränkungen, gespeicherte
Prozeduren und die Benutzer gespeichert.

Ende

Das könnte Ihnen auch gefallen