Hãy cho chúng tôi hiểu cách các câu lệnh SQL có thể được thực thi từ tệp văn bản trên máy khách MySQL. Máy khách mysql thường được sử dụng theo cách tương tác. Hãy để chúng tôi xem một ví dụ về điều tương tự -
shell> mysql db_name
Đặt câu lệnh SQL trong tệp văn bản
Cũng có thể đặt các câu lệnh SQL trong một tệp và sau đó yêu cầu mysql đọc đầu vào từ tệp cụ thể đó. Để thực hiện việc này, trước tiên, một tệp văn bản text_file sẽ được tạo.
Tệp văn bản này sẽ chứa các câu lệnh cần được thực thi. Hãy để chúng tôi lấy một ví dụ để hiểu tương tự -
shell> mysql db_name < text_file
Nếu một câu lệnh USE db_name được đặt làm câu lệnh đầu tiên trong tệp văn bản, thì không cần chỉ định tên cơ sở dữ liệu trên dòng lệnh. Hãy để chúng tôi lấy một ví dụ để hiểu tương tự -
shell> mysql < text_file
Nếu mysql đã chạy, một tệp kịch bản SQL có thể được thực thi bằng lệnh nguồn hoặc \. yêu cầu. Hãy để chúng tôi lấy một ví dụ để hiểu tương tự -
mysql> source file_name mysql> \. file_name
Đôi khi người dùng có thể muốn tập lệnh hiển thị thông tin tiến trình cho họ. Đối với điều này, bạn có thể sử dụng các câu lệnh chèn như dưới đây -
SELECT '<info_to_display>' AS ' ';
Đầu ra
<info_to_display>
Mysql cũng có thể được gọi với sự trợ giúp của tùy chọn --verbose. Điều này làm cho mọi câu lệnh được hiển thị trước khi nó tạo ra kết quả.
-
Mysql bỏ qua các ký tự dấu thứ tự byte Unicode (BOM) ở đầu tệp đầu vào.
-
Trước khi có chức năng này, chúng đã được đọc và gửi đến máy chủ, do đó dẫn đến lỗi cú pháp.
-
Sự hiện diện của BOM không khiến mysql thay đổi bộ ký tự mặc định của nó.
-
Để làm điều này, mysql có thể được gọi với một tùy chọn như --default-character-set =utf8.