2011-10-20 42 views
5

Tôi muốn tạo một giao diện đơn giản để thực hiện truy vấn SELECT SQL cho số cột nhỏ hơn từ cơ sở dữ liệu có nhiều cột trong Mathematica.
Tôi đã có Danh sách của tôi về tên cột, ví dụ:Thao tác, hộp kiểm từ danh sách

dbColumnNames={"name1","name2","name3",...."nameN"} 

Những gì tôi muốn làm là phải có một hộp kiểm cho mỗi phần tử của danh sách này có tên giống như các yếu tố của danh sách, và khi kiểm tra xem tôi có danh sách có tên cột được chọn hay không.
Ví dụ, tôi bấm vào "name1", "name50", "name74", danh sách này sẽ giống như thế:

selectedNames={"name1","name50","name74"} 

Nếu tôi có danh sách đó, thật dễ dàng để thực hiện một chuỗi truy vấn SQL.

Trả lời

5

Xem trợ giúp dành cho CheckboxBarTogglerBar.

Dưới đây là một ví dụ làm việc:

dbColumnNames = {"name1", "name2", "name3", "name4", "name5", "nameN"}; 
TogglerBar[Dynamic[selected], dbColumnNames] 

Mathematica graphics

Nhấn vào những cái bạn muốn chọn, sau đó đánh giá:

selected 

Để xem giá trị hiện tại của biểu tượng đó. Tên biểu tượng selected là tùy ý.


Nếu bạn có tên dài, bạn có thể thích:

CheckboxBar[Dynamic[selected], dbColumnNames, Appearance -> "Vertical"] 

Mathematica graphics

Nếu bạn có rất nhiều các tên cột, bạn có thể thích:

TextCell[ 
TogglerBar[Dynamic[selected], dbColumnNames, Appearance -> "Row"], 
LineIndent -> 0 
] 
+0

Tôi đã sử dụng TextCell [CheckboxBar [Dynamic [selected], dbColumnNames], LineIndent -> 0], không phải là rất đẹp nhưng nó thực hiện công việc. Cảm ơn bạn Mr.Wizard. – enedene

+0

@enedene bạn được chào đón. Cảm ơn bạn đã chấp nhận. Bạn nói "không phải là rất đẹp" - bạn đang đề cập đến mã, hoặc đầu ra? Có lẽ chúng ta có thể cải thiện điều này. –

+0

mã của bạn là tốt, đầu ra là một chút cồng kềnh kể từ khi tôi có 330 cột. Nhưng tôi đã có những gì tôi muốn, tôi có thể tự động và nhanh chóng thay đổi các truy vấn SQL. Đối với bất kỳ cải tiến thẩm mỹ, tôi sẽ cần phải nhóm các cột này một cách nào đó vì vậy tôi không mất chức năng. Đó không phải là ưu tiên ngay bây giờ. – enedene

Các vấn đề liên quan