oracleday04 資料型別 alter

2021-08-04 15:21:15 字數 2554 閱讀 7757

文字、二進位制型別(資料型別)

clob (character large object)字元型大物件 8tb

1、變長 2、最大8tb

blob (binary large object)二進位制資料 可以存放/聲音 8tb 

1、變長 2、最大8tb

在實際開發中很少把檔案存放到資料庫中(效率不高) 實際上一般記錄檔案的乙個路徑(然後通過io/網路來操作

如果我們要求對檔案安全性高,可以考慮放進資料庫

數值型別

create table test (price number)

number 可以存放整數也可存放小數可變的數值型別 大就大 小就小

number(p,s) p為整數字 s為小數字 1<=p<=38 -84<=s<=127 儲存資料範圍 -1.0e-130<=number value <1.0e+126

-1.0e-130就是-1.0乘以10的-130次方  1.0e+126 1.0乘以10的126次方 儲存在機器內部的範圍 1~22bytes

有效位:從左往右看 第乙個非零的數就是第乙個有效位

number(5,2)表示乙個小數有5個有效位,2位小數 -999.99~999.99 超過範圍無法輸入

如果數值超出了位數限制就會被擷取多餘的位數 但在這一行資料這個字段輸入575.316 那麼真正儲存到字段的就是575.32

123.89 number(4,2)會報錯 有效位才4個 要保留2個小數超過了有效位報錯

在實際情況中有明確要求保留到小數點第幾位則明確指定如果沒有 就可以直接使用numer

number是變長

date日期型別

create table test02 (birthday date)

用於表示時間(年/月/日/時/分/秒) 從西元前4712-1-1 到公元4712-12-31為合法

insert into test02 values('2011-11-11') 報錯 型別不匹配

insert into test02 values('11-11月-11')  

oracle 日期的預設格式是'dd-mm-yyyy' 如果我們希望使用自己的格式 需要使用oracle 函式

timestamp(n) 郵戳 n 0~9 秒的小數字 自動更新 一般不用改

create table students(

id number.

name varchar(2),

*** char(2),

birthday date,

felloship number(10,2),

resume clob

alter table 表名 add (columnname databyte(新的列名 資料型別))增加個字段

alter table 表名 modify (columnname databyte) 只能修改欄位的資料型別 

alter table 表名 drop column (欄位名)多個要括號 乙個不要帶括號 刪除乙個字段

修改表的名稱 rename 表名 to 新錶名

通用的desc 表名 檢視表的結構

crud create/retrieve/update/delete 增查修刪(增刪改查)

crud 操作就是c(create) r(retrieve) 獲取 

insert 增加操作 插入的資料應與字段的資料型別相同

oracle 控制台總是嘗試將你給的資料轉化成能插入進去的型別 比如'123'能放到number裡面原本是字元型別但是轉化成number 插入進去

資料的大小應該在列的規定範圍內,例如不能將長度為80的字串加入到長度為40的列中

在values 中列出的資料位置必須與被加入的列的排列位置相對應

字元和日期型資料應包含在單引號中  如果不加可能被當作列來處理

create table test (name varchar(64),age number);

insert into test (name.age) values('sss',null)

select name,dum(age) from test ; null相當於沒分配空間

insert into test (name.age) values('sss',' ') 這個空是相當於乙個空串

特性 oracle  把『』=null 只有『 啥都沒

如果給表的每列都新增值的話則可以不帶列名

insert into 表名 values (每一列的值都要加上)

使用update 操作

基本語法 update 表名 set [列名 =表示式](可以用運算或數學函式)where 條件

使用的注意事項

update 語法可以用新值更新原有錶行中的各列

set 字句指示要修改哪些列和要給與哪些值

update students set ***='女' where name ='zs'; 改性別

update students set felloship='10' where name ='zs';

update students set felloship=felloship+fellowship*0.1 where條件不加就是更新所有行

基礎資料型別04

目錄3.輸入輸出 4.字串格式化 5.比較運算子 執行python的三個階段 變數 是一種控制計算機訪問資料的一種機制 定義 不可以被改變的量 python中變數名全為大寫代表常量 字串中間空格也是字元可以用len 驗證多個引號在一起時要注意區分,內外層單雙引號分開 msg my neme is z...

C語言 04 資料型別

short int long char float double 這六個關鍵字代表c 語言裡的六種基本資料型別。c99標準提供的7種基本資料型別及其對應的關鍵字如表所示。關鍵字資料型別 關鍵字資料型別 字元型char 無值型別 void 整型int 邏輯型 bool 浮點 單精度 型 float 複...

C 中的資料型別 04

c 中的資料型別主要分為值型別和引用型別這兩種,其中指標型別只是在unsafe的上下文中才會出現。1 值型別變數 值型別的變數總體有6 66種,分別為 整型 浮點型 字元型 char 布林型 bool 列舉型 enum 結構體型 struct 等。其中列舉型 enum 和結構體型 struct 為兩...