Sự khác biệt giữa MYSQL và SQL Server 2014 Express là gì?


Câu trả lời 1:

Là một người làm việc với cả MySQL và SQL Server 2014 hàng ngày, tôi có thể cho bạn biết những gì tôi tin là sự khác biệt chính (cộng với sở thích và không thích của riêng tôi)

THỰC HIỆN SQL NGÔN NGỮ

SQL Server có một lịch sử rất lớn, họ đã xây dựng một công cụ dựa trên tiền đề rằng mỗi truy vấn cần một kế hoạch thực hiện, bạn có các công cụ tốt hơn trong SQL Server để tối ưu hóa truy vấn của mình bằng cách trực quan hóa các chi phí của Truy vấn. MySQL thiếu loại công cụ phân tích này, hoặc bạn phải trả tiền cho nó.

Trong MySQL bạn có thể làm điều này: Chọn a, b, c + y, đếm (d) làm bộ đếm từ nhóm ztable bằng 1,2 3. Trong SQL Server, bạn PHẢI làm điều này: Chọn a, b, c + y, Count ( d) là bộ đếm từ nhóm ztable bởi a, b, c + y.

Trong MySQL, bạn giới hạn các truy vấn của mình bằng cách sử dụng Điều khoản GIỚI HẠN. Ví dụ:

CHỌN * TỪ một số Giới hạn 50, 10. Điều đó mang lại cho bạn từ kết quả của Truy vấn, chỉ các hàng, từ 50 đến 59. Nó hữu ích cho một số thứ.

SQL Server sử dụng CHỌN * TỪ dbo.SomeTable OFFSET 50 ROWS FETCH TIẾP THEO 10 ROWS CHỈ.

Bạn có thể làm tương tự, nhưng bạn cần viết nhiều hơn nữa trên SQL Server.

Trong MySQL, bạn có thể sử dụng if (some_condition = true, use ThisValue IfTrue, use ThisValue IfFalse), bạn cũng có thể sử dụng CASE: CASE KHI a = true THEN 1 ELSE 0 END làm someValue. Trong SQL Server, bạn CHỈ CÓ TRƯỜNG HỢP. Điều này cung cấp cho bạn một địa ngục nhiều hơn nữa để viết trên mỗi truy vấn.

Bây giờ, mặt khác, SQL Server có nhiều tùy chọn hơn khi tham gia vào Truy vấn phức tạp, có PIVOT để tạo CROSSTAB Queries, có CROSSJOIN và rất nhiều chức năng khác giúp SQL Server thực sự tuyệt vời cho các truy vấn nâng cao.

Khi chèn dữ liệu, trong MySQL bạn có thể làm điều này:

chèn vào mytable đặt a = value, b = othervalue.

Trong SQL Server, bạn CHỈ có thể sử dụng cổ điển:

chèn vào giá trị mytable (a, b) (giá trị, giá trị khác)

hoặc là

chèn vào các giá trị mytable (giá trị, giá trị khác)

Bây giờ trong 2, 3, 4 cột, điều này có lẽ không phải là ít cồng kềnh nhất, nhưng khi bạn đẩy 40, 50 cột, thật khó để chèn mà không mắc lỗi, đặc biệt khi có các giá trị tính toán phức tạp liên quan.

Vì vậy, đối với tôi, MySQL dễ dàng đánh bại SQL Server trên các truy vấn đơn giản, thậm chí 2-3 truy vấn bảng. Nhưng trên các truy vấn dài, phức tạp, SQL Server là King.

QUAY LẠI

Một lần nữa, SQL Server được xây dựng để suy nghĩ về các tình huống phức tạp, có ít nhất 3 cách để tạo bản sao lưu đầy đủ và có các bản sao lưu gia tăng, nhị phân, hệ thống tệp và tập lệnh phức tạp. Bạn có thể nên dính vào nhị phân, nhưng có một TẤN các vấn đề bảo mật mà bạn cần phải TUYỆT VỜI khi khôi phục SQL SERVER. Khôi phục bản sao lưu trong SQL Server KHÔNG PHẢI LÀ KHÔNG GIỚI HẠN. Bạn cần biết những gì bạn đang làm hoặc bạn có thể làm xáo trộn cơ sở dữ liệu của bạn. CSONG Trừ khi cơ sở dữ liệu của bạn thực sự nhỏ, tôi sẽ không bao giờ khuyên bạn nên sử dụng Khôi phục tệp SQL trên SQL SERVER, sẽ mất mãi mãi và đôi khi kết xuất thất bại và bạn biết điều đó, 45 phút đến 1 giờ sau NẾU bạn may mắn .

