首先介紹一下oracle中對於字串的處理
char varchar varchar2 nvarchar long clob這些都是oracle中常用的字串型別,在這裡用的比較多的就是varchar和varchar2,但是,它們是有區別的。
varchar型別是國際標準組織ansi制定的字串型別
varchar2是oracle公司自定義的字串型別,目前varchar和varchar2功能一致,oracle推薦使用varchar2,mysql中沒有varchar2只有varchar,varchar2使用時必須指定大小,char不用指定大小,預設為1
char和varchar的區別
新霸哥注意到了char表示固定長度的字串,varchar表示變長的字串,c1--char(10)-->為c1開闢10個字元的空間,不夠10個,補充空格。c2--varchar(10)-->按照c2實際的長度開闢空間,最大開闢10個長度的空間
中文儲存問題
開闢空間大小單位為位元組,能存多少字元,和編碼有關,gbk:中文佔倆個位元組,字母和數字占用乙個位元組。
utf-8:中文佔3個位元組,字母和數字佔乙個位元組
unicode:字母和中文都佔倆個位元組
使用建議:varchar2定義長度的時候採用最大值:字元數*3
nvarchar型別
nvarchar採用是unicode編碼儲存
nvarchar(5):可以儲存5個字元(漢子或者字母數字)
字串處理函式
oracle提供很多字串、數值、日期時間等,在這裡就不詳細的介紹了。如果你想深入的了解,可以和新霸哥交流。
數值操作
oracle中數值型別,利用number定義整數,浮點數。number:既可以儲存整數也可以儲存小數,number(p):表示p位的整數,number(p,s):表示浮點數,s表示小數字數,p表示有效位數
--s>0:對小數點右側做多保留s位小數
--s=0:對小數點四捨五入截掉保留整數
--s<0:對小數點左側s位四捨五入清0
當p日期和時間的操作
sysdate:oracle伺服器當前系統時間,systimestamp:返回oracle伺服器當前系統時間是乙個timestamp型別。將字串站換成date,to_date(s.format):將s字串以format格式轉換成date型別。 oracle預設的格式為:dd-mm-rr,英文環境:'01-jan-90',中文環境:'01-1月-90'
日期轉換成字串
to_char(date,format):將date轉換成format格式的字串顯示出來。 to_timestamp和to_date相似,可以將乙個字串轉換成timestamp()型別
其他日期函式
last_day(date):返回當前時間月份的最後一天,next_day(date,星期幾):從當date時間開始計算,下乙個星期幾的日期(離date最近的日期),months_between(date1,date2):計算date1-date2相差多少個月。extract:獲取指定的年,月,日等資訊。
空值操作
null:各種型別的字串都可以為null,這個也是很重要的,在開發中會經常遇到的。
1》插入式寫入null
2》null做條件查詢
帶你輕鬆理解函式指標 C C
想要指定函式的返回值 指標的名稱 引數1,引數2,意思就是想指向的那個函式的返回值為void型別 並且該函式有兩個引數,第乙個引數為string 型別,第二個引數為int型別 該指標的名稱是p void p string int 注意看裡面的注釋 include include include us...
帶你輕鬆玩轉Cisco路由器密碼
路由器是網管員經常要打交道的硬體裝置之一,如果忘了路由器的密碼責任也不小呀,下面就給大家送上兩招解決cisco密碼問題的秘技。路由器口令類別 有效加密口令 enabled secret password 安全級別最高的加密口令,在路由器的配置表中以密碼的形式出現 有效口令 enabled passw...
Make Sense 動手好伴侶,帶你輕鬆做實驗
你是否對大自然各種神奇的現象充滿了好奇心,但面對錯綜複雜的實驗卻無從下手?無論是實驗步驟還是所需材料,對普通人來說都太難 get。而 make sense 動手好伴侶可以直接帶你通往物理世界,讓靜止的物體動起來,伴你輕鬆做實驗。簡單來說,make sense 可以看作是一套感測器連線系統,它自帶通用...