偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

高效MySQL數(shù)據(jù)庫的正確編寫

數(shù)據(jù)庫 MySQL
我們今天主要向大家描述的是高效的MySQL數(shù)據(jù)庫的正確編寫方案,以下就是對編寫高效的MySQL數(shù)據(jù)庫的實際操作方案的具體描述。

以下的文章主要介紹的是編寫高效的MySQL數(shù)據(jù)庫的正確方案,我們首先是借助Apach、Perl與PHP以及Python等實際應(yīng)用工具,來構(gòu)建一個關(guān)于MySQL(和PHP搭配之最佳組合),其應(yīng)用時很容易的。

然而確保它們運行快速,則需要一點洞察力。本文就是你需要知道的東西。

MySQL(和PHP搭配之最佳組合)對于成為一個非??焖俚腗ySQL數(shù)據(jù)庫服務(wù)器有著當之無愧的名聲,它也非常容易設(shè)置和使用。隨著它作為網(wǎng)站后端數(shù)據(jù)庫得聲望日增,其效果在去年開始有明顯提高。但是很多MySQL(和PHP搭配之最佳組合)用戶更多地知道如何創(chuàng)建一個數(shù)據(jù)庫并編寫對它的查詢。就像成千上萬的人通過載閑暇時用Linux做實驗來學(xué)習(xí)Unix那樣,很多人通過玩MySQL(和PHP搭配之最佳組合)學(xué)習(xí)關(guān)系數(shù)據(jù)庫。這些MySQL(和PHP搭配之最佳組合)新手的大多數(shù)既沒有關(guān)系MySQL數(shù)據(jù)庫理論的背景,又沒有時間閱讀MySQL(和PHP搭配之最佳組合)手冊全文。

因此,我們決定研究某些方法,你可以用針對優(yōu)化性能來調(diào)節(jié)MySQL(和PHP搭配之最佳組合)。在讀完本文后,你將理解一些幫助你設(shè)計你的MySQL(和PHP搭配之最佳組合)數(shù)據(jù)庫和查詢的技術(shù),值得你的應(yīng)用很有效率。我們將假定你熟悉MySQL(和PHP搭配之最佳組合)和SQL基礎(chǔ),但不假定你有這兩方面的廣博知識。

只存儲你需要的信息

這聽上去是常識,但人們常常采取“廚房下水道”的方式進行數(shù)據(jù)庫設(shè)計。他們認為可能項要得每樣?xùn)|西都要存儲并設(shè)計數(shù)據(jù)庫保存所有者這些數(shù)據(jù)。你需要對你的需求現(xiàn)實些,并確定取確實需要什么信息。你常常能隨意產(chǎn)生一些數(shù)據(jù)而不把它存在MySQL數(shù)據(jù)庫表中。在這種情況下,從一個應(yīng)用開發(fā)者的角度看也有道理這樣做。

例如,在線目錄的產(chǎn)品表可能包含各種產(chǎn)品的名稱、介紹、尺寸、重量和價格。除了價格,你可能想存儲每個項目相關(guān)的稅和運輸成本。但實際上不必這樣做。首先稅和運輸成本可以方便地(由你的應(yīng)用或MySQL(和PHP搭配之最佳組合))計算出來。其次,如果稅和運輸成本改變了,你可能必須編寫必要的查詢更新每個產(chǎn)品記錄中的稅和運輸?shù)馁M率。

有時人們認為這太難不能在以后往MySQL數(shù)據(jù)庫表中加入字段,所以他們感覺不得不定義盡可能多的列。這是明顯的概念錯誤。在MySQL(和PHP搭配之最佳組合)中,你可以用ALTER TABLE命令方便地修改表定義以適應(yīng)你改變的需求。

例如,如果你突然認識到你需要給你的產(chǎn)品表增加一個級別列(可能你想允許用戶在你的目錄中給產(chǎn)品評級),你可以這樣做:

 

  1. ALTER TABLE products ADD rank INTEGER 

這給你的產(chǎn)品表增加了一個整數(shù)類型的級別列,你能用ALTER TABLE做什么的完整介紹參見MySQL(和PHP搭配之最佳組合)手冊。

只要求你需要的東西--要清晰

就像說“只存儲你需要的東西”那樣,這可能看來是常識,但這一點常常被忽視,為什么呢?因為在一個應(yīng)用開發(fā)時,需求經(jīng)常改變,所以很多查詢最終看來是這樣:

  1. SELECT * FROM sometable 

當你不能肯定你將需要哪一列時,要求所有列明顯是最省力的事情,然而隨著你的表不斷增大和修改,這可能變成一個性能問題。最好是在你的最初開發(fā)完成后再花些時間并確定你真正從你的查詢中需要什么:

  1. SELECT name, rank, description FROM products 

這帶來了一個相關(guān)的觀點,即代碼維護比性能更重要。大多數(shù)變成語言(Perl、Python、PHP、Java等)允許通過字段名和數(shù)字編號訪問一條查詢的結(jié)果,這意味著你可以訪問命名字段或字段0都可以得到相同的數(shù)據(jù)。

長期看,最好使用列名而不是其編號位置,為什么?因為一個表中或一條查詢中地列的相對位置可以改變。它們在表中可能因為重復(fù)使用ALTER TABLE而改變,它們在查詢中將因重寫了查詢而忘記更新應(yīng)用邏輯來匹配而改變。

當然,你仍然需要小心改變列名!但如果你使用列名而非標號位置,如列名改變,你可以用grep搜索源代碼或使用編輯器的搜索能力查找你需要修改的代碼。

以上的相關(guān)內(nèi)容就是對教你如何編寫高效的MySQL數(shù)據(jù)庫應(yīng)用的介紹,望你能有所收獲。

【編輯推薦】

  1. 對開源MySQL數(shù)據(jù)庫的介紹
  2. 對MySQL鏡像數(shù)據(jù)庫進行建立在linux下
  3. MySQL索引被破壞所產(chǎn)生的問題解決
  4. MySQL5字符集問題的解決方案
  5. MySQL啟動方法與實際操作步驟
責任編輯:佚名 來源: 博客園
相關(guān)推薦

2010-06-12 12:45:14

高效MySQL數(shù)據(jù)庫

2011-03-24 13:09:11

數(shù)據(jù)庫代碼

2010-06-01 12:51:23

MySQL數(shù)據(jù)庫

2010-05-11 10:12:50

mysql數(shù)據(jù)庫sql

2010-05-25 09:47:05

2010-05-26 11:21:00

MySQL數(shù)據(jù)庫操作

2010-06-10 17:19:05

MySQL數(shù)據(jù)庫

2010-06-07 17:38:41

安裝MySQL 數(shù)據(jù)庫

2010-06-09 10:47:36

MySQL數(shù)據(jù)庫集群

2010-06-04 11:21:41

連接MySQL數(shù)據(jù)庫

2010-06-10 17:05:28

2010-04-21 09:01:48

MySQL

2023-10-09 18:13:14

MySQL數(shù)據(jù)庫查詢

2010-06-11 13:22:32

2010-06-10 10:57:57

2010-06-11 17:24:47

MySQL鏡像數(shù)據(jù)庫

2010-05-05 10:19:19

Oracle數(shù)據(jù)導(dǎo)

2010-05-14 15:43:32

MySQL數(shù)據(jù)庫

2010-02-22 18:17:48

Python數(shù)據(jù)庫

2024-03-28 09:00:00

NoSQL數(shù)據(jù)庫
點贊
收藏

51CTO技術(shù)棧公眾號