Oracle資料庫概念和一些基本的SQL語句

来源:http://www.cnblogs.com/duanrantao/archive/2017/06/27/7083012.html
-Advertisement-
Play Games

1、數據 定義:描述事物的符號。例如:文本、音頻、視頻都是數據。 2、資料庫 存放數據的倉庫,存放在電腦中,按照一定格式存放,可以為用戶共用。 3、資料庫的發展階段 1、網狀資料庫 2、層次資料庫 3、關係資料庫(目前主流資料庫) 4、對象資料庫 4、NOSQL資料庫 4、Oracle資料庫系統用 ...


1、數據

定義:描述事物的符號。例如:文本、音頻、視頻都是數據。

 

2、資料庫

存放數據的倉庫,存放在電腦中,按照一定格式存放,可以為用戶共用。

 

3、資料庫的發展階段

1、網狀資料庫

2、層次資料庫

3、關係資料庫(目前主流資料庫)

4、對象資料庫

4、NOSQL資料庫

 

4、Oracle資料庫系統用戶(管理員)

scott賬戶:測試賬戶,練習賬戶

登錄方式:dos命令行---->sqlplus--->輸入賬戶:scott--->輸入密碼---->(登錄成功)

如果該賬戶被鎖定,需要在sysdba超級賬戶解鎖

sysdba賬戶:超級賬戶,擁有最高許可權,Oracle預設的系統管理員。在該賬戶下把別的賬戶加鎖或解鎖。

登錄方式:直接在dos命令行輸入sqlplus / as sysdba(註意空格)即可

加鎖:alter user 賬戶名 account lock;

解鎖:alter user 賬戶名 account unlock;

查看當前賬戶:show user;

 

5、表名和列名命名規範和數據類型

1、必須以字母開頭

2、只能包含字母、數字、_#$

3、不能使用保留字oracle

4、不能與用戶定義的其他對象重名

數據類型見表

類型

含義

存儲描述

備註

CHAR

固定長度字元串

最大長度2000bytes

 

VARCHAR2

可變長度的字元串,

最大長度4000bytes

可做索引的最大長度749

NCHAR

根據字元集而定的固定長度字元串

最大長度2000bytes

 

NVARCHAR2

根據字元集而定的可變長度字元串

最大長度4000bytes

 

DATE

日期(日--年)

DD-MM-YY(HH-MI-SS),經過嚴格測試,無千蟲問題

 

TIMESTAMP

日期(日--年)

DD-MM-YY(HH-MI-SS:FF3),經過嚴格測試,無千蟲問題

與DATE相比較,TIMESTAMP有小數位秒信息

LONG

超長字元串

最大長度2G,足夠存儲大部頭著作

 

RAW

固定長度的二進位數據

最大長度2000bytes

可存放多媒體圖象聲音等

LONG RAW

可變長度的二進位數據

最大長度2G

可存放多媒體圖象聲音等

BLOB

二進位數據

最大長度4G

 

CLOB

字元數據

最大長度4G

 

NCLOB

根據字元集而定的字元數據

最大長度4G

 

BFILE

存放在資料庫外的二進位數據

最大長度4G

 

ROWID

數據表中記錄的唯一行號

10bytes

********.****.****格式,*01

NROWID

二進位數據表中記錄的唯一行號

最大長度4000bytes

 

NUMBER(P,S)

數字類型

P為整數位,S為小數位

 

DECIMAL(P,S)

數字類型

P為整數位,S為小數位

 

INTEGER

整數類型

小的整數

 

FLOAT

浮點數類型

NUMBER(38),雙精度

 

REAL

實數類型

NUMBER(63),精度更高

 

 

6、建表語法以及常見SQL語句

(1)、建表:create table 表名(列名 數據類型,列名 數據類型,...);

    例:create table stus(stu_id number(10), stu_name varchar2(20));

(2)、查看表結構:desc 表明

    例:desc stus;

