Hiển thị kết quả từ 1 đến 7 / 7
  1. #1
    Tham gia
    10-07-2010
    Bài viết
    4
    Like
    0
    Thanked 0 Times in 0 Posts

    Cho e hỏi về thủ tục insert, update

    Khi một bảng dữ liệu có thay đổi về trường dữ liệu (thêm trường hoặc giảm bớt trường ko cần thiết)...
    Nếu viết thủ tục dạng:
    create proc ProcName @inp1 datatype, @inp2 datatype,...,@inp3 datatype
    ...
    Vấn đề xảy ra là thủ tục insert, update sẽ phải thay đổi đầu vào=> Sửa như thế sẽ rất tốn công.

    Vậy cho e hỏi có cách nào để giải quyết được việc này ko ạ?

    Thanks các bro!
    Quote Quote

  2. #2
    Tham gia
    01-07-2010
    Bài viết
    56
    Like
    0
    Thanked 0 Times in 0 Posts
    có 1 cách-là dùng phần mềm gencode ra proc, hì. bạn học lt mà lười thế, theo m hiểu thì k có cách nào đâu.

  3. #3
    Tham gia
    10-07-2010
    Bài viết
    4
    Like
    0
    Thanked 0 Times in 0 Posts
    dạ ko phải e lười ạ? E đi phỏng vấn các a ấy bảo e làm thế này thì hơi mệt... nên e hỏi các bro

  4. #4
    Tham gia
    01-07-2010
    Bài viết
    56
    Like
    0
    Thanked 0 Times in 0 Posts
    Thế sao k hỏi lại luôn mấy anh ấy xem làm thế nào? Trong sql thì chả có cách nào đâu.

  5. #5
    Tham gia
    10-01-2009
    Location
    Hà Nội
    Bài viết
    148
    Like
    3
    Thanked 19 Times in 16 Posts
    Cấu trúc của Dữ liệu mà phải thay đổi thường xuyên, thì do lỗi của người thiết kế.

    Dẫn đến sự thay đổi cấu trúc của dữ liệu, thì bắt buộc các stored Insert, Update cũng phải thay đổi theo, Nếu các cột mới ( hoặc cột cần loại bỏ ) xuất hiện trong Stored, Function thì dĩ nhiên là cần phải viết lại

    Anh có thể dùng tool để generate ra code, hoặc sửa bằng tay, nhưng dù làm cách nào đi nữa, thì vẫn dẫn đến việc cần thay đổi code

    Nếu người phỏng vấn bảo làm vậy là mệt, thì ngay từ đầu, thiết kế cho tốt có phải đỡ mệt cho sau này không

    Nếu bạn vào được công ty, hôm nào nhờ các anh phỏng vấn tư vấn cho hướng giải quyết xem thế nào, mình cũng muốn lắng nghe
    Oracle DBA - Hướng dẫn Oracle HCM Y!M red_devilic

  6. #6
    Tham gia
    01-07-2010
    Bài viết
    56
    Like
    0
    Thanked 0 Times in 0 Posts
    oh. Bác kia chém gió thôi. làm có ông phỏng vấn nào hỏi ngu vậy. ^^

  7. #7
    Tham gia
    15-03-2010
    Bài viết
    1,562
    Like
    84
    Thanked 1,571 Times in 860 Posts
    Thay đổi CSDL là công việc cao cấp. Khi đi PV gặp câu hỏi này thì trả lời như vậy. Tại sao?

    Bớt trường: làm sao biết trường này đang được dùng ở đâu? Kiểm soát tất cả các stored proc (viết lại). Báo cho tất cả các linked íntances - ai có dùng trường này thì coi chừng crash. Báo cho tất cả các bộ phận developers - ác mộng dynamic sql! Tạo view tạm trong thời gian chuyển tiếp. Vv và vv, chỉ có seniors mới đảm đương nổi.

    Thêm trường: dễ hơn một chút, chỉ việc cho nó 'allow null' là xong. Tuy nhiên phải chắc ăn là các trường thêm này nằm ở cuối dòng. Các phần mềm dùng lệnh insert trường theo lối mặc định sẽ không bị hẫng.

    tb. theo câu hỏi của chủ đề bài thì 'người phỏng vấn' chỉ biết đến phần viết stored proc như thế nào cho dễ sửa. 'Người phỏng vấn' này ra một câu chủ ý hù SV mới ra trường.

Bookmarks

Quy định

  • Bạn không thể tạo chủ đề mới
  • Bạn không thể trả lời bài viết
  • Bạn không thể gửi file đính kèm
  • Bạn không thể sửa bài viết của mình
  •