數據庫那點事兒

客串:屌絲的坑人表單神器html

推薦:手把手教你作關鍵詞匹配項目(搜索引擎)---- 第十七天mysql

文章開始以前,我先吐槽一下:如今的應屆畢業生丫,不知大學四年都幹了什麼,難道時間都花在戀愛上面,就算你想戀也沒得愛可給你戀的,你確實戀了的,我只能認爲你在搞基。sql

雖然我也是從大學四年搞基出來的,至少有些東西仍是沒丟給老師。數據庫

目錄:編程

1. 數據類型數據結構

2. 存儲引擎post

3. 名詞解析優化

4. 實體 VS 類搜索引擎

5. 關係型 VS 面向對象spa

文章開始以前,仍是先吐槽一下:那些從學校步入社會的人們丫,多上點心,別每天還搞基,傷身又傷心,底子薄沒事,不願前進就是大事了,不是每一個頭頭都這麼好心,還一點一點給大家寫培訓文檔。

本文都是Mysql爲基礎。

 1. 數據類型

       1) 整數型

             tinyint

             int

             bigint

             當我問起int(20) 和int (12) 有區別嗎?(括號裏面是長度)全場沉默了......

       2) 數值型

             decimal

             當我問起decimal 10,當數值長度操過10了,會怎麼樣? 萬一是金融行業呢,你該咋辦? 全場沉默了......

      3) 字符型

             char

             varchar

            當我問起char(2) 和varchar(2)有區別嗎?(括號裏面是長度)全場沉默了......

            當char字段和varchar字段使用索引的時候,他們有區別嗎?全場沉默了......

            tinytext

     text

     mediumtext

            text最大的大小是多少?text字段能夠用索引嗎? 全場沉默了......

       4)時間型

              datetime

              timestamp

              datetime跟 timestamp有區別嗎?區別在哪裏? 全場繼續沉默了......

       5)枚舉型

              enum

              一位童鞋站起來問到,enum(Y,N) 和 char(1)有區別嗎?

2. 存儲引擎

     innodb

     myisam

     memory

     當我問起 innodb、  myisam有什麼區別的時候,一位技術牛人,站起來,一棍子打死一羣人,說直接用innodb就是了,如今的版本mysql默認都是推薦你使用innodb。

     若是真要提及來,就說到鎖了,這又是坑爹的話題。 仍是那位技術牛人高....

3. 名詞解析

      完整性

      冗餘

      實體

      實體的關係

      關係型

      某位童鞋直接站起來講道:都扔給老師。 真的是佩服那位健忘的童鞋,有健忘症真好,我這課我也丟給老師了。

4 實體 VS 類

     該篇開始,我要說個知識:如今不少公司都是由下往上開發,今天我給大家講的是從上往下開發。

     當時有位比較資深的人員就說到,由下往上都是老一輩人喜歡的,由於那段時間裏他們的思想沒受到面向對象編程的侵襲。

     從上往下是大家這羣90後樂意作的事。

     由下往上:數據庫關係--->代碼編程---->界面

     由上往下:界面--->代碼編程---->數據庫關係

     

    這是要逆天的存在,先無論是不是不是逆天,先看下面的實例:

  

class Person {
     public $name;
     public $age;
     public $sex;
     public $weight;
}

而後找了個童鞋轉了下數據結構

id  int name  varchar(50) age  int sex  enum("男","女") weight int 

這位童鞋確實給力。

而後我又寫了.

$person1 = new Person();
$person1->name = "張三';

$person2= new Person();
$person2->name = "李四';

這位童鞋又寫出了以下

id  int name  varchar(50) age  int sex  enum("男","女") weight int 

1 張三      
2 李四      

 

我相信當你看到這些,你應該知道發生了什麼了吧!

我繼續寫到:

class Person {
       public $name;
       public $age;

       public $orders = array(new Order(),new Order());
}

class Order {
       public $money;
       public $items = array(
           "手把手教你作關鍵詞匹配項目",
            "屌絲的坑人表單神器"
        );
}        

90後的小夥子很快就完成了:

order表:

order_id   person_id   money  

order_item表:

item_id   order_id   item_name  

看了這個我翻然大悟,原來如今的應屆生對類感興趣,對實體和實體與實體之間的聯繫免疫了。

我大悟了,不知道那些童鞋瞭解了沒有,畢竟這個培訓是給那些童鞋的。

 

5. 關係型 VS 面向對象

 面向對象 =>關係型 (90後太厲害了,不提了)

 

最終總結:課後,他們但願我下節課講解下數據庫如何優化,我只能吐槽下:尼瑪,連tinyint,char,varchar,索引,鎖都搞不懂就來學數據庫如何優化,這是要整哪樣?

固然我也對他們樂於要求感到高興,畢竟有需求就有動力。

 

固然那麼多爲何,仍是要解決的,靠什麼解決呃,我已經全丟給老師了,咋辦? 下面評論區確定有熱心人來吐槽這些問題的,放心吧.....

相關文章
相關標籤/搜索