Hướng dẫn mysql workbench run multiple sql files - Bàn làm việc mysql chạy nhiều tệp sql

26

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Để chạy một tệp duy nhất, bạn có thể chạy trong MySQL

. \ Tên tệp

hoặc bạn bên ngoài mysql, bạn có thể chạy

mysql

Tôi có một thư mục các tệp SQL nên tôi đang cố gắng chạy tất cả chúng cùng một lúc bằng cách sử dụng thẻ đại diện

*.sql

Nhưng nó không hoạt động.

Bất kỳ ý tưởng?

hỏi ngày 16 tháng 3 năm 2010 lúc 22:17Mar 16, 2010 at 22:17

Hướng dẫn mysql workbench run multiple sql files - Bàn làm việc mysql chạy nhiều tệp sql

Giả sử bạn đang sử dụng bash:

cat *.sql | mysql

Đã trả lời ngày 16 tháng 3 năm 2010 lúc 22:31Mar 16, 2010 at 22:31

Etienne DeChampsetienne DechampEtienne Dechamps

23.2K4 Huy hiệu vàng31 Huy hiệu bạc29 Huy hiệu đồng4 gold badges31 silver badges29 bronze badges

4

for %S in (*.sql) do mysql -u user_name database_name < %S

hoặc

mysql -u user_name -p password database_name < file.sql

STH

Phim thương hiệu vàng 216K5050 gold badges273 silver badges363 bronze badges

Đã trả lời ngày 14 tháng 8 năm 2010 lúc 3:58Aug 14, 2010 at 3:58

AnuchitanuchitAnuchit

1211 huy hiệu bạc2 huy hiệu đồng1 silver badge2 bronze badges

1

Cho cửa sổ:

FOR %%A IN ("*.sql") DO "D:\mysql\Install\MySQL Server 5.5\bin\mysql" --user=scooby --password=pwd123 databasename < %%A >output.tab

Đã trả lời ngày 16 tháng 7 năm 2015 lúc 18:05Jul 16, 2015 at 18:05

mpschmittmpschmittmpschmitt

Huy hiệu Bạc 1111 Huy hiệu đồng1 silver badge2 bronze badges

0

bash:

mysql < <(cat *.sql)

Đã trả lời ngày 16 tháng 3 năm 2010 lúc 22:19Mar 16, 2010 at 22:19

2

bash:

for sql_file in `ls /path/to/directory/*.sql`; do mysql -uUSER -pPASSWORD DATABASE < $sql_file ; done

Đã trả lời ngày 19 tháng 2 năm 2014 lúc 14:12Feb 19, 2014 at 14:12

Sr.PEDROSr.PEDROSr.PEDRO

1.16014 Huy hiệu bạc18 Huy hiệu đồng14 silver badges18 bronze badges


Thực hiện nhiều tệp SQL

Đăng bởi: Brian Fogarty Ngày: 04 tháng 9 năm 2015 04:30 PMBrian Fogarty
Date: September 04, 2015 04:30PM


Xin chào,

Một chút mới đối với MySQL và không thể tìm ra nếu có cách sử dụng Workbench (hoặc khác) để thực hiện một loạt các tệp .SQL đã lưu thông qua một tập lệnh hoặc thủ tục đã lưu khác hoặc bất cứ điều gì.

Điểm mấu chốt là tôi có khoảng 100 tập lệnh .SQL được lưu sẽ cần được chạy thường xuyên và muốn gọi tất cả chúng từ tập lệnh "chủ" khác hoặc tìm ra cách tốt nhất để thực hiện tất cả. Loại máy chủ MS SQL tương đương:

EXEC SP_FILE1; EXEC SP_FILE2; . . . exec sp_filen;
exec sp_File2;
.
.
.
exec sp_FileN;

Hy vọng điều đó có ý nghĩa, và tôi đánh giá cao bất kỳ sự giúp đỡ nào có thể được cung cấp.


Môn học

Được viết bởi

Đăng

Thực hiện nhiều tệp SQL

Đăng bởi: Brian Fogarty Ngày: 04 tháng 9 năm 2015 04:30 PM

Xin chào,

Một chút mới đối với MySQL và không thể tìm ra nếu có cách sử dụng Workbench (hoặc khác) để thực hiện một loạt các tệp .SQL đã lưu thông qua một tập lệnh hoặc thủ tục đã lưu khác hoặc bất cứ điều gì.

Điểm mấu chốt là tôi có khoảng 100 tập lệnh .SQL được lưu sẽ cần được chạy thường xuyên và muốn gọi tất cả chúng từ tập lệnh "chủ" khác hoặc tìm ra cách tốt nhất để thực hiện tất cả. Loại máy chủ MS SQL tương đương:

