2012-12-10 43 views
10

Trong Sql Developer theo bảng tôi thấy bảng, nhưng một số bảng có $ trong tên.

Ví dụ:

tb$something 

Điều đó dấu '$' có ý nghĩa gì khi tên của bảng?

+1

'Oracle' tạo các khung nhìn' v $ 'từ cấu trúc' x $ '. Khung nhìn v $ view thực tế tạo các định nghĩa khung nhìn được đặt trong thư mục '$ ORACLE_HOME/rdbms/admin' để bạn có thể thấy cách các khung nhìn' v $ 'được xây dựng trên các cấu trúc' x $ '. –

+1

Tôi sử dụng $ đôi khi, ví dụ: 'EMPLOYEE $ JN' là bảng tạp chí cho' EMPLOYEE'. Nhược điểm duy nhất là kịch bản để tạo bảng không thể bao gồm một $ hoặc SQL * Plus than phiền về nó. –

Trả lời

9

nó không có nghĩa gì cả. vì bạn có thể tạo các bảng với các ký hiệu đô la nếu bạn muốn (có lẽ không được khuyến cáo vì mọi người có thể bị nhầm lẫn khi nghĩ rằng chúng là các bảng đặc biệt oracle).

nếu bạn đang đề cập đến đối tượng thuộc sở hữu của SYSSYSTEM sau đó tên Oracle quan điểm cấu trúc bộ nhớ của nó ví dụ V$ (ví dụ v$session). nhưng đây chỉ là một quy ước đặt tên mà Oracle corp sử dụng cho các đối tượng của nó.

+1

> Oracle mạnh mẽ không khuyến khích bạn sử dụng $ và # trong số nhận dạng không được bỏ phiếu. http://docs.oracle.com/cd/E11882_01/server.112/e10592/sql_elements008.htm –

5

Thông thường, đây là các bảng "thuộc về" cơ sở dữ liệu - vì chúng thuộc sở hữu của một trong những người dùng được xác định trước (SYS, ...) hoặc vì Oracle sử dụng chúng để dọn phòng, ví dụ: cho

  • chỉ số toàn văn (chúng được đặt tên DR $ ...)
  • thể hóa xem bản ghi (chúng được đặt tên RUPD $ ... và MLOG $ ...)

Nhưng bạn có thể 't dựa vào quy tắc đó, bởi vì (như DazzaL đã đề cập), không có gì ngăn cản bạn tạo ra các bảng của riêng bạn với một ký hiệu đô la trong tên.

8

Bảng chứa tiền tố V $ là các bảng lưu trữ thông tin dễ bay hơi.

Thông tin dễ bay hơi được sản xuất bởi một ví dụ oracle khi đang sử dụng (Trong trường hợp sử dụng có nghĩa là phiên bản đang hoạt động). Thông tin dễ bay hơi bao gồm Thống kê, thông tin phiên của người dùng, cấp phát bộ nhớ.

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