1. 程式人生 > >Oracle入門(五B)之desc命令

Oracle入門(五B)之desc命令

describe命令

列出指定表的列定義,檢視或同義詞,或指定函式或儲存過程的詳述。

語法:desc[ribe]   {[模式.]物件[@連結串]}

模式

表示物件駐留的架構。如果省略架構,SQL*Plus假定擁有自己的物件。

物件

表示要描述的表、檢視、型別、過程、函式、包或同義詞。

@連結串

包含與物件存在的資料庫對應的資料庫連結名稱。有關哪些特權允許訪問不同架構中的另一個表的更多資訊,請參閱Oracle資料庫SQL引用

用法

說明 對於表,檢視,型別和同義詞包含以下資訊:

  • 每列的名稱

  • 是否允許空值(NULL或NOT NULL)用於每列

  • 資料型別的列,例如CHAR,DATE, 長,LONGRAW,NUMBER, 生的

    ,ROWID,VARCHAR2 (VARCHAR)或XMLType

  • 列的精度(以及數字列的縮放比例,如果有的話)

在執行DESCRIBE時,VARCHAR列將返回一個VARCHAR2型別。

DESCRIBE命令使您能夠遞迴地描述物件到SET DESCRIBE命令中設定的深度級別。當物件包含多個物件型別時,您還可以顯示屬性或列名的行號和縮排。有關更多資訊,請參閱SET命令。

要控制顯示資料的寬度,請使用SET LINESIZE命令。

DESCRIBE命令的列輸出通常分配一定比例的當前指定的行大小。使用SET LINESIZE命令減小或增加行大小通常會使每列按比例變小或變大。這可能會給您的顯示器帶來意想不到的文字包裝。

有關更多資訊,請參閱SET命令。

說明 功能和程式包含以下資訊:

  • PL / SQL物件的型別(函式或過程)

  • 函式或過程的名稱

  • 返回的值的型別(對於函式)

  • 引數名稱,型別,輸入或輸出以及預設值(如果有的話)

  • ENCRYPT關鍵字來指示列中的資料是否被加密

例子

描述檢視EMP_DETAILS_VIEW的結構

DESCRIBE EMP_DETAILS_VIEW
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------
 EMPLOYEE_ID                               NOT NULL NUMBER(6)
 JOB_ID                                    NOT NULL VARCHAR2(10)
 MANAGER_ID                                         NUMBER(6)
 DEPARTMENT_ID                                      NUMBER(4)
 LOCATION_ID                                        NUMBER(4)
 COUNTRY_ID                                         CHAR(2)
 FIRST_NAME                                         VARCHAR2(20)
 LAST_NAME                                 NOT NULL VARCHAR2(25)
 SALARY                                             NUMBER(8,2)
 COMMISSION_PCT                                     NUMBER(2,2)
 DEPARTMENT_NAME                           NOT NULL VARCHAR2(30)
 JOB_TITLE                                 NOT NULL VARCHAR2(35)
 CITY                                      NOT NULL VARCHAR2(30)
 STATE_PROVINCE                                     VARCHAR2(25)
 COUNTRY_NAME                                       VARCHAR2(40)
 REGION_NAME                                        VARCHAR2(25)

描述儲存過程CUSTOMER_LOOKUP的結構

DESCRIBE customer_lookup
PROCEDURE customer_lookup
Argument Name           Type     In/Out   Default?
----------------------  -------- -------- ---------
CUST_ID                 NUMBER   IN
CUST_NAME               VARCHAR2 OUT

建立和描述包APACK包含儲存過程aproc和bproc的結構

CREATE PACKAGE apack AS
PROCEDURE aproc(P1 CHAR, P2 NUMBER);
PROCEDURE bproc(P1 CHAR, P2 NUMBER);
END apack;
/
Package created.

