2011-01-14 37 views
9

Tôi thích đầu ra bảng mà chương trình mysql client tạo ra trong chế độ tương tác, nhưng nếu tôi cố gắng chạy một kịch bản sql như thế này:Làm thế nào để bạn nhận được kết quả định dạng bảng từ MySQL ở chế độ không tương tác?

mysql -uroot mydb < myscript.sql 

tôi chỉ nhận được kết quả phân tách bằng tab.

mysql -uroot mydb -e 'select * from mytable' 

hiện sản xuất đầu ra theo định dạng bảng mong muốn.

Làm cách nào để có được lệnh đầu tiên để tạo ra kết quả được định dạng bảng? Tôi không muốn đầu ra HTML, nhưng đầu ra ký tự đầu cuối với các cột và tiêu đề được căn chỉnh.

+0

trùng lặp càng tốt 'ít -S' của [MYSQL khác ở chỗ Output từ kịch bản] (http: //stackoverflow.com/questions/13790956/mysql-differs-in-output-from-script) –

+0

Cảm ơn bạn đã đăng bài, tôi cần điều tương tự. Tôi cũng sử dụng chế độ 'không tương tác' cho điều này, nhưng tôi không biết đó có phải là thuật ngữ sử dụng rộng rãi hay không. Tôi tự hỏi nếu hình thức thực hiện này (tức là từ một vỏ) có bất kỳ tên nào khác - chế độ hàng loạt không? –

Trả lời

7

Thêm tùy chọn -t vào mysql (bảng).

mysql -t -uroot mydb < myscript.sql 

    mysql -t -uroot mydb -e 'select * from mytable' 
4

Sử dụng \ P lựa chọn ít -S trước khi chạy truy vấn

mysql> \P less -S 

PAGER thiết lập để

+2

Câu trả lời trên blog của bạn rất ngắn; về cơ bản bạn đã bao gồm toàn bộ nội dung ở đây, vì vậy việc liên kết tới blog của bạn cũng có vẻ là spam. Ngoài ra, bạn không tiết lộ rằng đó là blog của bạn mà bạn đã liên kết. Tôi đã xóa liên kết; vui lòng đọc Câu hỏi thường gặp về Tự quảng bá trước khi đăng bất kỳ liên kết nào khác lên blog của bạn. Bạn có thể đặt liên kết blog của bạn trong hồ sơ của bạn ở đây; Tuy nhiên, Stack Overflow không có nghĩa là quảng cáo cho blog của bạn thông qua các câu trả lời. –

+0

Nghe hay đấy. Cảm ơn bạn đã làm rõ –

+0

Bạn đang rất hoan nghênh :) –

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