2009-01-16 26 views

Trả lời

9

Trong cơ sở dữ liệu INFORMATION_SCHEMA:

select * from columns WHERE TABLE_NAME LIKE '%tablename%' AND COLUMN_NAME LIKE '%columnname%' 

Thông tin thêm ở đây: http://dev.mysql.com/doc/refman/5.0/en/information-schema.html

Ok, nó không hoàn toàn trả lời câu hỏi của bạn, nhưng bạn sẽ có thể đặt nó lại với nhau như thế nào bạn muốn từ đây .

0

Có một thủ tục được lưu trữ ở đây (http://forge.mysql.com/tools/tool.php?id=232) cho MySQL sẽ tạo bảng để lưu đầu ra, sau đó lặp qua bảng COLUMNS của cơ sở dữ liệu information_schema để lấy tất cả tên bảng và cột của cơ sở dữ liệu. Tiếp theo, thực hiện truy vấn count() trên database.table cho mỗi cột với chuỗi tìm kiếm thích hợp ở nơi điều kiện. Nếu count()> 0, cột perticular đó có cụm từ tìm kiếm, do đó, nó sẽ chèn bộ ba đó (tên cơ sở dữ liệu, tên bảng, tên cột) vào một bảng. Chọn cuối * từ bảng để xem bảng cơ sở dữ liệu và tên cột tương ứng có cụm từ tìm kiếm.

26

mysqldump --compact --skip-extended-insert -u root -proot mydb | grep "interesting string"

+0

Các tùy chọn chèn nhỏ gọn và bỏ qua mở rộng thực sự có giá trị. Cảm ơn. – CodeBlue

+0

Thankyou - đây là cái tôi thực sự muốn – Sparky

0

Common Resource Grep (crgrep) tìm kiếm bảng/tên cột và dữ liệu các trận đấu và hỗ trợ MySQL.

http://sourceforge.net/projects/crgrep/

Cũng tìm kiếm khó khăn khác để tìm kiếm tài nguyên như nội dung chôn trong kho lưu trữ. Tôi đã phát triển crgrep như một công cụ mã nguồn mở.

+0

Craig - bạn có kết nối với dự án đó không? Nếu vậy, bạn nên nêu rõ trong câu trả lời của bạn. Tôi nói điều này bởi vì bạn vừa đăng một câu trả lời hầu như giống hệt với hai câu hỏi cũ khác ... –

+0

Vâng, tôi là tác giả. Tôi đã cập nhật bài đăng cho phù hợp. – Craig

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