Những lưu ý chính khi chuyển từ lập trình MS Access sang SQL Server


8

Tôi là một lập trình viên MS Access tự học 100% (phần chính của công việc của tôi là lập trình), hiện tôi đang xây dựng cơ sở dữ liệu lớn hơn; vẫn sử dụng MS Access làm UI nhưng SQL Server để lưu trữ tất cả dữ liệu và thực hiện nhiều hơn 'công việc'.

Về bản chất câu hỏi của tôi là; Tôi cần biết những vấn đề gì đối với SQL Server mà tôi có thể không học hoặc cần khi sử dụng Access?

Không tìm kiếm bạn để cho tôi biết làm bất cứ điều gì, hơn nữa những gì bạn nghĩ là những điều quan trọng nhất tôi nên đi nghiên cứu - có rất nhiều đối tượng và rất nhiều chi tiết, đừng muốn tìm cho mình một thời gian dài đường xuống một con đường ít giá trị hơn ...

Đổ não:

  • Bảo trì: điều gì là quan trọng nhất (kiểm tra cơ sở dữ liệu, giảm cơ sở dữ liệu, cập nhật số liệu thống kê, xây dựng lại, v.v.)
  • Chỉ mục - Tôi không biết nhiều như tôi nên, có một cuốn sách / blog tốt, vv có thể dạy tôi những điều cơ bản trở lên không?
  • Bất cứ điều gì khác tôi đã bỏ lỡ (có lẽ rất nhiều, như tôi đã nói tôi là người mới đối với SQL Server ...)

Nếu nó giúp tôi làm việc cho một nhà bán lẻ cỡ vừa và cơ sở dữ liệu tôi chủ yếu làm việc về các vấn đề như

  • Nền tảng báo cáo (tóm tắt doanh số / biên lai / hàng tồn kho, vv từ hệ thống chính và cung cấp báo cáo nhanh)
  • Một công cụ đối chiếu giữa phần thứ ba và những gì cửa hàng của chúng tôi đưa vào thông qua các thanh ghi (nhập dữ liệu từ bên thứ ba và tham chiếu chéo các nhật ký giao dịch)
  • Lưu trữ tất cả dữ liệu để làm với chương trình khuyến mãi của chúng tôi; sản phẩm, giá cả, dự đoán, kết quả thực tế vv

Tại sao máy chủ SQl 2005? Nó hơi cũ, với 3 phiên bản chính phía sau.
Mary

Đó là những gì chúng tôi hiện đã cài đặt trong công việc của tôi và vì tôi là người duy nhất thực sự sử dụng nó, tôi sẽ phải chứng minh giá trị nào tôi có thể thêm vào trước khi họ nâng cấp.
Simon1979

@ Simon1979 một trong những giá trị là có đường dẫn nâng cấp đơn giản. Trong SQL Server 2012, bạn có thể khôi phục sao lưu DB từ SQL Server 2005, nhưng không phải từ phiên bản cũ hơn (SQL Server 2000). Có thể phiên bản tiếp theo của SQL Server sẽ không cho phép bạn khôi phục bản sao lưu DB từ SQL Server 2005. Và khôi phục bản sao lưu là một trong những cách dễ nhất để truyền dữ liệu từ các máy chủ khác nhau
Tối đa

Câu trả lời:


4

Khi bạn tìm hiểu thêm về SQL Server, bạn sẽ khám phá (rất vui) một số điều bạn có thể làm trong SQL Server ở cấp cơ sở dữ liệu mà trước đây bạn phải làm trong Access ở cấp ứng dụng. Một số ví dụ bao gồm:

Kích hoạt: Các thủ tục được xác định ở cấp độ bảng để thực hiện công cụ tự động xảy ra bất cứ khi nào có XÁC NHẬN / CẬP NHẬT / XÓA trên bảng.

Các thủ tục được lưu trữ: Tương tự như các macro truy cập và các quy trình VBA nhỏ Submà bạn đã xây dựng trong Access để thực hiện "công cụ hữu ích", ngoại trừ trong SQL Server, chúng là một phần của chính cơ sở dữ liệu. Vì vậy, bạn có thể viết Thủ tục lưu trữ (SP) một lần và sử dụng nó (gần như) ở bất cứ đâu, ngay cả trên các ứng dụng có chung cơ sở dữ liệu.

Các hàm: Các phần này tương tự như các VBA nhỏ Functionmà bạn đã viết trong Access để kết hợp vào các truy vấn, ngoại trừ các Hàm SQL Server, như SP, được liên kết chặt chẽ hơn với cơ sở dữ liệu. Ngoài ra Hàm SQL Server có thể có giá trị vô hướng (trả về một giá trị vô hướng) hoặc giá trị bảng (trả về một hàng).

Các thủ thuật SQL thú vị:rất nhiều tính năng SQL có sẵn trong SQL Server không được hỗ trợ trong SQL truy cập (Jet / ACE). "Biểu thức bảng chung" (CTE) và " RANKPARTITION" là những biểu tượng đã cho tôi những khoảnh khắc "'aha" khi tôi bắt đầu.