[Cập nhật 2011-06-10 vì một người bạn & NBSP; đã chỉ ra một lỗ hổng trong giả định của tôi rằng tôi cần nhập mật khẩu mỗi lần-xem dưới cùng để cập nhật]

Tôi đang kiến ​​trúc & nbsp; một dự án là một mặt trước của C#, nhấn các dịch vụ web xà phòng, giao tiếp với Ced Core và có phụ trợ cơ sở dữ liệu MySQL (được truy cập bằng giải pháp ORM tùy chỉnh Buddy Buddy). & nbsp; Tôi sử dụng MySQL Workbench để quản lý lược đồ và & nbsp; mô hình cơ sở dữ liệu của tôi và tôi lưu trữ tất cả DDL và các quy trình trong SVN, cùng với các tập lệnh hạt giống để đưa dữ liệu phát triển vào cơ sở dữ liệu.

Tôi cần có khả năng thực hiện các thay đổi đối với lược đồ, thêm các quy trình hoặc tập lệnh dữ liệu hạt giống, lưu chúng vào SVN và xây dựng lại nó trên máy chủ tích hợp của tôi với một lệnh duy nhất. & nbsp; Tôi cần các nhà phát triển khác có thể & nbsp; tạo & nbsp; cơ sở dữ liệu về các trường hợp địa phương của họ một cách nhanh chóng khi các thay đổi được thực hiện. & nbsp; Đối với mô -đun, mỗi tệp là một tập lệnh riêng biệt có nghĩa là được chạy, theo thứ tự, để tạo cơ sở dữ liệu, quy trình và dữ liệu hạt giống. & nbsp; một danh sách thư mục mẫu trông như thế này:

Hướng dẫn mysql workbench run multiple sql files - Bàn làm việc mysql chạy nhiều tệp sql

Danh sách thư mục (bấm để phóng to)

Như bạn có thể thấy - Tôi có rất nhiều tập lệnh để chạy và danh sách phát triển hàng ngày khi các quy trình mới và dữ liệu hạt giống được thêm vào. & nbsp; tập lệnh để tạo cơ sở dữ liệu, tập lệnh cho các thủ tục, tập lệnh cho dữ liệu hạt giống & nbsp; ban đầu tôi đã cố gắng chạy tất cả chúng riêng lẻ:

mysql -h localhost -u root -p < 001_Create.sql
mysql -h localhost -u root -p < 002_AppUserProcs.sql
mysql -h localhost -u root -p < 003_InterestProcs.sql
etc….

Vấn đề duy nhất với điều đó là nó đã hỏi tôi về mật khẩu của tôi trên mỗi lần thực thi.

Tôi đã tìm cách đặt mật khẩu vào bộ nhớ, hoặc chỉ yêu cầu một lần, nhưng sau 15 phút của Google & NBSP; Nghiên cứu & NBSP; ADHD của tôi đã khởi động và tôi cần phải làm một cái gì đó khác. & nbsp; những gì tôi sắp đề xuất có thể không phải là cách duy nhất để thực hiện điều này, nhưng đó là những gì tôi nghĩ ra. & nbsp; nó hoạt động, và nó nhanh chóng.

Giải pháp: & NBSP; Kết hợp tất cả các tệp SQL & NBSP; thành một tệp tập lệnh và sau đó thực thi tệp tập lệnh duy nhất đó. & nbsp; Tôi đã viết một lô dos có tên Generate.bat kết hợp tất cả các tệp tập lệnh vào một tệp duy nhất có tên SQLRUN.TXT và sau đó tôi thực thi tiện ích dòng lệnh MySQL so với tệp đó. & nbsp; theo cách này, tôi chỉ được hỏi một lần cho mật khẩu của mình. & nbsp; ở đây & nbsp; là những gì v1.0 của cerso.bat trông giống như::  combine all the sql  files into a single script file and then execute that single script file.  I wrote a DOS batch called generate.bat that combines all of the script files into a single file called sqlrun.txt and then I execute the mysql command line utility against that file.  This way, I only get asked a single time for my password.  Here  is what v1.0 of generate.bat looks like:

@ECHO OFF

ECHO Deleting Previous Files
DEL sqlrun.txt

ECHO Creating script to run

FOR %%X IN (*.sql) DO type %%X >> sqlrun.txt

ECHO Running script
mysql -h localhost -u root -p < sqlrun.txt

ECHO Deleting temporary files
DEL sqlrun.txt

ECHO Finished!

Bí quyết này là nó lặp qua mỗi tệp .sql trong thư mục và tạo một tệp mới có tên SQLRUN.TXT, sau đó được thực thi. & nbsp; Vì các tập lệnh phải được chạy theo một thứ tự rất cụ thể, tôi sử dụng thực tế là lệnh dos cho lệnh sẽ lặp lại thông qua thư mục theo thứ tự bảng chữ cái và tôi đặt tên cho từng tệp của mình một cách số lượng để nó xây dựng sqlrun.txt theo thứ tự tôi muốn nó . & nbsp; Ngoài ra, tệp đầu ra (sqlrun.txt) là một tệp .txt chứ không phải tệp .sql để nó không được chọn trong câu lệnh.

