国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數(shù)據(jù)庫 > MySQL > 正文

MySQL數(shù)據(jù)類型

2024-07-24 12:54:57
字體:
供稿:網(wǎng)友
mysql數(shù)據(jù)類型 
根據(jù)定義,數(shù)據(jù)庫管理系統(tǒng)的目的就是管理數(shù)據(jù)。即使一條簡單的select 1語句也涉及表達(dá)式求值以產(chǎn)生一個(gè)整型數(shù)據(jù)值。mysql中的每個(gè)數(shù)據(jù)值都有類型。例如, 37.4 是一個(gè)數(shù),而“ a b c”是一個(gè)串。有時(shí),數(shù)據(jù)的類型是明顯的,因?yàn)樵谑褂胏reate table 語句時(shí)指定了作為表的組成部分定義的每個(gè)列的類型,如:

    而有時(shí),數(shù)據(jù)類型是不明確的,如在一個(gè)表達(dá)式中引用直接值時(shí),將值傳送給一個(gè)函數(shù),或使用從該函數(shù)返回的值,如:

   insert 語句完成下列操作,這些操作全都涉及數(shù)據(jù)類型:
   ■ 將整數(shù)值14 賦給整數(shù)列i n t _ c o l。
   ■ 將串值“ a”和“b”傳遞給函數(shù)c o n c at( )。c o n c at( ) 返回串值“a b”,這個(gè)串值被賦予串列s t r _ c o l。
   ■ 將整數(shù)值1999 0 115 賦給日期列date _ c o l。而這是不匹配的,因此, mysql將自動(dòng)進(jìn)行數(shù)據(jù)類型轉(zhuǎn)換。要有效地利用mysql,必須理解其怎樣處理數(shù)據(jù)。本章描述了mysql能夠處理的數(shù)據(jù)類型,并討論了在處理這些數(shù)據(jù)類型時(shí)所出現(xiàn)的問題,主要內(nèi)容如下:
   ■ 通用數(shù)據(jù)類型,包括null 值。
   ■ 特殊數(shù)據(jù)類型,以及描述每種列類型的屬性。有些列類型是相當(dāng)常見的,如char 串類型。而有的如auto_increment 整型和t i m e s tamp 日期類型,其性能很特殊,應(yīng)該加以理解以免出錯(cuò)。
   ■ 恰當(dāng)?shù)剡x擇表的列類型。在創(chuàng)建表時(shí),重要的是要了解怎樣為自己的目的選擇最好的類型,以及在幾種類型都可以用于想要存儲(chǔ)的值時(shí)選擇一種類型。
   ■ 表達(dá)式求值規(guī)則。mysql提供了許多可用于表達(dá)式的運(yùn)算符和函數(shù),以便對(duì)數(shù)據(jù)進(jìn)行檢索、顯示和處理。表達(dá)式求值的規(guī)則包括類型轉(zhuǎn)換規(guī)則,在一種類型的值用于另一類型的值的情況時(shí)需用到類型轉(zhuǎn)換規(guī)則。理解何時(shí)進(jìn)行類型轉(zhuǎn)換以及怎樣進(jìn)行轉(zhuǎn)換很重要;有的轉(zhuǎn)換沒有意義而且會(huì)產(chǎn)生錯(cuò)誤值。將串“13”賦給整數(shù)列結(jié)果為值13,但是將串“a b c” 賦給該列得到0 值,因?yàn)?#8220;a b c”不是一個(gè)數(shù)。更壞的是,如果進(jìn)行比較而不了解值的轉(zhuǎn)換,可能會(huì)帶來很大的危險(xiǎn),如在打算只對(duì)幾行進(jìn)行操作時(shí),可能會(huì)更新或刪除了表中的所有行。附錄b和附錄c提供了mysql列類型、運(yùn)算和函數(shù)的更多信息。
   2.1mysql數(shù)據(jù)類型
   mysql有幾種數(shù)據(jù)類型,下面分別進(jìn)行介紹。
   1. 數(shù)值值
   數(shù)值是諸如48 或193.62 這樣的值。mysql支持說明為整數(shù)(無小數(shù)部分)或浮點(diǎn)數(shù)(有小數(shù)部分)的值。整數(shù)可按十進(jìn)制形式或十六進(jìn)制形式表示。整數(shù)由數(shù)字序列組成。以十六進(jìn)制形式表示的整數(shù)由“ 0 x”后跟一個(gè)或多個(gè)十六進(jìn)制數(shù)字(” 0”到“9”及“a”到“f”)組成。例如, 0x0a 為十進(jìn)制的10,而0 x ffff 為十進(jìn)制的6 5 5 3 5。十六進(jìn)制數(shù)字不區(qū)分大小寫,但其前綴“ 0 x”不能為“ 0 x”。即0x0a 和0x0a 都是合法的,但0x0a 和0x0a 不是合法的。浮點(diǎn)數(shù)由一個(gè)阿拉伯?dāng)?shù)字序列、一個(gè)小數(shù)點(diǎn)和另一個(gè)阿拉伯?dāng)?shù)字序列組成。兩個(gè)阿拉伯?dāng)?shù)字序列可以分別為空,但不能同時(shí)為空。mysql支持科學(xué)表示法。科學(xué)表示法由整數(shù)或浮點(diǎn)數(shù)后跟“ e”或“e”、一個(gè)符號(hào)(“+”或“-”)和一個(gè)整數(shù)指數(shù)來表示。1.34e+12 和43.27e-1都是合法的科學(xué)表示法表示的數(shù)。而1.34e12 不是合法的,因?yàn)橹笖?shù)前的符號(hào)未給出。指數(shù)前的“ e”也是一個(gè)合法的十六進(jìn)制數(shù)字,因此有可能會(huì)弄錯(cuò)。數(shù)值前可放一個(gè)負(fù)號(hào)“ -”以表示負(fù)值。
  2. (字符)串值 串是諸如“madison, wi s c o n s i n”或“patient shows improvement”這樣的值。既可用單引號(hào)也可用雙引號(hào)將串值括起來。串中可使用幾個(gè)轉(zhuǎn)義序列,它們用來表示特殊的字符,見表2 - 1。每個(gè)序列以一個(gè)反斜杠(“/”)開始,指出臨時(shí)不同于通常的字符解釋。注意nul 字節(jié)與null 值不同;nul 為一個(gè)零值字節(jié),而null 為沒有值。

    要在串中包括一個(gè)引號(hào),可有如下三種選擇:
    ■ 如果串是用相同的引號(hào)括起來的,那么在串中需要引號(hào)的地方雙寫引號(hào)即可。如:

    ■ 如果串是用另外的引號(hào)括起來的,則不需要雙寫相應(yīng)引號(hào)。如:

    ■ 用反斜杠方式表示;這種方法不去管用來將串括起的是單引號(hào)還是雙引號(hào)。如:

    在串的環(huán)境中,可用十六進(jìn)制常數(shù)來指定串值。其語法與前面描述的數(shù)值值相同,但是每對(duì)十六進(jìn)制的數(shù)字都被看作ascii 代碼并轉(zhuǎn)換為字符,其結(jié)果用于串。例如, 0 x 6 16 2 6 3作為串時(shí)為“ a b c”。
    3. 日期和時(shí)間值
    日期和時(shí)間是一些諸如“ 1999 - 0 6 - 17”或“12 : 3 0 : 4 3”這樣的值。mysql還支持日期/時(shí)間的組合,如“ 1999-06-17 12:30:43”。要特別注意這樣一個(gè)事實(shí),即mysql是按年-月-日的順序表示日期的。mysql的初學(xué)者通常對(duì)這一點(diǎn)很驚奇,其實(shí)這是ansi sql 的標(biāo)準(zhǔn)格式。可以利用date _ f o r m at( ) 函數(shù)以任意形式顯示日期值,但是缺省顯示格式首先顯示年,而且輸入值也必須首先給出年。
    4. null 值
    null 是一種“無類型”的值。它過去慣常表示的意思是“無值”、“未知值”、“丟失的值”、“溢出值”以及“沒有上述值”等。可將null 值插入表中、從表中檢索它們,測試某個(gè)值是否是null,但不能對(duì)null 值進(jìn)行算術(shù)運(yùn)算(如果對(duì)null 進(jìn)行算術(shù)運(yùn)算,其結(jié)果為null)。

  • 網(wǎng)站運(yùn)營seo文章大全
  • 提供全面的站長運(yùn)營經(jīng)驗(yàn)及seo技術(shù)!
  • 發(fā)表評(píng)論 共有條評(píng)論
    用戶名: 密碼:
    驗(yàn)證碼: 匿名發(fā)表
    主站蜘蛛池模板: 柘城县| 江都市| 衡阳市| 沂源县| 云梦县| 和政县| 金坛市| 柯坪县| 吉安县| 阿坝县| 潼关县| 墨脱县| 资源县| 吴川市| 建昌县| 扎鲁特旗| 汤原县| 麻城市| 迭部县| 扶余县| 汉中市| 吴桥县| 包头市| 炉霍县| 隆安县| 五峰| 阿坝县| 奉贤区| 金乡县| 中宁县| 墨脱县| 基隆市| 盐津县| 巴楚县| 湖州市| 鄂伦春自治旗| 鹤壁市| 彰化市| 阳春市| 平武县| 积石山|