2012-08-09 50 views
25

thể trùng lặp:
SELECT INTO using OracleTạo bảng mới với SELECT INTO trong SQL

Tôi đã đi qua SQL SELECT INTO tuyên bố để tạo bảng mới và cũng bán phá giá hồ sơ bảng cũ vào bảng mới trong single Câu lệnh SQL là

SELECT * INTO NEW_TABLE FROM OLD_TABLE; 

Nhưng khi tôi đang thử truy vấn trên, đang đưa ra lỗi là ORA-00905: missing keyword

Có thể thực hiện điều đó trong ORACLE không?

Cảm ơn.

Trả lời

65

Cú pháp để tạo một bảng mới là

CREATE TABLE new_table 
AS 
SELECT * 
    FROM old_table 

này sẽ tạo ra một bảng mới có tên new_table với bất cứ cột trong old_table và sao chép dữ liệu qua. Nó sẽ không tái tạo các ràng buộc trên bảng, nó sẽ không tái tạo các thuộc tính lưu trữ, và nó sẽ không tái tạo bất kỳ trình kích hoạt nào được định nghĩa trên bảng.

SELECT INTO được sử dụng trong PL/SQL khi bạn muốn tìm nạp dữ liệu từ bảng vào biến cục bộ trong khối PL/SQL của bạn.

+5

Để hoàn thành hình ảnh: 'tạo bảng dưới dạng ..' là SQL chuẩn và được hỗ trợ bởi gần như tất cả DBMS. Ngay cả một số người sử dụng SELECT INTO để tạo ra các bảng mới. –

+0

Không hoạt động trong SQL Server Management Studio. –

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