Có ai biết liệu có cách nào để thực hiện công việc tự động hoàn thành trong MySQL Command Line Client trong Windows không? Nó hoạt động tốt trên Linux cho tôi, nhưng chỉ đơn giản là di chuyển con trỏ trong Windows.Tự động hoàn thành trong MySQL dưới Windows
Trả lời
Nó phải làm việc theo cách này:
C:\> mysql --auto-rehash
Hoặc cấu hình my.cnf của bạn:
[mysql]
auto-rehash
chỉnh sửa: lời xin lỗi của tôi. Tôi đã tìm thấy một số tài liệu tham khảo rằng tính năng hoàn thành tab trong máy khách mysql chỉ hoạt động trên UNIX/Linux. Nó không hoạt động trên Windows.
update: Lý do cho điều này được đề cập ngắn gọn trong MySQL bug #4731:
[31 Tháng 7 2004 12:47] Sergei Golubchik
Tôi chỉ cần tải 4.0.15 - lệnh hoàn thành vào mysql.exe KHÔNG phải là hoạt động, như mong đợi. Không bao giờ làm việc trong mysql.exe vì chúng tôi là không thể tạo đường biên dịch để biên dịch bằng VC++.
mysqlc.exe là phiên bản Cygwin và được liên kết với readline.
Giải thích: GNU readline là thư viện nguồn mở chuẩn để xử lý dữ liệu nhập của người dùng. Nhóm MySQL sử dụng thư viện readline, nhưng họ không phải là tác giả của nó. Từ bình luận ở trên, tôi hiểu rằng họ đã không thành công trong việc biên dịch thư viện readline trên Windows với Microsoft Visual C++, công cụ họ sử dụng để xây dựng sản phẩm MySQL. Một số dự án nguồn mở chưa được thực hiện hoàn toàn tương thích với môi trường Microsoft Windows.
Tại một thời điểm trong quá khứ, sản phẩm MySQL đã cung cấp một ứng dụng khách thay thế mà họ gọi là mysqlc.exe
, chúng được biên dịch bằng bộ công cụ cygwin trên Windows, nhưng chúng không cung cấp nữa. Bộ công cụ Cygwin bao gồm thư viện readline, do đó, có thể biên dịch ứng dụng khách mysqlc.exe
với hỗ trợ hoàn thành tab. Vì vậy, trong lý thuyết, nếu bạn đang thực sự cứng nhắc, bạn có thể tải về bộ công cụ Cygwin bao gồm thư viện readline, sau đó tải về mã nguồn MySQL và xây dựng nó bằng cách sử dụng Cygwin. Sau đó, bạn nên có một chương trình khách hàng mysql có thể thực hiện hoàn thành tab. Nhưng điều này nghe có vẻ như rất nhiều công việc ngay cả đối với một người quen thuộc với việc xây dựng MySQL từ nguồn.
Điều này có lẽ không phải là những gì bạn đang tìm kiếm, nhưng phiên bản doanh nghiệp của SQLYog cung cấp tự động hoàn thành một số lược đồ có giới hạn.
Cảm ơn, SQLYog là một công cụ tuyệt vời, nhưng đôi khi dòng lệnh là tốt nhất. –
không chắc chắn lý do tại sao họ không thể chỉ nhìn vào mã nguồn khách hàng postgres tốt hơn nhiều và ctrl-c không khởi động bạn (chậm phát triển). – user805547
Nếu ở trên không hoạt động và bạn sử dụng widnows 10 bạn có thể cài đặt vỏ linux, sau đó cài đặt mysql-client và kết nối như trong thiết bị đầu cuối trong linux nơi autocomplite hoạt động.
Hướng dẫn: https://docs.microsoft.com/en-us/windows/wsl/install-win10
Cảm ơn rất nhiều vì đã giải thích chi tiết. Tôi nghĩ mọi người nên tìm cách khắc phục điều đó ngay cả với chi phí sử dụng thư viện khác - tôi không nghĩ điều đó là không thể hoặc đắt tiền. Nhưng có, chúng tôi khó có thể làm bất cứ điều gì cho đến khi đó. –
Tôi đã thực sự tìm thấy một Win32 Visual Studio dựa trên xây dựng của readline: http://gnuwin32.sourceforge.net/packages/readline.htm - vì vậy có lẽ người mysql có thể tái sử dụng mà .. Thêm vào như một bình luận cho các lỗi bạn đã đề cập. –
Hiện tại có các gói mysql có sẵn cho Cygwin từ trình cài đặt của nó, không cần biên dịch chúng. – user151841