Tôi có thể tiếp tục, nhưng đây là những điều tôi nhớ được phát hiện sớm đã khiến tôi "suy nghĩ trong SQL Server".

Đừng hiểu sai ý tôi, tôi vẫn nghĩ Access là một công cụ tuyệt vời khi được sử dụng một cách thích hợp và nên được xem xét nghiêm túc như một cách để

  • xây dựng (hoặc chỉ giả lập) các ứng dụng ngoại vi dựa trên back-end SQL Server và

  • làm sạch dữ liệu, tạo các truy vấn và báo cáo đặc biệt và thực hiện các tác vụ tương tự trên dữ liệu SQL Server của bạn.

Cuối cùng, mặc dù bạn sẽ làm việc với SQL Server 2005, tôi khuyên bạn nên lấy bản sao SQL Server 2008 (hoặc 2012) Express để học , chủ yếu là do các cải tiến IDE trong SQL Server Management Studio (cụ thể là tự động hoàn thành và gỡ lỗi tương tác). Chỉ cần lưu ý đến bất kỳ tính năng mới hơn (2008+) mà bạn có thể gặp phải và không dựa vào chúng cho mã sản xuất của bạn. (Hoặc, sử dụng chúng làm điểm đạn cho sân của bạn để nâng cấp từ SQL Server 2005 ....)


4

Có rất nhiều thứ để học ... trực tuyến hoặc thông qua sách. Dưới đây là một vài liên kết đầu tiên giúp bạn bắt đầu (danh sách rất không đầy đủ, nhưng sẽ khiến bạn bận rộn một lúc):

Diễn đàn

Blog

Sách


3

Đã sử dụng máy chủ SQL được vài năm rồi (và trước đó là Access), tôi sẽ đề xuất như sau.

  1. Sao lưu và khôi phục - bạn không còn lấy một bản sao của tệp để sao lưu cơ sở dữ liệu, tùy thuộc vào nhu cầu của bạn (kích thước, bạn có cần khôi phục phút không, v.v.) có thể sao lưu và khôi phục cơ sở dữ liệu. Bạn chẳng là gì nếu không có dữ liệu của bạn!
  2. Xem video của Brent Ozar: http://www.youtube.com/brentozar - anh chàng là một huyền thoại của SQL Server. Nó nhắm nhiều hơn vào khía cạnh kỹ thuật, nhưng cũng có một số video tốt cho người mới bắt đầu. Tôi đã học được rất nhiều từ họ (ngay cả khi vấn đề khá khô khan!)
  3. Bảo trì - Tôi đoán rằng các nhu cầu là tối thiểu nếu Access vẫn ổn cho đến bây giờ: Trừ khi bạn có nhiều xử lý, nhiều dữ liệu (10GB +) hoặc các truy vấn phức tạp, bạn có thể vui vẻ chạy SQL Server mà không cần bảo trì trong nhiều tháng mà không gặp sự cố. Chỉ mục reindex / xây dựng lại (có một sự khác biệt) có lẽ là điều đầu tiên bạn sẽ muốn sử dụng mặc dù nếu bạn có nhiều hồ sơ.
  4. Tôi thực sự khuyên dùng Stairways trên SQL Server Central http://www.sqlservercentral.com/stairway/ - chúng là những lời giới thiệu tuyệt vời về các loại chỉ mục, các loại dữ liệu (chúng khác với Access khá một chút!)
  5. Nếu bạn lo lắng rằng cơ sở dữ liệu của bạn không ở trong tình trạng hàng đầu, hãy thử quy trình lưu trữ sp_blitz của Brent Ozar (Google cho nó - tôi cần thêm danh tiếng để đăng một liên kết bổ sung!) - nó sẽ kiểm tra nhiều thông số / thông số cơ sở dữ liệu, cung cấp một danh sách ưu tiên những gì cần làm với các liên kết đến trang web để cung cấp thảo luận sâu hơn.

Tôi đã bắt đầu làm việc với Báo cáo máy chủ SQL gần đây, nhưng có thể hơi khó để thiết lập - đối với hầu hết các trường hợp kinh doanh, việc lấy Excel để lấy dữ liệu từ Quy trình lưu trữ SQL Server thường linh hoạt hơn cho người quản lý.

Hy vọng điều này sẽ giúp, chào mừng bạn


2

Đối với bất kỳ ai bắt đầu với SQL Server, tôi khuyên bạn nên bắt đầu với việc tìm hiểu các khối xây dựng cơ bản trước khi bạn tham gia vào các loại kiểu DBA.

  1. Các loại và chức năng cơ bản của các Đối tượng SQL khác nhau (bảng, khóa, dạng xem, thủ tục được lưu trữ, hàm do người dùng xác định, trình kích hoạt)
  2. Viết T-SQL, DML & DDL cơ bản

Khi bạn đã xử lý các vấn đề này và bạn có thể làm việc trên SQL Server mà không phải sử dụng MS Access, sử dụng chủ yếu các loại T-SQL, sau đó bạn có thể chuyển sang tìm hiểu thêm về các tác vụ loại DBA cơ bản, chẳng hạn như:

  1. Phục hồi dữ liệu đã lưu

  2. Bảo trì

  3. Quản trị