DESCRIBE apack
PROCEDURE APROC
 Argument Name                  Type                    In/Out Default?
 ------------------------------ ----------------------- ------ --------
 P1                             CHAR                    IN
 P2                             NUMBER                  IN
PROCEDURE BPROC
 Argument Name                  Type                    In/Out Default?
 ------------------------------ ----------------------- ------ --------
 P1                             CHAR                    IN
 P2                             NUMBER                  IN

建立和描述包含屬性STREET和CITY的物件型別ADDRESS

CREATE TYPE ADDRESS AS OBJECT
  ( STREET  VARCHAR2(20),
    CITY    VARCHAR2(20)
  );
/
Type created.

DESCRIBE address
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------
 STREET                                             VARCHAR2(20)
 CITY                                               VARCHAR2(20)

建立和描述包含屬性LAST_NAME,EMPADDR,JOB_ID和SALARY的物件型別EMPLOYEE

CREATE TYPE EMPLOYEE AS OBJECT
(LAST_NAME VARCHAR2(30),
EMPADDR ADDRESS,
JOB_ID VARCHAR2(20),
SALARY NUMBER(7,2)
);
/
Type created.

DESCRIBE employee
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------
 LAST_NAME                                          VARCHAR2(30)
 EMPADDR                                            ADDRESS
 JOB_ID                                             VARCHAR2(20)
 SALARY                                             NUMBER(7,2)

建立物件型別addr_type 並描述作為物件型別ADDRESS的一個表

CREATE TYPE addr_type IS TABLE OF ADDRESS;/
Type created.

DESCRIBE addr_type
 addr_type TABLE OF ADDRESS
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------
 STREET                                             VARCHAR2(20)
 CITY                                               VARCHAR2(20)
建立物件型別addr_varray並描述作為物件型別ADDRESS的一個數組
CREATE TYPE addr_varray AS VARRAY(10) OF ADDRESS;/
Type created.

DESCRIBE addr_varray
 addr_varray VARRAY(10) OF ADDRESS
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------
 STREET                                             VARCHAR2(20)
 CITY                                               VARCHAR2(20)

建立和描述包含列DEPARTMENT_ID, PERSON和LOC的表department

CREATE TABLE department
(DEPARTMENT_ID NUMBER,
PERSON EMPLOYEE,
LOC NUMBER
);
/
Table created.

DESCRIBE department
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------
 DEPARTMENT_ID                                      NUMBER
 PERSON                                             EMPLOYEE
 LOC                                                NUMBER

建立和描述包含屬性NUMERATOR和DENOMINATOR的物件型別rational以及 METHOD rational_order

CREATE OR REPLACE TYPE rational AS OBJECT
(NUMERATOR NUMBER,
DENOMINATOR NUMBER,
MAP MEMBER FUNCTION rational_order - 
RETURN DOUBLE PRECISION,
PRAGMA RESTRICT_REFERENCES
(rational_order, RNDS, WNDS, RNPS, WNPS) );
/
CREATE OR REPLACE TYPE BODY rational AS OBJECT
MAP MEMBER FUNCTION rational_order - 
RETURN DOUBLE PRECISION IS 
BEGIN
  RETURN NUMERATOR/DENOMINATOR;
END;
END;
/
DESCRIBE rational
Name                             Null?      Type
------------------------------   --------   ------------
NUMERATOR                                   NUMBER
DENOMINATOR                                 NUMBER

METHOD
------
MAP MEMBER FUNCTION RATIONAL_ORDER RETURNS NUMBER

建立包含XMLType列的,,並且描述其結構

CREATE TABLE PROPERTY (Price NUMBER, Description SYS.XMLTYPE);
Table created

DESCRIBE PROPERTY;
Name                                       Null?     Type
-----------------------------------------  --------  ----------------------
PRICE                                                NUMBER
DESCRIPTION                                          SYS.XMLTYPE
要格式化DESCRIBE輸出,請使用SET命令,如下所示:
SET LINESIZE 80
SET DESCRIBE DEPTH 2
SET DESCRIBE INDENT ON
SET DESCRIBE LINE OFF

