無為

          無為則可為,無為則至深!

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            190 Posts :: 291 Stories :: 258 Comments :: 0 Trackbacks

          公告

          與有奉獻精神和分享精神的人做朋友!

          Locations of visitors to this page
          Subscribe by Anothr

          搜索

          •  

          積分與排名

          • 積分 - 582231
          • 排名 - 83

          最新評論

          閱讀排行榜

          MySQL DB是當今開源世界上最流行的free數據庫,它的蓬勃發展和廣泛的應用,奠定了當今主流數據庫市場的一席。

          一、數據庫簡介
          MySQL 是一個快速、多線程、多用戶和強壯的SQL數據庫服務器。

          對Unix和 OS/2 平臺,MySQL基本上是免費的;但對微軟平臺,你在30 天的試用期后必須獲得一個MySQL 許可證。詳見第三節 MySQL許可證和技術支持

          MySQL是一個真正的多用戶、多線程SQL數據庫服務器。SQL(結構化查詢語言)是世界上最流行的和標準化的數據庫語言。MySQL是以一個客戶機/服務器結構的實現,它由一個服務器守護程序mysqld和很多不同的客戶程序和庫組成。

          SQL是一種標準化的語言,它使得存儲、更新和存取信息更容易。例如,你能用SQL語言為一個網站檢索產品信息及存儲顧客信息,同時MySQL也足夠快和靈活以允許你存儲記錄文件和圖像。

          MySQL 主要目標是快速、健壯和易用。最初是因為我們需要這樣一個SQL服務器,它能處理與任何可不昂貴硬件平臺上提供數據庫的廠家在一個數量級上的大型數據庫,但速度更快,MySQL就開發出來。自1996年以來,我們一直都在使用MySQL,其環境有超過 40 個數據庫,包含 10,000個表,其中500多個表超過7百萬行,這大約有100 個吉字節(GB)的關鍵應用數據。

          MySQL建立的基礎是業已用在高要求的生產環境多年的一套實用例程。盡管MySQL仍在開發中,但它已經提供一個豐富和極其有用的功能集。

          二、MySQL 的主要特征

          下表描述MySQL一些重要的特征:

          • 使用核心線程的完全多線程。這意味著它能很容易地利用多CPU(如果有)。
          • C 、C++、 Eiffel 、 Java、 Perl、 PHP、Python、和 TCL  API。見20 MySQL 客戶工具和 API
          • 可運行在不同的平臺上,見4.2 MySQL支持的操作系統
          • 多種列類型:1、 2、 3、4、和 8 字節長度的有符號/無符號整數、FLOATDOUBLECHARVARCHARTEXTBLOBDATETIMEDATETIME、 TIMESTAMPYEARSETENUM類型。 見7.3 列類型
          • 利用一個優化的一遍掃描多重聯結(one-sweep multi-join)非常快速地進行聯結(join)。
          • 在查詢的SELECTWHERE部分支持全部運算符和函數,例如:
            mysql> SELECT CONCAT(first_name, " ", last_name) FROM tbl_name
                WHERE income/dependents > 10000 AND age > 30;
          • 通過一個高度優化的類庫實現SQL函數庫并且像他們能達到的一樣快速,通常在查詢初始化后不應該有任何內存分配。
          • 全面支持SQL的GROUP BYORDER BY子句,支持聚合函數( COUNT()COUNT(DISTINCT)AVG()STD()SUM()MAX()MIN() )。
          • 支持ANSI SQL的LEFT OUTER JOIN和ODBC語法
          • 你可以在同一查詢中混用來自不同數據庫的表。(與版本 3.22一樣 )。
          • 一個非常靈活且安全的權限和口令系統,并且它允許基于主機的認證。口令是安全的,因為當與一個服務器連接時,所有的口令傳送被加密。
          • ODBC for Windiws 95。所有的 ODBC 2 . 5 函數和其他許多函數。例如,你可以用Access連接你的 MySQL服務器。見16 MySQL  ODBC 支持
          • 具備索引壓縮的快速B樹磁盤表。
          • 每個表允許有16個索引。每個索引可以由1~16個列或列的一部分組成。最大索引長度是 256 個字節(在編譯MySQL時,它可以改變)。一個索引可以使用一個CHARVARCHAR字段的前綴。
          • 定長和變長記錄。
          • 用作臨時表的內存散列表。
          • 大數據庫處理。我們正在對某些包含 50,000,000 個記錄的數據庫使用MySQL。
          • 所有列都有缺省值,你可以用INSERT插入一個表列的子集,那些沒用明確給定值的列設置為他們的缺省值。
          • 為了可移植性使用 GNU  Automake , Autoconf 和libtool。
          • 用C和C++編寫,并用大量不同的編譯器測試。
          • 一個非常快速的基于線程的內存分配系統。
          • 沒有內存漏洞。用一個商用內存漏洞監測程序測試過(purify)。
          • 包括myisamchk,一個檢查、優化和修復數據庫表的快速實用程序,詳見13 維護 MySQL安裝
          • 全面支持ISO-8859-1  Latin1 字符集。例如,斯堪的納維亞的字符 @ringaccent{a}, @"a and @"o 在表和列名字被允許。
          • 所有數據以 ISO-8859-1  Latin1 格式保存。所有正常的字符串比較是忽略大小寫的。
          • 根據 ISO-8859-1  Latin1 字符集進行排序(目前瑞典語的方式)。通過在源代碼中增加排序順序數組可以改變它。為了理解一個更高級的排序例子,看一看捷克語的排序代碼。MySQL支持可在編譯時指定的很多不同的字符集。
          • 表和列的別名符合 SQL92 標準。
          • DELETEINSERTREPLACEUPDATE 返回有多少行被改變(受影響)。
          • 函數名不會與表或列名沖突。例如ABS是一個有效的列名字。對函數調用的唯一限制是函數名與隨后的“(”不能有空格。詳見7.31 MySQL對保留字很挑剔嗎?
          • 所有MySQL程序可以用選項--help-?獲得聯機幫助。
          • 服務器能為客戶提供多種語言的出錯消息,詳見9.1 MySQL支持哪些語言?
          • 客戶端使用TCP/IP 連接或Unix套接字(socket)或NT下的命名管道連接MySQL。
          • MySQL特有的SHOW命令可用來檢索數據庫、表和索引的信息,EXPLAIN命令可用來確定優化器如何解決一個查詢。

          三、SQL語法

                登錄MySQL服務器語法:mysql -h host_name -u user_name -p [password];
              1、創建、刪除數據庫 
                       CREATE DATABASE [IF NOT EXISTS] db_name
                       例如:create DATABASE Samp_db;
                       DROP DATABASE [IF EXISTS] db_name
                      例如:drop DATABASE Samp_db;

              2、創建表格
                        CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name [(create_definition,...)][table_options]               [select_statement];
                     例如:mysql> CREATE TABLE test (a INT NOT NULL AUTO_INCREMENT,
                                         ->        PRIMARY KEY (a), KEY(b))
                                         ->        TYPE=MyISAM SELECT b,c FROM test2;

              3、插入數據
                     INSERT [LOW_PRIORITY | DELAYED] [IGNORE]
                             [INTO] tbl_name [(col_name,...)]
                            VALUES ((expression | DEFAULT),...),(...),...
                              [ ON DUPLICATE KEY UPDATE col_name=expression, ... ]
                   or  INSERT [LOW_PRIORITY | DELAYED] [IGNORE]
                            [INTO] tbl_name [(col_name,...)]
                            SELECT ...
                  or  INSERT [LOW_PRIORITY | DELAYED] [IGNORE]
                              [INTO] tbl_name
                  SET col_name=(expression | DEFAULT), ...
                              [ ON DUPLICATE KEY UPDATE col_name=expression, ... ]
                  例如:mysql> INSERT INTO tbl_name (col1,col2) VALUES(15,col1*2);



          凡是有該標志的文章,都是該blog博主Caoer(草兒)原創,凡是索引、收藏
          、轉載請注明來處和原文作者。非常感謝。

          posted on 2007-04-07 15:28 草兒 閱讀(668) 評論(0)  編輯  收藏 所屬分類: Web Data Mining
          主站蜘蛛池模板: 长治市| 北宁市| 东海县| 白朗县| 雷波县| 福安市| 翁牛特旗| 新竹县| 庆云县| 沭阳县| 麻城市| 阜阳市| 桦南县| 嘉祥县| 浦县| 潮安县| 九寨沟县| 安龙县| 綦江县| 电白县| 锡林郭勒盟| 信丰县| 长治市| 丁青县| 敦化市| 龙海市| 乌鲁木齐市| 甘孜| 阳江市| 金昌市| 章丘市| 南部县| 正定县| 扎赉特旗| 华宁县| 固阳县| 孝昌县| 汝南县| 贵州省| 垫江县| 信丰县|