Các trang web MSDN & Learning của Microsoft sẽ có những bài học và hướng dẫn rất hữu ích cho bạn. Tôi hiểu rằng không phải lúc nào cũng rõ ràng bắt đầu từ đâu, nhưng nếu bạn thực hiện theo các danh sách trên, bạn sẽ nhanh chóng sử dụng SQL.

Lưu ý : Mặc dù hầu hết các khóa học Chứng chỉ Microsoft 2005 của Microsoft có thể đã bị ngừng, bạn vẫn có thể sử dụng các tài nguyên có sẵn cho SQL 2008 R2. Tôi có thể bị bắn khi nói điều này, nhưng SQL 2008 R2 tương tự như SQL 2005 (trong bối cảnh bạn muốn học gì) để bạn có thể học 2008 R2 và vẫn ổn.

Cuối cùng: Chào mừng bạn đến với dba.stackexchange.com và SQL Server


2

Tôi hiện đang ở trong tình trạng giống hệt như bạn của tôi và tôi hoàn toàn có thể hiểu được. Vì vậy, tôi sẽ giới thiệu cuốn sách đã giải quyết nhiều câu hỏi tôi có liên quan đến việc chuyển sang máy chủ SQL.

Sách: Hướng dẫn dành cho nhà phát triển Microsoft Access dành cho SQL Server của Mary Chipman và Any Baron

Cuốn sách giải thích mọi thứ bạn cần biết từ lợi ích bảo mật đến quyền của người dùng, v.v. và tốt nhất, nó được giải thích theo một cách rất dễ đọc và đơn giản.

Có lẽ có một phiên bản cập nhật hơn của cuốn sách này nhưng đây là phiên bản hiện tại tôi sử dụng và nó đáp ứng đầy đủ mọi nhu cầu của tôi!

Hy vọng nó sẽ giúp bạn nhiều như nó đã giúp tôi.

Chúc may mắn!


2

Để trả lời câu hỏi của bạn -

Bảo trì: điều gì là quan trọng nhất (kiểm tra cơ sở dữ liệu, giảm cơ sở dữ liệu, cập nhật số liệu thống kê, xây dựng lại, v.v.)

Một trong những giải pháp tốt nhất cho Bảo trì là Sao lưu Máy chủ SQL, Kiểm tra tính toàn vẹn và Bảo trì Chỉ mục và Thống kê Chỉ cần đọc trên đó và triển khai. Đã được thử nghiệm và sử dụng rộng rãi bởi cộng đồng SQLServer.

Chỉ mục - Tôi không biết nhiều như tôi nên, có một cuốn sách / blog tốt, vv có thể dạy tôi những điều cơ bản trở lên không?

Stairway to SQL Server Indexes - Chuỗi xuất sắc từ cấp độ cơ bản đến nâng cao.

Bất cứ điều gì khác tôi đã bỏ lỡ (có lẽ rất nhiều, như tôi đã nói tôi là người mới đối với SQL Server ...)

Có nhiều thứ hơn là chỉ bảo trì và lập chỉ mục trong SQL Server. Đề nghị của tôi sẽ là đọc lên bất kỳ nội dung nào được đăng bởi các trang web bên dưới ... (Chúng là tốt nhất !!)

SQLSkills.com

brentozar.com

SQLServerCentral.com

Khi làm việc với SQLServer một cách thường xuyên, bạn sẽ cảm thấy cần phải có thêm kiến ​​thức trong các lĩnh vực khác nhau như Khôi phục thảm họa, Điều chỉnh hiệu suất, Tính sẵn sàng cao, Tham nhũng cơ sở dữ liệu, v.v.

Lưu ý: Có rất nhiều thông tin trên mạng với lời khuyên xấu tuyệt vời. Vì vậy, lời khuyên của tôi sẽ là được giáo dục từ những người đã làm việc và đang làm việc với SQLServer trên cơ sở hàng ngày.

Cuối cùng, hãy kiểm tra khóa đào tạo này từ SQLSkills - một trong những sản phẩm tốt nhất được cung cấp. Cá nhân tôi đã dùng IE1 và IE2 và tin tưởng tôi .. Bạn sẽ cảm nhận được sự khác biệt!


0

Một điều rất thú vị mà bạn có thể nghiên cứu trên SQL Server là Kế hoạch thực hiện truy vấnGợi ý truy vấn SQL bạn có thể sử dụng khi kế hoạch thực hiện truy vấn không như bạn mong đợi.

Kế hoạch thực hiện truy vấn, là một chủ đề nâng cao, nhưng nó có thể giúp bạn hiểu về hiệu suất của SQL Server.

Đương nhiên, bạn không nên sử dụng sai Gợi ý truy vấn , theo kinh nghiệm của tôi, chúng là giải pháp cuối cùng khi truy vấn không hoạt động với hiệu suất mong đợi.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.