要顯示物件的設定,請按如下所示使用SHOW命令:

SHOW DESCRIBE
DESCRIBE DEPTH 2 LINENUM OFF INDENT ON

DESCRIBE employee
 Name                                      Null?    Type
 ----------------------------------------- -------- ----------------------
 FIRST_NAME                                         VARCHAR2(30)
 EMPADDR                                            ADDRESS
   STREET                                           VARCHAR2(20)
   CITY                                             VARCHAR2(20)
 JOB_ID                                             VARCHAR2(20)
 SALARY                                             NUMBER(7,2)

要建立並描述包含加密列col2的表des2_table

CREATE TABLE des2_table (
col1 VARCHAR2(10),
col2 VARCHAR2(15) ENCRYPT,
col3 CHAR(5),
col4 CHAR(20));
Table created

DESCRIBE des2_table;
Name                                       Null?     Type
-----------------------------------------  --------  ----------------------
COL1                                                 VARCHAR2(10)
COL2                                                 VARCHAR2(15) ENCRYPT
COL3                                                 CHAR(5)
COL4                                                 CHAR(20)

相關推薦

Oracle入門Bdesc命令

describe命令列出指定表的列定義,檢視或同義詞,或指定函式或儲存過程的詳述。語法:desc[ribe]   {[模式.]物件[@連結串]}模式表示物件駐留的架構。如果省略架構,SQL*Plus假定擁有自己的物件。物件表示要描述的表、檢視、型別、過程、函式、包或同義詞。@

Oracle入門十三ASelect

