【開發篇sql】 條件和表示式(一) 資料型別
1,資料型別
Varchar2,nvarchar2,char的簡單比較
Varchar2與nvarchar2都是可變長度的字元型別,不同的是nvarchar2與國家字符集相關,而char是固定長度的型別。看看他們之間的區別:
create table t_test_chr (
type_char char(4),
type_varchar2 varchar2(20),
type_nvarchar2 nvarchar2(20)
);
insert into t_test_chr values ('aaaa','aaaa','aaaa');
insert into t_test_chr values ('我','我考','我考');
SQL> select length(type_char),length(type_varchar2),length(type_nvarchar2) from t_test_chr;
LENGTH(TYPE_CHAR) LENGTH(TYPE_VARCHAR2) LENGTH(TYPE_NVARCHAR2)
----------------- --------------------- ----------------------
4 4 4
2 2 2
可以看到對於字元來說三者的長度相同,但對於漢字來說就有區別了,而且不同的字符集也存在差異,一個很常見的問題是漢字亂碼問題,這是由於資料庫的字符集設定與客戶端的差異造成的,一般對於開發人員來說這個不用考慮。另外要注意的,char可以不設定長度,預設為1,而varchar2需要設定長度。例如:
SQL> create table t_testchar (v_char char,v_var varchar2(10));
Table created.
有關字符集的問題詳見附錄一章。有關在設計時資料型別的選擇和特殊字元處理方法在資料庫設計一章中詳述,有關xmltype在oracle xml一章中詳述。有關oracle的基本資料型別,可以參見oracle官方文件的《sql reference》的datatypes一節。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/16179598/viewspace-662796/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 資料型別和表示式題目資料型別
- 實驗一 c語言開發環境使用和資料型別、運算子、表示式C語言開發環境資料型別
- 實驗一 C語言開發環境使用和資料型別,運算子,表示式C語言開發環境資料型別
- Oracle OCP(06):通用函式和條件表示式Oracle函式
- [JAVA] Java 變數、表示式和資料型別詳解Java變數資料型別
- 【SQL】18 SQL NULL 函式、SQL 通用資料型別、SQL 用於各種資料庫的資料型別SQLNull函式資料型別資料庫
- 實驗1 C語言開發環境使用和資料型別,運算子,表示式C語言開發環境資料型別
- 實驗1 C語言開發環境使用和資料型別、運算子、表示式C語言開發環境資料型別
- 32. 基本資料型別、約束條件資料型別
- CMake 生成器表示式---條件表示式和邏輯運算子
- SQL SERVER 日期和時間資料型別及函式 (Transact-SQL)SQLServer資料型別函式
- sql server 資料型別轉換函式SQLServer資料型別函式
- SQL 資料型別SQL資料型別
- Java 條件表示式的優化Java優化
- 資料型別與函式索引-PostgreSQL篇資料型別函式索引SQL
- 資料型別與函式索引-MySQL篇資料型別函式索引MySql
- 資料型別與函式索引-Oracle篇資料型別函式索引Oracle
- typescript type 分配條件型別TypeScript型別
- Java 設定Excel條件格式(高亮條件值、應用單元格值/公式/資料條等型別)JavaExcel公式型別
- SQL 常見資料型別SQL資料型別
- SQL Server-資料型別SQLServer資料型別
- MySQL基礎之----資料型別篇(常用資料型別)MySql資料型別
- js資料型別之基本資料型別和引用資料型別JS資料型別
- Java 資料型別和 MySql 資料型別對應一覽表JavaMySQL 資料型別
- 使用條件型別實現TypeScript中的函式過載型別TypeScript函式
- float double 型別資料極值表示型別
- 區別值型別資料和引用型別資料型別
- PL/SQL 條件SQL
- sql 多組條資料取最新的一條資料SQL
- 資料型別之字串篇資料型別字串
- SQL Server資料庫中的資料型別隱式轉換問題SQLServer資料庫資料型別
- 關於Sql server資料型別HierarchyID 資料型別用法和遞迴顯示完整路徑SQLServer資料型別遞迴
- Databricks 第9篇:Spark SQL 基礎(資料型別、NULL語義)SparkSQL資料型別Null
- SSIS 資料型別 第二篇:變數的資料型別資料型別變數
- JAVA中基本資料型別和引用資料型別Java資料型別
- 【SQL】SQL中if條件的使用SQL
- 非關係型資料庫(NOSQL)和關係型資料庫(SQL)區別詳解資料庫SQL
- sql學習(mysql)(1)資料型別MySql資料型別
- SQL教程——常見的資料型別SQL資料型別