--Wenn die Datenbank ProgrammerPay vorhanden ist, löschen Sie sie
falls vorhanden (wählen Sie * aus sysdatabases aus, wobei name='programmerPay')
Drop-Datenbank-ProgrammiererBezahlen
gehen
- Datenbankprogrammierer erstellenPay
Datenbankprogrammierer erstellenBezahlen
auf primär
(
name ='programmerPay_data',
filename='D:programmerPayprogrammerPay_data.mdf',
maximale Größe = 3 MB,
Dateiwachstum=15 %
)
anmelden
(
name ='programmerPay_log',
filename='D:programmerPayprogrammerPay_log.ldf',
maximale Größe = 1 MB,
Dateiwachstum=15 %
)
gehen
Verwenden Sie ProgrammerPay
gehen
--Tabellenprowage erstellen
Tabellenprowage erstellen
(
id int Identity(1,1) not null,--Primärschlüssel-Identitätsspalte
Pname char(10) nicht null,--Programmierername
Lohn int nicht null – Programmierergehalt
)
gehen
--Fügen Sie Primärschlüsseleinschränkungen zum Tabellen-Prowage-ID-Feld hinzu
Tabelle ändern prowage
Fügen Sie die Einschränkung PK_id Primärschlüssel (ID) hinzu.
--Testdaten einfügen
in prowage einfügen (pname,lohn)
Werte ('Zhang San',5000)
in prowage einfügen (pname,lohn)
Werte ('李思',1200)
in prowage einfügen (pname,lohn)
Werte ('Februar',1700)
in prowage einfügen (pname,lohn)
Werte ('blauer Himmel',5700)
in prowage einfügen (pname,lohn)
Werte ('Sonnenschein',8700)
in prowage einfügen (pname,lohn)
Werte ('China',1100)
in prowage einfügen (pname,lohn)
Werte ('einmal ausgeblendet',1300)
in prowage einfügen (pname,lohn)
Werte ('ruo',1200)
in prowage einfügen (pname,lohn)
Werte ('chend',1400)
--Wenn die gespeicherte Prozedur proc_addWage1 vorhanden ist, löschen Sie sie
falls vorhanden (wählen Sie * aus sysobjects aus, wobei name='proc_addWage1')
Drop-Prozedur proc_addWage1
gehen
--Gespeicherte Prozedur proc_addWage1 erstellen
Erstellen Sie die Prozedur proc_addWage1
als
nocount einschalten
deklariere @firstwage int
Wählen Sie @firstwage=sum(lohn) aus prowage aus
während (1=1)
beginnen
deklarieren Sie @notpass int, @count int – definieren Sie zwei Variablen: die Anzahl der Personen, die 2200 nicht erreicht haben, und die Gesamtzahl der Personen
Wählen Sie @notpass=count(*) aus prowage aus, wobei der Lohn <2200 ist
Wählen Sie @count =count(*) aus Prowage aus
if(@notpass*2>@count)
Prowage aktualisieren, Lohn = Lohn + 100 festlegen
anders
brechen
Ende
deklariere @endwage int
Wählen Sie @endwage=sum(lohn) aus prowage aus
print'Gesamtgehaltserhöhung'+convert(varchar(5),@endwage-@firstwage)
print 'Gehaltsliste für Programmierer nach Gehaltserhöhung:'
Wählen Sie ID, Pname und Lohn aus Prowage aus
gehen
--Wenn die gespeicherte Prozedur proc_addWage2 vorhanden ist, löschen Sie sie
falls vorhanden (wählen Sie * aus sysobjects aus, wobei name='proc_addWage2')
Drop-Prozedur proc_addWage2
gehen
--Gespeicherte Prozedur proc_addWage2 erstellen
Erstellen Sie die Prozedur proc_addWage2
als
nocount einschalten
while(1=1)
beginnen
deklarieren Sie @avgwage int – Variables Durchschnittsgehalt definieren
Wählen Sie @avgwage =avg(lohn) aus prowage aus
if(@avgwage<4500)
Prowage aktualisieren, Lohn = Lohn + 200 festlegen
anders
brechen
Ende
gehen
exec proc_addWage1 – Rufen Sie die gespeicherte Prozedur proc_addWage1 auf
exec proc_addwage2 – Rufen Sie die gespeicherte Prozedur proc_addwage2 auf
Dieser Artikel stammt aus dem CSDN-Blog. Bitte geben Sie beim Nachdruck die Quelle an: http://blog.csdn.net/yyoanlp/archive/2009/12/21/5047942.aspx
-