一、資料查詢語句(1)select語句完整的句法select 目標表的列名或列表達式序列from 基本表名和(或)檢視序列[ where 行條件表示式 ][ group by 列名序列 [ having 組條件表示式 ] ][ order by 列名[ asc|desc ],

Java基礎入門十一基本數據包裝類以及簡單轉換

數據包 intvalue nbsp 1.5 lse false 永遠 ring jdk 一、 基本數據類型包裝類 引用數據類型一般為基本數據類型首字母大寫,除了int 、char,其中int的引用數據類型類Integer,char的引用數據類型為Character 關

C語言入門廿二預處理指令、巨集、條件編譯、檔案包含、typedef、const

預處理指令 什麼是預處理指令: 在我們的檔案翻譯成0和1之前做的操作我們稱之為預處理指令。一般情況預處理指令都是以#號開頭的。 巨集定義的格式 不帶引數的巨集定義: #define 巨集名 值 巨集定義的作用:      

C語言入門廿一static、extern關鍵字

區域性變數  概念: 區域性變數就是定義在函式, 程式碼塊和函式形參列表中的變數, 我們就稱之為區域性變數  作用範圍: 從定義的那一行開始一直直到遇到大括號結束或者遇到return為止  特點:     相同作用域範圍內不

C語言入門二十列舉

C語言中,列舉就是專門用於表示幾種固定型別的取值。列舉的本質就是基本資料型別, 就是整形。 列舉和結構體一樣, 要想定義列舉型別變數, 那麼必須先定義列舉型別。 列舉型別定義的格式   enum 列舉型別名稱 { 取值, }; // 1.

C語言入門十九結構體

太晚了(11點半了),明天繼續結構體 陣列: 是用於儲存一組相同型別的資料 結構體: 是用於儲存一組不同型別的資料 // 1.定義結構體型別 struct Person { // char name[20]; char *name;

C語言入門十八指標、字串、函式

如何利用指標運算元組 int ages[3] = {1, 3 , 5}; ages[0] = 998; printf("ages[0] = %i\n", ages[0]); int *p = ages; // int *p = &a

C語言入門十七指標的基本概念

如何定義指標變數      普通變數:      資料型別 變數名稱;            指標變數:  &nb

C語言入門十六字串

字串的基本概念 如何定義字串變數, 由於字串是同一種類型的資料組成,  並且是有序的。 而陣列就是用於儲存很多同一種類型的有序資料, 所以可以使用陣列來儲存字串。 注意: 字串變數和普通的字元陣列有一定的區別。 C語言規定, 字串必須以\0結尾(作為字串的結束符號), 所以

React Native入門十二使用第三方字型檔案

前言 專案中需要展示一些別的平面或者其他民族文字時,需要使用該文字對應的字型檔案,一般來說都是.ttf的。 在React Native中,使用字型檔案就是在style中設定fontFamily屬性! 比如,這裡的字型檔案為:FangSong.ttf,那麼使

React Native入門十一螢幕適配

準備 首先,我們在官方文件寬度和高度一節可以知道,RN中單位是dp,這個跟Android中的單位是一致的! 官網中: A dp is equal to one physical pixel on a screen with a density of 1

mybatis入門Java API

Java API 既然你已經知道如何配置 MyBatis 和建立對映檔案,你就已經準備好來提升技能了。MyBatis 的 Java API 就是你收穫你所做的努力的地方。正如你即將看到的,和 JDBC 相比,MyBatis 很大程度簡化了你的程式碼並保持程式碼簡潔,容易

JavaFX入門在JavaFX中建立表單

在開發應用程式時,建立表單是一項常見活動。本教程將向您介紹屏幕布局的基礎知識,如何將控制元件新增到佈局窗格以及如何建立輸入事件。 在本教程中,您將使用JavaFX構建如圖4-1所示的登入表單。 圖4-1登入表單   本入門教程中使用的工具是NetBeans

Java網路程式設計入門TCP程式設計——複用Socket連線

如何複用Socket連線? 在前面的示例中,客戶端中建立了一次連線,只發送一次資料就關閉了,這就相當於撥打電話時,電話打通了只對話一次就關閉了,其實更加常用的應該是撥通一次電話以後多次對話,這就是複用客戶端連線。 那 麼如何實現建立一次連線,進行多次資料交換呢?其實很簡單

Oracle入門十四.6使用標量資料型別

一、宣告字元變數字元資料型別包括CHAR,VARCHAR2和LONG。DECLARE v_emp_job VARCHAR2(9); v_order_no VARCHAR2(6); v_product_id VARCHAR2(10); v_rpt_body_part L

Oracle入門十四.22建立DDL和資料庫事件觸發器

一、什麼是DDL和資料庫事件觸發器?DDL語句觸發DDL觸發器:CREATE,ALTER或DROP。資料庫事件觸發器由資料庫中的非SQL事件觸發,例如:•使用者連線到資料庫或與資料庫斷開連線。•DBA啟動或關閉資料庫。•使用者會話中引發了特定的異常。(1)在DDL語句中建立觸

Oracle入門十四.13帶引數的遊標

一、帶引數的遊標    引數是一個變數,其名稱用於遊標宣告中。 當遊標開啟時,引數值被傳遞給Oracle伺服器,Oracle伺服器使用它來決定要將哪些行檢索到游標的活動集中。    這意味著您可以在塊中多次開啟和關閉顯式游標,或者在同一個塊的不同執行中開啟和關閉顯式游標,每次

Spark修煉基礎篇——Linux大資料開發基礎:第十三節:Shell程式設計入門)

本節主要內容 while expression do command command done (1)計數器格式 適用於迴圈次數已知或固定時 root@sparkslave02:~/ShellLearning/Chapter13# vim w

Mac版R語言入門R語言中的資料型別factor因子

更多R語言資訊歡迎關注我的新浪微博:Jenny愛學習微信公眾號:R語言資料分析與實踐分析資料時,經常遇到分類變數。例如,假設你有一系列關於人群特徵的資料,其中一個指標是瞳孔顏色。這時候,可以用字元型陣列來表示瞳孔顏色:> eye.colors <- c("brow