MYSQL และ SQL Server 2014 Express แตกต่างกันอย่างไร


ตอบ 1:

ในฐานะที่เป็นคนที่ทำงานกับทั้ง MySQL และ SQL Server 2014 ทุกวันฉันสามารถบอกคุณได้ว่าฉันเชื่อว่าอะไรคือความแตกต่างที่สำคัญ (รวมถึงการกดไลค์และไม่ชอบของแต่ละคน)

การปรับใช้ภาษา SQL

SQL Server มีประวัติอันยิ่งใหญ่ด้วยตัวเองพวกเขาสร้างเอ็นจิ้นตามหลักฐานที่แต่ละแบบสอบถามต้องการแผนการดำเนินการคุณมีเครื่องมือที่ดีกว่าใน SQL Server เพื่อเพิ่มประสิทธิภาพการสืบค้นของคุณโดยการวิเคราะห์ต้นทุนของแบบสอบถาม MySQL ขาดเครื่องมือวิเคราะห์ชนิดนี้หรือคุณต้องจ่ายเงิน

ใน MySQL คุณสามารถทำได้: เลือก a, b, c + y, count (d) เป็นตัวนับจากกลุ่ม ztable ด้วย 1,2 3 ใน SQL Server คุณต้องทำสิ่งนี้: เลือก a, b, c + y, count ( d) เป็นตัวนับจากกลุ่ม ztable โดย a, b, c + y

ใน MySQL คุณ จำกัด การสืบค้นของคุณด้วยการใช้ข้อ จำกัด ตัวอย่างเช่น:

SELECT * จาก SomeTable Limit 50, 10 ที่ให้คุณจากผลลัพธ์ของแบบสอบถามเพียงแถว 50 ถึง 59 มันมีประโยชน์สำหรับสิ่งต่าง ๆ

SQL Server ใช้ SELECT * จาก dbo.SomeTable OFFSET 50 ROWS FETCH NEXT 10 ROWS เท่านั้น

คุณสามารถทำเช่นเดียวกัน แต่คุณต้องเขียนมากขึ้นใน SQL Server

ใน MySQL คุณสามารถใช้ if (some_condition = true, useThisValueIfTrue, useThisValueIfFalse) คุณสามารถใช้ CASE: CASE เมื่อ a = true แล้ว 1 ELSE 0 END เป็น SomeValue ใน SQL Server คุณมี CASE เท่านั้น ซึ่งช่วยให้คุณมีจำนวนมากขึ้นในการเขียนในแต่ละแบบสอบถาม

ขณะนี้ในอีกทางหนึ่ง SQL Server มีตัวเลือกเพิ่มเติมมากมายเมื่อมาถึง Complex Queries มี PIVOT เพื่อสร้าง CROSSTAB Query มี CROSSJOIN และฟังก์ชั่นอื่น ๆ อีกมากมายที่ทำให้ SQL Server เจ๋งจริงๆสำหรับการสืบค้นขั้นสูง

เมื่อแทรกข้อมูลใน MySQL คุณสามารถทำสิ่งนี้:

แทรกลงใน mytable ตั้งค่า =, b = anothervalue

ใน SQL Server คุณสามารถใช้แบบคลาสสิกเท่านั้น:

แทรกลงในค่า mytable (a, b) (ค่า, ค่าอื่น)

หรือ

แทรกลงในค่า mytable (ค่า, ค่าอื่น)

ตอนนี้ในคอลัมน์ 2, 3, 4 นี่อาจไม่ยุ่งยาก แต่เมื่อคุณกด 40, 50 คอลัมน์มันเป็นความเจ็บปวดที่จะแทรกโดยไม่ทำผิดโดยเฉพาะเมื่อมีค่าที่คำนวณได้ซับซ้อน

ดังนั้นสำหรับฉัน MySQL ชนะ SQL Server ได้อย่างง่ายดายในการค้นหาง่าย ๆ แม้กระทั่งแบบสอบถามแบบตาราง 2-3 รายการ แต่ด้วยความยาวที่ซับซ้อนของการสืบค้น SQL Server ก็เป็นราชา

การสำรองข้อมูล

อีกครั้งที่ SQL Server สร้างความคิดในสถานการณ์ที่ซับซ้อนมีอย่างน้อย 3 วิธีในการสำรองข้อมูลเต็มรูปแบบและมีการสำรองข้อมูลที่ซับซ้อนเพิ่มขึ้นแบบไบนารีระบบไฟล์และสคริปต์ คุณควรติดกับไบนารี แต่มีปัญหาด้านความปลอดภัยมากมายที่คุณต้องระวังเป็นอย่างดีเมื่อเรียกคืน SQL Server การกู้คืนการสำรองข้อมูลใน SQL Server นั้นไม่ได้ถูกยกเลิก คุณจำเป็นต้องรู้ว่าคุณกำลังทำอะไรหรือคุณอาจทำให้ฐานข้อมูลของคุณยุ่งเหยิง นอกจากว่าถ้าฐานข้อมูลของคุณมีขนาดเล็กมากฉันไม่เคยแนะนำให้ใช้การคืนค่าไฟล์ SQL บน SQL Server มันจะใช้เวลาตลอดไปและบางครั้งการถ่ายโอนข้อมูลล้มเหลวและคุณรู้จัก 45 นาทีถึง 1 ชั่วโมงหลังจากนั้นถ้าคุณโชคดี .

