2008-11-14 39 views
23

Tôi đã cố gắng để làm theo một số hướng dẫn ngày hôm nay, và nó bắt đầu với lời nhận xétSQLDeveloper có hỗ trợ thực thi các tập lệnh không?


REM In SQLPlus I manually copy in each line and execute it. 

Đó là đẹp, tôi không có sqlplus, tôi có SQLDeveloper. Các dòng được dán vào là loại:


@\\server\dir\dir\dir\commandfile1.txt; 
COMMIT; 

... v.v ...

Nó không thích khi tôi thử điều đó trong cửa sổ SQL. Tôi mở ra và dán vào các lệnh bằng tay, và cũng không hài lòng với điều đó. (Ý của tôi đề cập rằng tôi không tốt như vậy với ứng dụng này cũng không Oracle, nhưng mà những người khác đã được ra khỏi ngày hôm nay?) Các tập tin có bắt đầu với mã như:


rem 
set echo on 
rem 
execute procedure_name ('parameter1', 'parameter2'); 

Một đồng nghiệp đã có sqlplus, và cùng nhau, chúng tôi đã giải quyết nó. Nhưng, có cách nào để tôi làm điều này với SQLDeveloper, vì vậy tôi không bị mắc kẹt nếu anh ta ra quá?

Trả lời

59

Để chạy script trong SQL Developer:

@"\Path\Scriptname.sql" 

(Bạn chỉ cần có dấu ngoặc kép nếu có bất kỳ dấu cách)

Bạn có thể đặt một đường dẫn mặc định: menu Tools> Preferences> Cơ sở dữ liệu> Worksheet> Chọn đường dẫn mặc định để tìm kiếm các tập lệnh

-1

này sẽ làm điều đó:

begin 
    procedure_name ('parameter1', 'parameter2'); 
end; 
/
0

Đối với mỗi tập tin bạn cần phải chạy, tìm thấy nó và thả nó vào SQLDeveloper. Chạy tập lệnh (F5) và sau đó cam kết (F11). Điều này sẽ làm việc cho một số tập lệnh, nhưng không phải tất cả.

+0

Như bạn đã nói, nó hoạt động cho một số, nhưng không phải tất cả. Tôi đã phải cài đặt SQL * Plus để làm phần còn lại. – thursdaysgeek

2

Tôi đã xem qua các tệp trợ giúp và tìm cách thực hiện nó trong các khái niệm và cách sử dụng SQL Developer-> Sử dụng SQL Worksheet-> Script Runner.

Về cơ bản, bạn phải đặt trước tên tệp bằng @. Ví dụ: @C: \ MyScript \ Script.sql.

Sau đó, bạn có thể chạy một lô theo cách này. Lưu ý rằng lệnh này dường như không thích khoảng trống trong đường dẫn tệp.

0

Nhà phát triển SQL những ngày này đi kèm với một công cụ khác được gọi là sqlcl. Đây là một chút giống như SQLPlus nhưng thực sự đang sử dụng một số bit từ SQL Developer để cung cấp giao diện dòng lệnh/kịch bản lệnh tương thích.

Bạn có thể sử dụng nó để thực thi các lệnh kiểu sqlplus mà không phải chống lại các tính năng bổ sung của GUI kiểu nhà phát triển SQL có thể gây nhầm lẫn.

Tìm nó ở bất kỳ nơi nào Nhà phát triển SQL đang ngồi. Nếu bạn không có nó ở đó, bạn có thể tải xuống và triển khai nó vào thư mục sqldeveloper của bạn.

+0

Thông tin được cung cấp là đúng nhưng tôi không thấy cách nó trả lời bài đăng gốc. Nó dường như chỉ liên quan đến tiêu đề nhẹ, bỏ qua nội dung câu hỏi và không mở rộng vượt xa "có một công cụ, nó có một dòng lệnh" – Neil

+0

Người dùng cho rằng họ chỉ có SQL Developer. Nếu cài đặt là tiêu chuẩn, họ có thể có SQLCL có sẵn cũng được giải thích bởi liên kết. – hughk

+0

Ok.Và bạn có ngụ ý rằng những thứ mà người dùng đã hỏi (ví dụ: chạy @ \\ server \ dir \ dir \ dir \ commandfile1.txt;) có thể được thực hiện từ SQLcl không? Điều đó sẽ làm cho quan điểm của bạn có liên quan. Bạn sẽ đi xa như vậy để nói rằng nó có thể làm điều đó? – Neil

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