(3)、添加新列:alter table 表名 add(列名 數據類型);

    例:alter table stus add(stu_class varchar2(20));

(4)、刪除列:alter table 表明 drop column 列名

    例:alter table stua drop column stu_class;

(5)表改名字:alter table 舊表名 rename to 新表名

    例:alter table stus rename to stu;

(6)、列改名字:alter table 表名 rename 舊列名  to 新列名;

    例:alter table stu rename stu_id to stu_no;

(7)、修改列的數據類型:alter table 表名 modify(列名 數據類型);

    例:alter table stu modify(stu_name number(20));

(8)、添加主鍵:

    表建立完成以後,指定列為主鍵
    前提是:沒有null的數據&&沒有重覆的數據。
    alter table 表名 add constraint(約束,限制) PK_表名_指定的列名 primary key(指定的主鍵那一列);

    例:alter table stu add constrain PK_stu_stu_no primary key(stu_no);

    也可以在創建表的時候就添加主鍵

    create table stu(stu_id number(20) primary key not null);

(9)、刪除表

    方式1:drop table 表名  例:drop table stu(把整個徹底刪除)

    方式2:truncate table 表名 (刪除表中的數據);

(10)、往表中添加數據:insert into 表名(列1,列2..) values(值1,值2....);

例:  insert into stu(stu_id,stu_name) values(1,'張三');

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 自定義樣式 dialog,可設置界面外點擊屏幕外和返回鍵 是否消失 基本用法如下: Utils 工具類封裝: 效果圖: git 源碼下載 To get a Git project into your build: To get a Git project into your build: To ge ...
  • 由於經常會出現 Schema hasn't been registered for model "User" 這樣的問題,所以深入的尋找了一下原因,一點一點的向上查找,最後解決了。 首先是app.js裡面在使用之前要定義,和初始化註冊一次mongoose() 如圖: 因為下麵的index和users ...
  • 神經網路(neural network)是深度學習中一種非常重要的模型,關於神經網路更詳細的介紹呢,這裡就不介紹了,可以自行搜索瞭解。文章主要整理了7個神經網路的實戰項目,相信對神經網路學習者會有所幫助~ ...
  • 記錄一次生產庫遇到的4031錯誤,後來通過調整sga大小將問題解決了 報錯信息: ORA-04031: 無法分配 32 位元組的共用記憶體 ("shared pool","select user#,password,datats...","SQLA","tmp")Incident details in: ...
  • 問題描述: Hbase master起不來,hdfs沒有問題,起來後沒過一會進程又宕了,hdfs磁碟爆了。 解決過程: 開始懷疑是zookeepr宕了。查看配置發現是zookeeper在三台slaves上面,可能會造成資源搶占,zookeeper會被hbase擠掉。 所以將其中一臺slaves轉到m ...
  • 資料庫引擎是高度優化的閉環系統,基於執行計劃的反饋,查詢優化器在一定程度上自動優化現有的執行計劃。查詢優化的核心是索引優化,資料庫引擎通過計數器統計關於索引操作的數據,統計的信息包括:使用次數、物理存儲、底層操作的計數,以及缺失索引等,這些統計數據存儲在記憶體中,是資料庫引擎執行情況的真實反饋,高度概 ...
  • 1、查詢的時候把某一個欄位的值拼接成字元串 以下是演示數據。 第一種方式:使用自定義變數 這種方法有一個好處就是,拼接出來的字元串可以賦值給變數或直接插入表中指定欄位,可以適用於存儲過程之類的。 第二種方式:轉換為 XML 格式 使用這種方式有一個缺點就是,不能直接賦值給變數或插入表,適用於查看時使 ...
  • [20170627]使用TSPITR恢復表空間.txt--//RMAN提供了一種實現所謂TSPITR(Tablespace Point-In-Time Recovery)的技術,通過簡單的一個語句,就可以在主庫不停庫(很吸引人)--//的情況下,利用備份集和連續的歸檔日誌,實現表空間級別的定點恢復。 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...