ในตอนต้นของบทความนี้ฉันขอขอบคุณเพื่อนบางคนที่เขียนฉันเพื่อชี้ให้เห็นข้อผิดพลาดในบทความก่อนหน้า ฉันสงสัยว่าคุณจำได้ว่าในบทความที่แปดฉันพูดถึงตัวนับการเข้าถึงหน้าง่ายโดยใช้แอปพลิเคชันหรือไม่? เพื่อนเขียนถึงฉันว่าทำไมเขาถึงไม่มีผลกระทบใด ๆ กับผลการนับสุดท้ายหลังจากเปลี่ยนค่าของตัวแปรเริ่มต้นตัวนับ ตอนแรกฉันรู้สึกงงงวยขอให้เรียกคืนโปรแกรมแหล่งที่มานี้ดังนี้:
-
หรี่
numvisits = 0
application.lock
แอปพลิเคชัน (numVisits) = แอปพลิเคชัน (numVisits) + 1
application.unlock
-
ยินดีต้อนรับสู่หน้านี้คุณคือ < %= แอปพลิเคชัน (numVisits) %> ผู้เยี่ยมชมในหน้านี้!
ในโปรแกรมนี้มันเป็นไปไม่ได้อย่างแน่นอนที่จะเปลี่ยนผลลัพธ์ตัวนับโดยการเปลี่ยนค่าของตัวแปร numvisits เนื่องจากเป็นไปไม่ได้ที่จะเปลี่ยนค่าแอปพลิเคชันด้วยค่าของตัวแปรทั้งสองจึงไม่เกี่ยวข้อง ดังนั้นคำจำกัดความและการกำหนดตัวแปรจึงซ้ำซ้อนที่นี่ ดังนั้นเราควรกำหนดค่าเริ่มต้นสำหรับแอปพลิเคชัน (numvisits) อย่างไร โปรดดูขั้นตอนที่แก้ไขต่อไปนี้:
-
ถ้าแอปพลิเคชัน (numVisits) <999 แล้ว
แอปพลิเคชัน (numvisits) = 999
สิ้นสุดถ้า
application.lock
แอปพลิเคชัน (numVisits) = แอปพลิเคชัน (numVisits) +1
application.unlock
-
ยินดีต้อนรับสู่หน้านี้คุณคือ < %= แอปพลิเคชัน (numVisits) %> ผู้เยี่ยมชมในหน้านี้!
999 นี่คือค่าเริ่มต้นของเคาน์เตอร์ที่คุณต้องการตั้งค่าดังนั้นปัญหาจะได้รับการแก้ไข ฉันรู้สึกขอบคุณเพื่อนคนนี้ชื่อคังที่ชี้ให้เห็นถึงความผิดพลาดนี้กับฉัน อนาคตเมื่อคุณพบข้อผิดพลาดใด ๆ ในบทความฉันจะส่งจดหมายทันทีเพื่อแจ้งให้คุณทราบและฉันสามารถแก้ไขได้ทันเวลา
ภาษา SQL สามารถแบ่งออกเป็นสองส่วน: ภาษานิยามข้อมูลและภาษาการจัดการข้อมูล
SQL เป็นภาษาการประมวลผลข้อมูลที่สมบูรณ์ไม่เพียง แต่ใช้สำหรับการสืบค้นฐานข้อมูล แต่ยังสำหรับการปรับเปลี่ยนข้อมูลและการอัปเดตในฐานข้อมูล อย่างไรก็ตามสำหรับ DBMS ความเสี่ยงที่เกิดจากการอัปเดตข้อมูลนั้นสูงกว่าการสืบค้นข้อมูลมาก ระบบการจัดการฐานข้อมูลจะต้องปกป้องความสอดคล้องของข้อมูลที่เก็บไว้ในช่วงระยะเวลาการเปลี่ยนแปลงเพื่อให้แน่ใจว่าข้อมูลที่มีประสิทธิภาพจะเข้าสู่ฐานข้อมูลฐานข้อมูลจะต้องคงที่และ DBMS จะต้องประสานงานการอัปเดตแบบขนานของผู้ใช้หลายคนเพื่อให้แน่ใจว่าผู้ใช้และการเปลี่ยนแปลงของพวกเขาไม่ได้ ส่งผลกระทบต่อพวกเขา
มีคำสั่ง SQL หลักสามฉบับที่ใช้ในการแก้ไขเนื้อหาฐานข้อมูล:
1. แทรกเพิ่มแถวข้อมูลใหม่ลงในตาราง
2. ลบลบแถวข้อมูลจากตาราง
3. อัปเดตเปลี่ยนข้อมูลที่มีอยู่แล้วในฐานข้อมูล
ก่อนอื่นมาดูการใช้แทรก:
ไวยากรณ์มาตรฐาน:
แทรกลงใน table_name
(col1, col2 ... )
ค่า (ค่า 1, ค่า 2 ... )
ตัวอย่างต่อไปนี้คือการเพิ่มนักวิชาการเป็นพนักงานขายใหม่ในตารางการขาย
ใส่เข้าไปใน
SalesReps (ชื่อ, NUM, SALES, HIRE_DATE, รายได้)
ค่า ('Shusheng', 9,10000, '23 -FEB-99 ', 2000)
ในคำสั่งนี้ชื่อคอลัมน์จะถูกคั่นด้วยเครื่องหมายจุลภาคในวงเล็บตามด้วยแต่ละคอลัมน์ของข้อมูลคั่นด้วยเครื่องหมายจุลภาคในวลีและวงเล็บ เป็นประเภทสตริงมันจะถูกคั่นด้วยคำพูดเดียว การพูดในเชิงแนวคิดคำสั่งแทรกสร้างแถวของข้อมูลที่สอดคล้องกับโครงสร้างคอลัมน์ตารางเติมด้วยข้อมูลที่นำมาจากประโยคค่าแล้วเพิ่มแถวใหม่ลงในตาราง . ดังนั้นจึงไม่มีแนวคิดของการแทรกแถวนั้นเข้าไปในหัวหรือหางของโต๊ะหรือระหว่างสองแถว หลังจากคำสั่งแทรกเสร็จสิ้นแถวใหม่เป็นส่วนหนึ่งของตาราง
คำสั่งแทรกยังสามารถเพิ่มข้อมูลหลายแถวลงในตารางเป้าหมาย ค่าเพิ่มมาจากแถวของฐานข้อมูลเองซึ่งอาจดูแปลก ๆ ในตอนแรก แต่ในบางรัฐสิ่งนี้มีประโยชน์มาก ตัวอย่างเช่นหากคุณต้องการคัดลอกหมายเลขคำสั่งซื้อวันที่และหมายเลขที่สร้างขึ้นก่อนวันที่ 30 ธันวาคม 2541 จากตารางการสั่งซื้อไปยังตารางอื่นที่เรียกว่า OldOrder คำสั่ง Multi-Row Insert ให้วิธีการที่มีประสิทธิภาพและมีประสิทธิภาพในการคัดลอกข้อมูล มีดังนี้:
แทรกลงในคำสั่งซื้อเก่า (จำนวนวันที่จำนวน)
เลือกจำนวนวันที่จำนวนเงิน
จากการสั่งซื้อ
วันที่ <'30 -12-98 '
คำสั่งนี้ดูซับซ้อนเล็กน้อย แต่จริงๆแล้วมันง่ายมาก ส่วนที่เหลือของคำสั่งเป็นแบบสอบถามที่ดึงข้อมูลจากตารางคำสั่งซื้อ SQL จะเรียกใช้แบบสอบถามไปยังตารางคำสั่งซื้อก่อนจากนั้นแทรกผลลัพธ์การสืบค้นทีละแถวลงในตาราง OldOrder
ลองดูการใช้งานการอัปเดต ตารางเป้าหมายที่จะอัปเดตถูกกำหนดไว้ในคำสั่งและประโยคชุดระบุว่าคอลัมน์ใดที่จะอัปเดตและคำนวณค่าของพวกเขา คำสั่งอัปเดตมักจะมีคำสั่งและคำสั่งอัพเดตเป็นอันตรายดังนั้นคุณต้องตระหนักถึงความสำคัญของคำสั่งที่ใช้เพื่อระบุแถวที่ต้องอัปเดต
ไวยากรณ์มาตรฐาน:
อัปเดต table_name
ตั้งค่า columnName1 = value1
[, columnName2 = value2] ...
ที่ search_condition
นี่คือตัวอย่างของคำสั่งการอัปเดตอย่างง่าย:
อัปเดตลูกค้า
ตั้งค่าเครดิต = 100000.00, id = 99
โดยที่ชื่อ = 'asp'
ในตัวอย่างนี้เราอัปเดตมูลค่าเครดิตของลูกค้าชื่อ ASP ในตารางลูกค้าเป็น 100,000 และเปลี่ยน ID ของเขาเป็น 99 ดูตัวอย่างต่อไปนี้:
อัปเดตลูกค้า
ตั้งค่าเครดิต = 200000.00, state = 021
โดยที่ ID ใน (80,90,100,120)
เราสามารถค้นหาได้ว่าในความเป็นจริงกระบวนการของคำสั่งการอัปเดตการประมวลผล SQL คือการสำรวจสายตารางที่ระบุทีละบรรทัดอัปเดตแถวที่ผลการค้นหาเป็นจริงและข้ามแถวที่มีผลการค้นหาเป็นเท็จหรือว่างเปล่า
สุดท้ายมาดูคำสั่งลบ
ไวยากรณ์มาตรฐาน:
ลบจาก tablename
สภาพที่อยู่ที่ไหน
เพราะมันง่ายเกินไปผลที่ตามมาก็ร้ายแรงเช่นกัน ดูตัวอย่างต่อไปนี้:
ลบออกจากคำสั่งซื้อที่ id = 99
ในตอนท้ายของบทความผู้เขียนจะแนะนำภาษานิยามข้อมูลให้คุณสั้น ๆ มันเป็นคำสั่งที่ใช้ในการสร้างและแก้ไขโครงสร้างฐานข้อมูลรวมถึงคำสั่งสร้างและวาง
1. สร้างคำสั่ง
ไวยากรณ์มาตรฐาน:
สร้างตาราง table_name
(ข้อมูลฟิลด์ 1 [ไม่ใช่โมฆะ]
ฟิลด์ 2 ข้อมูล [ไม่ใช่โมฆะ]
ฟิลด์ 3 ข้อมูล [ไม่เป็นโมฆะ] ... )
ชอบ:
สร้างค่าตาราง
(ชื่อถ่าน (30)
จำนวนจำนวน
หมายเลขบัญชี _id)
แม้ว่าการสร้างตารางจะเข้าใจได้ยากกว่าคำสั่งก่อนหน้านี้ แต่ก็ยังใช้งานง่ายมาก มันกำหนดค่าใช้จ่ายให้กับตารางใหม่และระบุชื่อและประเภทข้อมูลของทั้งสามคอลัมน์ในตาราง หลังจากสร้างตารางเราสามารถเพิ่มข้อมูลได้ ชอบ:
แทรกลงในตั๋วเงิน (ชื่อ, amout, account_id) ค่า ('ประตู', 100,1)
หากคุณรู้สึกว่าคุณไม่จำเป็นต้องบันทึกข้อมูลผลิตภัณฑ์อีกต่อไปคุณสามารถใช้คำสั่ง Drop Table เพื่อลบตารางและข้อมูลทั้งหมดที่มีจากฐานข้อมูล
ไวยากรณ์มาตรฐาน:
วางตาราง table_name
จนถึงตอนนี้เราได้เรียนรู้เกี่ยวกับคำสั่ง SQL ที่ใช้กันทั่วไปทั้งหมด เริ่มต้นจากบทความถัดไปผู้เขียนจะแนะนำส่วนประกอบ ActiveX ในตัวของ ASP โปรดติดตามความคืบหน้า