2010-05-04 21 views
10

Đối với một bảng trong oracle, tôi có thể truy vấn "all_tab_columns" và nhận thông tin cột bảng, giống như kiểu dữ liệu, độ chính xác, có hay không cột là nullable.Oracle: Có cách nào để lấy các kiểu dữ liệu cột cho một chế độ xem không?

Trong SQL Developer hoặc TOAD, bạn có thể bấm vào một khung nhìn trong GUI và nó sẽ nhổ ra một danh sách các cột mà khung nhìn trả về và cùng một tập hợp dữ liệu (kiểu dữ liệu, độ chính xác, nullable, vv).

Vì vậy, câu hỏi của tôi là, có cách nào để truy vấn định nghĩa cột này cho chế độ xem, cách bạn có thể làm cho bảng không? Làm thế nào để các công cụ GUI làm điều đó?

Trả lời

12

Bạn có thể sử dụng user_tab_columns (hoặc all_tab_columnsdba_tab_columns tương ứng) không phân biệt nếu tên_bảng đề cập đến một cái nhìn hay một bảng.

+0

Wow, cảm ơn vì điều đó. Tôi thề tôi truy vấn all_tab_columns nơi table_name = tên của tôi xem và didnt nhận được bất kỳ kết quả ... Tôi phải có một lỗi đánh máy trong truy vấn của tôi hoặc một cái gì đó, bởi vì tôi chỉ thử nó một lần nữa và có kết quả. Cảm ơn! – CodingWithSpike

-5

bạn có thể sử dụng các quan điểm ANSI catalogue, nên làm việc cho hầu hết các RDBMS

select * 
from information_schema.columns c 
join information_schema.tables t on c.table_name = t.table_name 
where table_type = 'view' 
+2

Tôi không nghĩ rằng Oracle có những thứ này. Oracle của chúng tôi cài đặt không, và tôi không thể tìm thấy bất kỳ tài liệu tham khảo cho nó ... – sleske

3

Xem các cột xuất hiện trong all_tab_columns, vì vậy bạn có thể truy vấn chúng giống như bạn có thể làm bảng.

0

Chỉ đơn giản là viết truy vấn này:

SQL> desc TABLE/VIEW NAME; 

Ví dụ nếu tên bảng/xem là "bộ phận" Sau đó chỉ cần viết:

SQL> desc department; 

này sẽ cung cấp danh sách của tất cả các lĩnh vực, đó là gõ và thông tin Null mặc định của bảng hoặc dạng xem.

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