Yêu cầu Jun 24th, 2021 3:05 a.m. 241 1 2
  • 241 1 2
+1

Lưu công thức trong database

Chia sẻ
  • 241 1 2

Hiện tại e đang muốn lưu công thức trong database nhưng chưa biết cách thực hiện cũng như cấu trúc database như nào là hợp lý.

Bài toán của em là:

  • Em có 2 table : Tham số giá trị, Tham số công thức
  • Tham số giá trị sẽ chứa các row ý nghĩa như các biến. ví dụ: A =2 , B= 3
  • Tham số công thức sẽ chứa các công thức được tạo nên từ tham số giá trị. ví dụ: (A + B) * 2

Em chưa biết thiết kế bảng tham số công thức như thế nào cho hợp lý, nhờ các anh chị giúp đỡ ạ!

Avatar Lê Xuân Trường @motcaitenit38
Jun 26th, 2021 2:25 a.m.

Mục đích bạn lưu công thức trong db để làm gì nhỉ?

lúc nào gọi ra thì tính toán à?

tại sao k dùng công thức lúc insert, update hoặc get dữ liệu ra rồi chỉ hiển thị hoặc lưu kết quả?

Avatar Dương Siêu @duongdosieu224
Jun 28th, 2021 2:56 a.m.

@motcaitenit38 yêu cầu bài toán là vậy á bạn, chứ mình lưu kết quả không thì dễ rồi :3

2 CÂU TRẢ LỜI


Đã trả lời Jun 28th, 2021 3:53 a.m.
+1

Thì lưu dạng chuỗi (string ) bình thường thôi. Xử lý thì đọc và xử lý chuỗi string thành biểu thức và tính toán (Sách cấu trúc dữ liệu và giải thuật: Kí pháp balan... )

Chia sẻ
Đã trả lời Jun 28th, 2021 7:00 a.m.
0

MÌnh nghĩ không nên lưu thành bảng riêng như vậy. Mình suggest là làm một cái bảng đơn giản là chứa các cột:

  • Biểu thức tính toán: Lưu nguyên cái biểu thức vào thành dạng chuỗi. VD: "(A + B) * 2"
  • Kết quả: Nếu cần thiết thì bạn lưu lại kết quả đã tính.

Việc chuyển string thành phép tính thì mình nhớ ngày xưa đi học các thầy cô hay cho viết chương trình để chuyển một chuỗi thành biểu thức hậu tố và tính toán. Nên việc chuyển đổi string biểu thức tính toán chắc là sẽ có nhiều tool hỗ trợ.

Chia sẻ
Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí