--หากมีฐานข้อมูล programmerPay อยู่แล้ว ให้ลบออก
ถ้ามี (เลือก * จากฐานข้อมูลระบบโดยที่ name='programmerPay')
วางฐานข้อมูลโปรแกรมเมอร์ Pay
ไป
--สร้างฐานข้อมูลโปรแกรมเมอร์Pay
สร้างฐานข้อมูลโปรแกรมเมอร์Pay
ในระดับประถมศึกษา
-
ชื่อ = 'โปรแกรมเมอร์Pay_data',
filename='D:programmerPayprogrammerPay_data.mdf',
ขนาดสูงสุด=3mb,
การเติบโตของไฟล์=15%
-
เข้าสู่ระบบ
-
ชื่อ = 'โปรแกรมเมอร์Pay_log',
filename='D:programmerPayprogrammerPay_log.ldf',
ขนาดสูงสุด=1mb,
การเติบโตของไฟล์=15%
-
ไป
ใช้โปรแกรมเมอร์เพย์
ไป
--Create ตาราง prowage
สร้างความกล้าหาญของตาราง
-
id int identity (1,1) ไม่ใช่ null - คอลัมน์ข้อมูลประจำตัวคีย์หลัก
Pname char(10) ไม่ใช่ null--ชื่อโปรแกรมเมอร์
ค่าจ้าง int ไม่ใช่ null - เงินเดือนโปรแกรมเมอร์
-
ไป
--เพิ่มข้อจำกัดคีย์หลักลงในฟิลด์รหัส prowage ของตาราง
เปลี่ยนความกล้าหาญของตาราง
เพิ่มคีย์หลัก PK_id ข้อ จำกัด (id)
--ใส่ข้อมูลการทดสอบ
แทรกเข้าไปใน prowage (pname, wage)
ค่านิยม ('จางซาน',5000)
แทรกเข้าไปใน prowage (pname, wage)
ค่า ('李思',1200)
แทรกเข้าไปใน prowage (pname, wage)
ค่านิยม ('กุมภาพันธ์',1700)
แทรกเข้าไปใน prowage (pname, wage)
ค่า ('ท้องฟ้าสีคราม',5700)
แทรกเข้าไปใน prowage (pname, wage)
ค่า ('แสงแดด',8700)
แทรกเข้าไปใน prowage (pname, wage)
ค่านิยม ('จีน',1100)
แทรกเข้าไปใน prowage (pname, wage)
ค่า ('เมื่อซ่อน',1300)
แทรกเข้าไปใน prowage (pname, wage)
ค่า ('ruo',1200)
แทรกเข้าไปใน prowage (pname, wage)
ค่า ('chend',1400)
--หากมี proc_addWage1 ที่เก็บไว้ ให้ลบออก
ถ้ามี (เลือก * จาก sysobjects โดยที่ name='proc_addWage1')
วางขั้นตอน proc_addWage1
ไป
--สร้างขั้นตอนการจัดเก็บ proc_addWage1
สร้างขั้นตอน proc_addWage1
เช่น
ตั้งค่า nocount บน
ประกาศ @firstwage int
เลือก @firstwage=sum(wage) จาก prowage
ในขณะที่ (1=1)
เริ่ม
ประกาศ @notpass int, @count int - กำหนดตัวแปรสองตัว คือ จำนวนคนที่ไม่ถึง 2200 และจำนวนคนทั้งหมด
เลือก @notpass=count(*) จาก prowage โดยที่ค่าจ้าง <2200
เลือก @count =count(*) จาก prowage
ถ้า(@ไม่ผ่าน*2>@นับ)
อัพเดทชุด Prowage ค่าจ้าง=ค่าจ้าง+100
อื่น
หยุดพัก
จบ
ประกาศ @endwage int
เลือก @endwage=sum(wage) จาก prowage
print'การขึ้นเงินเดือนทั้งหมด'+convert(varchar(5),@endwage-@firstwage)
พิมพ์ 'รายการเงินเดือนโปรแกรมเมอร์หลังจากเพิ่มเงินเดือน:'
เลือก ID, Pname, ค่าจ้างจาก prowage
ไป
--หากมี proc_addWage2 ที่เก็บไว้ ให้ลบออก
ถ้ามี (เลือก * จาก sysobjects โดยที่ name='proc_addWage2')
วางขั้นตอน proc_addWage2
ไป
--สร้างขั้นตอนการจัดเก็บ proc_addWage2
สร้างขั้นตอน proc_addWage2
เช่น
ตั้งค่า nocount บน
ในขณะที่(1=1)
เริ่ม
ประกาศ @avgwage int --กำหนดเงินเดือนเฉลี่ยแบบแปรผัน
เลือก @avgwage =avg(wage) จาก prowage
ถ้า(@avgwage<4500)
อัพเดทชุด Prowage ค่าจ้าง=ค่าจ้าง+200
อื่น
หยุดพัก
จบ
ไป
exec proc_addWage1 -- เรียกโพรซีเดอร์ที่เก็บไว้ proc_addWage1
exec proc_addwage2 -- เรียกโพรซีเดอร์ที่เก็บไว้ proc_addwage2
บทความนี้มาจากบล็อก CSDN โปรดระบุแหล่งที่มาเมื่อพิมพ์ซ้ำ: http://blog.csdn.net/yyoanlp/archive/2009/12/21/5047942.aspx
-