ในอีกทางหนึ่ง MySQL เป็นเพียงการทิ้ง SQL ลงในไฟล์และเรียกคืน SQL นั้น ใช้งานได้ง่ายและคุณสามารถฝึกอบรมผู้ใช้ระดับกลางถึงสูงได้อย่างง่ายดายเพื่อทำงานกับการสำรองข้อมูลและทำได้อย่างง่ายดายโดยไม่ต้องยุ่งยาก แต่คุณต้องรักษาและรับรองความปลอดภัยด้วยตัวเองซึ่งบางครั้งก็ยุ่งยากขึ้นอยู่กับสภาพแวดล้อมของคุณ

การใช้ดิสก์

ฉันอ่านที่ไหนสักแห่งที่นี่ใน Quora เมื่อชายคนหนึ่งบอกว่าการใช้ดิสก์ไม่สำคัญเพราะพื้นที่เก็บข้อมูลราคาถูก มันอาจจะเป็นอย่างนั้น แต่ก็ยังเป็นคนงี่เง่าที่ต้องเสียมันเพราะ

MySQL มีขนาดเล็กมากฉันมีการติดตั้งเพียงไม่กี่ครั้งใน บริษัท ขนาดเล็กที่ย้อนกลับไปตั้งแต่ปี 2546 และข้อมูลไม่ถึง 10 GB และมีตารางที่มีจำนวนแถวนับล้านและยังคงข้อมูลไม่ได้สัดส่วน

ใน SQL Server ฉันมีการติดตั้งอื่นที่กินเพิ่มขึ้น 2 GB หลังจากเพียง 2 เดือน! SQL Server จะต้องได้รับการบำรุงรักษาคุณต้องทำการล้างบันทึกของคุณคุณต้องทำการสำรองข้อมูลไบนารีอย่างอิสระเพื่อให้ SQL Server ของคุณอนุญาตให้คุณทำการบำรุงรักษาฐานข้อมูลของคุณและมีบุคคลที่รู้วิธีจัดการกับข้อมูลแต่ละงาน กรณีขึ้นอยู่กับจำนวนของผู้ใช้ความซับซ้อนของการติดตั้งชนิดของข้อมูลที่จะถูกจัดการซึ่งเป็นสาเหตุที่ DBAs จะต้องในบางสถานที่ MySQL สามารถรักษาผู้ใช้ระดับกลางที่ผ่านการฝึกอบรมและจะใช้ได้

นอกจากนี้ยังมีบางสิ่งที่ไม่สามารถทำได้ใน SQL Server โดยไม่ต้องมี SQL Profiler และ SQL Agent MySQL สามารถทำทุกอย่างด้วยตัวเองโดยไม่ต้องใช้บริการมากกว่าหนึ่งอย่าง

อีกครั้งขึ้นอยู่กับขนาดองค์กรและความซับซ้อนของคุณ SQL Server อาจเป็นวิธีที่จะไป แต่ MySQL เป็นคู่แข่งที่ดีถ้าคุณไม่ต้องการความซับซ้อนเหล่านั้น

ขั้นตอนการจัดเก็บฟังก์ชั่นและ UDFS

นี่คือดินแดนแห่งตัวหนาใน RDBMS ฉันยังผลิต Udemy Course บน SPs บน MySQL แต่เท่าที่ฉันรัก SPs, ทริกเกอร์, ฟังก์ชั่นและทุกอย่างของ MySQL คุณต้องมอบมันให้กับ SQL Server พวกเขาทำได้ดีที่สุด

ตอนนี้ก่อนที่คุณจะบอกฉันว่าให้ฉันเพิ่ม SPs บน SQL Server นั้นเร็วมีความซับซ้อนมีสาธารณูปโภคมากมายที่จะทำให้ชีวิตของคุณง่ายขึ้นพวกเขาสามารถรวบรวมได้ในภาษาอื่นเช่น c # และ visual visual คุณยังสามารถสร้างตัวแปร TABLE ที่สามารถทำงานได้เร็วและง่ายกว่าตารางชั่วคราวใน MySQL พวกเขามีจำนวนมากไป

MySQL สามารถมีฟังก์ชั่นที่ผู้ใช้กำหนดเองได้เช่นกัน แต่คุณต้องมีความเชี่ยวชาญในภาษาซีถ้าคุณเป็นคุณไม่มีอะไรต้องกังวล พวกเราหลายคนไม่ใช่

แน่นอนว่ามีมากกว่านี้ แต่ฉันหวังว่าคุณจะได้รับความคิด

ขอให้โชคดี!


ตอบ 2:

SQL Server Express ขยายจากตัวเลือกธุรกิจขนาดใหญ่หากคุณใช้ SQL ในการทำงานของคุณคุณมีทางเลือกที่สามารถเข้าถึงได้น้อย การตรวจสอบการสอบถาม SQL เป็นเพียงหนึ่งในหลาย ๆ สิ่งที่คุณสามารถคัดกรองด้วยคำนำหน้า

SQL Server Express มีจุดสนใจต่าง ๆ สิ่งแรกและที่สำคัญที่สุดคือความอเนกประสงค์และการประสานงานกับ SQL Server

อ่านเพิ่มเติม: SQL Server Express | รุ่นของ SQL Server Express