Mặt khác, MySQL chỉ là việc đưa SQL vào một tệp và khôi phục SQL đó. Nó hoạt động, nó đơn giản và bạn có thể dễ dàng đào tạo bất kỳ người dùng trung bình nào để làm việc với các bản sao lưu và sẽ thực hiện dễ dàng mà không gặp rắc rối nào. NHƯNG bạn cũng cần phải tự duy trì và đảm bảo an ninh, có thể rất cồng kềnh vào các thời điểm tùy thuộc vào môi trường của bạn.

SỬ DỤNG DISK

Tôi đã đọc ở đâu đó trên Quora khi một anh chàng nói rằng việc sử dụng đĩa không quan trọng vì Dung lượng rẻ. Vâng, nó có thể là như vậy, nhưng vẫn là loại ngu ngốc để lãng phí nó chỉ vì.

Chà, MySQL rất nhỏ gọn, tôi có một vài cài đặt trên các công ty nhỏ có từ năm 2003 và dữ liệu chưa bao giờ đạt tới 10 GB và chúng có các bảng với hàng triệu hàng, và vẫn vậy, dữ liệu không tăng theo tỷ lệ.

Trong SQL Server, tôi đã có một cài đặt khác, nó đã ăn hết 2 GB chỉ sau 2 tháng! SQL Server phải được duy trì, bạn cần xóa nhật ký của mình, bạn cần sao lưu nhị phân một cách chính xác để SQL Server của bạn cho phép bạn duy trì cơ sở dữ liệu của mình và có một người biết cách xử lý dữ liệu làm việc với từng trường hợp, tùy thuộc vào số lượng người dùng, mức độ phức tạp của cài đặt, loại dữ liệu đang được xử lý, đó là lý do tại sao DBA phải ở một số nơi. MySQL có thể được duy trì với một người sử dụng năng lượng được đào tạo trung bình và nó sẽ ổn.

Ngoài ra, có một vài điều không thể thực hiện được trong SQL Server mà không cần SQL Profiler AND SQL Agent. MySQL có thể tự làm mọi thứ mà không cần nhiều hơn một dịch vụ.

Một lần nữa, tùy thuộc vào quy mô doanh nghiệp và mức độ phức tạp của bạn, SQL Server có thể là con đường để đi. Nhưng MySQL là một ứng cử viên tốt nếu bạn không cần những sự phức tạp đó.

THỦ TỤC LƯU TRỮ, CHỨC NĂNG VÀ UDFS

Đây là vùng đất táo bạo trong RDBMS, tôi thậm chí còn sản xuất Khóa học Udemy về SP trên MySQL. Nhưng nhiều như tôi yêu thích SP, Triggers, Chức năng và mọi thứ MySQL, bạn phải cung cấp cho SQL SERVER, Họ đã làm điều đó tốt nhất.

Bây giờ trước khi bạn chặt đầu tôi nói điều này, hãy để tôi nói thêm, các SP trên SQL Server rất nhanh, có thể phức tạp, có rất nhiều tiện ích để giúp cuộc sống của bạn dễ dàng hơn, chúng có thể được biên dịch bằng các ngôn ngữ khác như c # và trực quan cơ bản, bạn thậm chí có thể tạo các biến BẢNG, có thể hoạt động nhanh hơn và dễ dàng hơn các bảng tạm thời trên MySQL. Họ có rất nhiều đi.

MySQL cũng có thể có Hàm do người dùng xác định, nhưng bạn cần thành thạo C. Nếu là bạn, bạn không có gì phải lo lắng. Rất nhiều người trong chúng ta, không.

Tất nhiên có nhiều hơn, nhưng tôi hy vọng bạn có được ý tưởng.

May mắn nhất!


Câu trả lời 2:

SQL Server Express mở rộng từ các lựa chọn kinh doanh lớn, nếu bạn sử dụng SQL trong công việc của mình, bạn có một vài lựa chọn thay thế có thể truy cập. Kiểm tra các yêu cầu SQL chỉ là một trong vô số điều bạn có thể sàng lọc bằng Tiền tố.

SQL Server Express cung cấp các điểm quan tâm khác nhau. Đầu tiên và dường như cần thiết nhất là sự linh hoạt và phối hợp hoàn toàn với SQL Server.

Đọc thêm: SQL Server Express | Phiên bản SQL Server Express