Viola & nbsp; - Vấn đề đã được giải quyết. & nbsp; Tôi chỉ được yêu cầu một lần cho mật khẩu của mình và nhóm phát triển của tôi có thể nhanh chóng tái tạo cơ sở dữ liệu và dữ liệu hạt giống trên bất kỳ máy nào thường xuyên như các thay đổi được thực hiện.

Cập nhật 2011-06-10

Một người theo dõi, ông chủ trước, đồng nghiệp và bạn bè, Gary đã chỉ ra một lỗ hổng trong logic ban đầu của tôi. & nbsp; tiện ích dòng lệnh MySQL sẽ không hỏi bạn mật khẩu mỗi lần nếu bạn sử dụng chính xác (điều mà tôi đã không làm). & nbsp; Tôi đã đặt một khoảng trống sau -P trong đối số mật khẩu, đó là lý do tại sao nó không hoạt động với tôi.

Tuy nhiên, phương pháp tôi đề xuất hoạt động nếu bạn không muốn mã mật khẩu vào tệp của mình. & nbsp; Nếu bạn không có tâm trí có mật khẩu trong tệp của mình, bạn không cần phải tạo một tệp SQL duy nhất, đồ sộ và bạn có thể thay đổi tệp Batch DOS của mình thành phần sau:

@ECHO OFF

ECHO Running scripts
FOR %%X IN (*.sql) DO mysql -h localhost -u root -pMYPASSWORD < %%X

ECHO Finished!

Điều này hoạt động rất tốt cho các kịch bản xây dựng và triển khai tự động trong đó bạn tự động đẩy mã và không có sự can thiệp của con người. Cảm ơn, Gary, cho sự điều chỉnh.

Làm cách nào để chạy nhiều tập lệnh SQL cùng một lúc trong MySQL Workbench?

Cách chạy nhiều truy vấn SQL trong MySQL Workbench giải thích cách bạn có thể chạy nhiều câu lệnh trong cửa sổ truy vấn đơn bằng cách tách chúng bằng dấu chấm phẩy; Bạn có thể có các loại câu lệnh khác nhau như xóa, cập nhật hoặc chèn vào cửa sổ truy vấn đơn và tất cả có thể được thực thi chỉ bằng một cú nhấp chuột.separating them with semicolon ; You can have different types of statements such as delete, update or insert in single query window and all can be executed with single click.

Làm cách nào để chạy nhiều tệp SQL cùng một lúc?

sql) trong một thư mục c: \ script. Lưu chính. SQL trong C: \ scripts. Thực hiện tệp Batch bằng cách nhấp đúp vào cùng ...
Mở thư mục trong Explorer ..
Chọn tất cả các tệp tập lệnh ..
ấn phím Shift..
Nhấp chuột phải vào lựa chọn và chọn "Sao chép dưới dạng đường dẫn".
Truy cập SQL Server Management Studio ..
Tạo một truy vấn mới ..
Menu truy vấn, "Chế độ SQLCMD".

Làm cách nào để nhập nhiều tệp SQL vào MySQL Workbench?

Nhập nhiều tệp SQL vào cơ sở dữ liệu bằng cách sử dụng nhập/khôi phục dữ liệu trong MySQL Workbench là tính năng tuyệt vời khi bạn cần nhập nhiều tệp SQL vào máy chủ MySQL.Nếu bạn đã tạo nhiều tệp bằng cách sử dụng tính năng xuất dữ liệu trong Máy chủ MySQL, dự án tệp Dump SQL có thể được nhập bằng cách sử dụng Nhập/Khôi phục MySQL.Data Import/Restore in MySQL Workbench is great feature when you need to import multiple SQL files into MySQL Server. If you have created multiple files by using Data Export feature in MySQL Server, SQL Dump file project can be imported by using MySQL Import/Restore.

Làm cách nào để chạy hai truy vấn SQL trong MySQL?

Nhà điều hành Liên minh MySQL Để kết hợp bộ kết quả của hai hoặc nhiều truy vấn bằng toán tử Union, đây là những quy tắc cơ bản mà bạn phải tuân theo: Đầu tiên, số và đơn đặt hàng của các cột xuất hiện trong tất cả các câu lệnh được chọn phải giống nhau.Thứ hai, các loại dữ liệu của các cột phải giống nhau hoặc tương thích. To combine result set of two or more queries using the UNION operator, these are the basic rules that you must follow: First, the number and the orders of columns that appear in all SELECT statements must be the same. Second, the data types of columns must be the same or compatible.