版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、MySQL講解基礎知識MySQL講解基礎知識目錄設計數據庫1MySQL的介紹和安裝2SQL語句實現增刪改查3MySQL的應用4目錄設計數據庫1MySQL的介紹和安裝2SQL語句實現增刪改層次模型面向對象模型網狀模型關系模型數據庫管理系統(tǒng)常用的數學模型 層次模型面向對象模型網狀模型關系模型數據庫管理設計數據庫 數據庫(Database或DB)是存儲、管理數據的容器。數據永遠是數據庫的核心。目前關系數據庫管理系統(tǒng)已占據主導地位 。MySQL和Microsoft SQL Server2000也是基于關系模型的。它的主要特征是使用關系來表示實體以及實體之間的聯系。E-R圖設計的質量直接決定了關系數據庫
2、設計的質量。設計數據庫 數據庫(Database或DB)是存儲、管理 實體不是某一個具體事物,而是某一種類別所有事物的統(tǒng)稱。 屬性通常用于表示實體的某種特征,也可以使用屬性表示實體間關系的特征實體屬性屬性實體和屬性 實體不是某一個具體事物,而是某一種類別所有事物的統(tǒng)稱 E-R圖中的關系用于表示實體間存在的聯系,在E-R圖中,實體間的關系通常使用一條線段表示。 E-R圖中實體間的關系是雙向的。關系關系關系 E-R圖中的關系用于表示實體間存在的聯系,在E-R圖1為E-R圖中的每個實體建立一張表,實體命名應唯一,實體型和聯系的屬性命名都應唯一。2為每張表定義一個主鍵(如果需要,可以向表添加一個沒有實
3、際意義的字 段作為該表的主鍵) 3增加外鍵表示一對多關系。4建立新表表示多對多關系。5為字段選擇合適的數據類型。6定義約束條件(如果需要)。7評價關系的質量,并進行必要的改進。關系數據庫設計關系數據庫設計開源MySQL源代碼免費下載簡單MySQL體積小,便于安裝MySQL性能足夠與商業(yè)數據庫媲美功能強大MySQL提供的功能足夠與商業(yè)數據庫媲美性能優(yōu)越MySQL數據庫的優(yōu)勢開源MySQL源代碼免費下載簡單MySQL體積小,便于安裝MMySQL數據庫的優(yōu)勢性能高效MySQL是一個單進程多線程、支持多用戶、基于客戶機/服務器(Client/Server簡稱C/S)的關系數據庫管理系統(tǒng) 跨平臺支持支持
4、多用戶開源簡單易用MySQL數據庫的優(yōu)勢性能高效MySQL是一個單進程多線程、 MySQL 為關系型數據庫(Relational Database Management System), 這種所謂的關系型可以理解為表格的概念, 一個關系型數據庫由一個或數個表格組成, 如圖所示的一個表格:MySQL的相關概念介紹 MySQL 為關系型數據庫(Relation表頭(header): 每一列的名稱;列(row): 具有相同數據類型的數據的集合;行(col): 每一行用來描述某個人/物的具體信息;值(value): 行的具體信息, 每個值必須與該列的數據類型相同;鍵(key): 表中用來識別某個特定的
5、人物的方法, 鍵的值在當前列中具有唯一性。MySQL的相關概念介紹表頭(header): 每一列的名稱;MySQL的相關概念介MySQL數據庫的安裝 ThemeGallery is a Design Digital Content & Contents mall developed by Guild Design Inc.安裝到網上下載MySQL安裝包,按照教程進行安裝。在cmd命令窗口中輸入“mysql -hlocalhosturoot-p”,接著在出現的提示中輸入用戶的密碼。安裝配置常用的參數是port(默認值是3306)。常用的參數還有”basedir”,”datadir”,”chara
6、cter-set-server”,”sql_mode”,”max_connections”以及“default_storage_engine”等??蛻魴CCMD命令提示符窗口WEB瀏覽器(例如phpMyAdmin)第三方客戶機程序(例如MySQL-Front、MySQLManager for MySQL等)MySQL數據庫的安裝 ThemeGallery is a配置步驟:1. 將下載的 mysql-noinstall-5.1.69-win32.zip 解壓至需要安裝的位置, 如: C:Program Files;2. 在安裝文件夾下找到 my-small.ini 配置文件, 將其重命名為 my
7、.ini , 打開進行編輯, 在 client 與 mysqld 下均添加一行:default-character-set = gbk3. 打開 Windows 環(huán)境變量設置, 新建變量名 MYSQL_HOME , 變量值為 MySQL 安裝目錄路徑, 這里為 C:Program Filesmysql-5.1.69-win324. 在 環(huán)境變量 的 Path 變量中添加;%MYSQL_HOME%bin;5. 安裝 MySQL 服務, 打開Windows命令提示符, 執(zhí)行命令:mysqld -install MySQL -defaults-file=my.ini提示Service success
8、fully installed.表示成功;Windows下MySQL的配置配置步驟:Windows下MySQL的配置 與常規(guī)的腳本語言類似, MySQL 也具有一套對字符、單詞以及特殊符號的使用規(guī)定, MySQL 通過執(zhí)行 SQL 腳本來完成對數據庫的操作, 該腳本由一條或多條MySQL語句(SQL語句 + 擴展語句)組成, 保存時腳本文件后綴名一般為 .sql。在控制臺下, MySQL 客戶端也可以對語句進行單句的執(zhí)行而不用保存為.sql文件。1、標識符 標識符用來命名一些對象, 如數據庫、表、列、變量等, 以便在腳本中的其他地方引用。MySQL標識符命名規(guī)則稍微有點繁瑣, 這里我們使用萬能
9、命名規(guī)則: 標識符由字母、數字或下劃線(_)組成, 且第一個字符必須是字母或下劃線。 對于標識符是否區(qū)分大小寫取決于當前的操作系統(tǒng), Windows下是不敏感的, 但對于大多數 linuxunix 系統(tǒng)來說, 這些標識符大小寫是敏感的。MySQL腳本的基本組成 與常規(guī)的腳本語言類似, MySQL 也具有一2、關鍵字: MySQL的關鍵字眾多, 這里不一一列出, 這些關鍵字有自己特定的含義, 盡量避免作為標識符。3、語句: MySQL語句是組成MySQL腳本的基本單位, 每條語句能完成特定的操作, 他是由 SQL 標準語句 + MySQL 擴展語句組成。4、函數: MySQL函數用來實現數據庫操
10、作的一些高級功能, 這些函數大致分為以下幾類: 字符串函數、數學函數、日期時間函數、搜索函數、加密函數、信息函數。MySQL腳本的基本組成2、關鍵字:MySQL腳本的基本組成MySQL有三大類數據類型, 分別為數字、日期時間、字符串, 這三大類中又更細致的劃分了許多子類型:數字類型整數: tinyint、smallint、mediumint、int、bigint浮點數: float、double、real、decimal日期和時間: date、time、datetime、timestamp、year字符串類型字符串: char、varchar文本: tinytext、text、mediumte
11、xt、longtext二進制(可用來存儲圖片、音樂等): tinyblob、blob、mediumblob、longblobMySQL中的數據類型MySQL有三大類數據類型, 分別為數字、日期時間、字符串MySQL服務的啟動、停止與卸載在 Windows 命令提示符下運行:啟動:net start MySQL 停止:net stop MySQL 卸載:sc delete MySQL使用MySQL數據庫登錄到MySQL當 MySQL 服務已經運行時, 我們可以通過MySQL自帶的客戶端工具登錄到MySQL數據庫中, 首先打開命令提示符, 輸入以下格式的命名:mysql -h 主機名 -u 用戶名
12、 -p-h :該命令用于指定客戶端所要登錄的MySQL主機名, 登錄當前機器該參數可以省略;-u :所要登錄的用戶名;-p :告訴服務器將會使用一個密碼來登錄, 如果所要登錄的用戶名密碼為空, 可以忽略此選項。MySQL服務的啟動、停止與卸載使用MySQL數據庫登錄到M使用MySQL數據庫以登錄剛剛安裝在本機的MySQL數據庫為例, 在命令行下輸入 mysql -u root -p 按回車確認, 如果安裝正確且MySQL正在運行, 會得到以下響應:Enter password:若密碼存在, 輸入密碼登錄, 不存在則直接按回車登錄, 按照本文中的安裝方法, 默認 root 賬號是無密碼的。登錄成
13、功后你將會看到 Welecome to the MySQL monitor. 的提示語。然后命令提示符會一直以 mysql 加一個閃爍的光標等待命令的輸入, 輸入 exit 或 quit 退出登錄。注意:MySQL語句以分號(;)作為語句的結束, 若在語句結尾不添加分號時, 命令提示符會以 - 提示你繼續(xù)輸入(有個別特例, 但加分號是一定不會錯的);使用MySQL數據庫以登錄剛剛安裝在本機的MySQL數據庫為結構化查詢語言SQL 4結構化查詢語言(Structured Query Language或簡稱為SQL)是一種應用最為廣泛的關系數據庫語言。使用MySQL命令show databases
14、;即可查看MySQL服務實例上所有的數據庫 。刪除student數據庫,使用SQL語句drop database student;結構化查詢語言SQL 4結構化查詢語言(Structured結構化查詢語言SQL 4表是數據庫中最為重要的數據庫對象。 使用SQL語句“create table表名”即可創(chuàng)建一個數據庫表。例如: use HB_HNEMP2014;set default_storage_engine=InnoDB;create table my_table(today datetime,name char(20);/其中HB_HNEMP2014為數據庫名使用SQL語句:drop ta
15、ble table_name;即可刪除名為table_name的表。刪除表后,MySQL服務實例會自動刪除該表結構定義文件(例如second_table.frm文件),以及數據、索引信息。該命令慎用! 結構化查詢語言SQL 4表是數據庫中最為重要的數據庫對象。 SQL語句現實增、刪、改、查使用insert語句插入新記錄。語法格式如下:insert into 表名 (字段列表) values (值列表)例如:在數據庫中增加一行:Insert into HB_HNEMP2015.SysUser( Personnel_ID ,Code ,Cname ,Password ,PasswordFormat
16、 ,PasswordSalt ,IsActive ,Description) values(SM201523380090,hello,李明明,000000,0,null,1,武漢理工大學學生)SQL語句現實增、刪、改、查使用insert語句插入新記錄。SQL語句現實增、刪、改、查在insert語句中使用select子句可以將源表的查詢結果添加到目標表中,語法格式如下:insert into 目標表名(字段列表1) select (字段列表2) from 源表 where 條件表達式注意:字段列表1與字段列表2的字段個數必須相同,且對應字段的數據類型盡量保持一致。如果源表與目標表的表結構完全相同
17、,“(字段列表1)”可以省略。SQL語句現實增、刪、改、查在insert語句中使用seleSQL語句現實增、刪、改、查使用delete刪除表記錄。語法格式如下:delete from 表名 where 條件表達式說明:如果沒有指定where子句,那么該表的所有記錄都將被刪除,但表結構依然存在。例如:在數據庫中刪除一行信息:delete from SysUser where Personnel_ID=SM201523380090SQL語句現實增、刪、改、查使用delete刪除表記錄。語法SQL語句現實增、刪、改、查使用update更改表記錄。語法格式如下:update 表名set 字段名1=值1
18、,字段名2=值2,. ,字段名n=值nwhere 條件表達式where子句指定了表中的哪些記錄需要修改。若省略了where子句,則表示修改表中的所有記錄。set子句指定了要修改的字段以及該字段修改后的值。例如:在數據庫中修改信息:Update SysUser set Cname=王明明 WHERE Personnel_ID=SM201523380090SQL語句現實增、刪、改、查使用update更改表記錄。語法使用select語句查詢表記錄,語法格式如下:select 字段列表from 數據源 where條件表達式 group by 分組字段 having條件表達式 order by 排序字段
19、 asc | desc WHERE語句在GROUP BY語句之前;SQL會在分組之前計算WHERE語句,HAVING語句在GROUP BY語句之后;SQL會在分組之后計算HAVING語句123使用謂詞限制記錄的行數使用select子句指定字段列表使用from子句指定數據源4多表連接SQL語句現實增、刪、改、查使用select語句查詢表記錄,語法格式如下:123使用謂詞select語句的查詢結果集的排序由數據庫系統(tǒng)動態(tài)確定,往往是無序的,order by子句用于對結果集排序。在select語句中添加order by子句,就可以使結果集中的記錄按照一個或多個字段的值進行排序,排序的方向可以是升序(
20、asc)或降序(desc)。order by子句的語法格式如下。order by 字段名1 asc|desc ,字段名n asc|desc SQL語句現實增、刪、改、查select語句的查詢結果集的排序由數據庫系統(tǒng)動態(tài)確定,往往SQL語句現實增、刪、改、查實例例1:在數據庫中查詢表中一行所有信息:例2:在數據庫中查詢某些信息:例3:查詢一共有多少數據:SELECT * FROM HB_HNEMP2015.SysUser WHERE Cname=王明明 SELECT Personnel_ID ,Code ,Cname ,Password FROM HB_HNEMP2015.SysUser lim
21、it 3select COUNT(*)from SysUserSQL語句現實增、刪、改、查實例例1:在數據庫中查詢表中一行SQL語句現實增、刪、改、查實例例4:鏈接并查詢兩個表的列:例5:按日期查詢:SELECT SysUser.Personnel_ID ,Code ,Cname ,Password FROM HB_HNEMP2015.SysUser,HB_HNEMP2015.SysUserRole where LENGTH(Code)=5 and SysUser.Personnel_ID=SysUserRole.Personnel_IDselect * from Incident where
22、 FindTime2015-04-22 00:00:00.000 and FindTime2015-05-18 00:00:00.000SQL語句現實增、刪、改、查實例例4:鏈接并查詢兩個表的列:SQL語句現實增、刪、改、查實例例6:在數據庫中查找表中密碼為jt開頭的用戶信息:例7:將表中信息降序排列:select Personnel_ID ,Code ,Cname ,Password from SysUser where Password=123456 and Code like jt%select*from SysUser order by Personnel_ID descSQL語句現實
23、增、刪、改、查實例例6:在數據庫中查找表中密碼 group by子句將查詢結果按照某個字段(或多個字段)進行分組(字段值相同的記錄作為一個分組。 group by子句通常與聚合函數一起使用,語法格式如下:group by 字段列表 having條件表達式 with rollup group_concat()函數的功能是將集合中的字符串連接起來,此時group_concat()函數的功能與字符串連接函數concat()的功能相似。123group by子句與having子句group by子句與聚合函數group by子句與group_concat()函數4group by子句與with rol
24、l up選項使用group by子句對記錄分組統(tǒng)計 group by子句將查詢結果按照某個字段(或多個SQL語句現實增、刪、改、查實例例8:學會用GROUP BY 和having: char_length()可以計算中文長度,而length()計算的是普通字符的長度 select SysUser.Personnel_ID ,Code ,Cname from SysUser ,SysUserRole where Code like x% and Password=123456 and SysUser.Personnel_ID=SysUserRole.Personnel_ID Group by S
25、ysUser.Personnel_ID ,Code ,Cname Having CHAR_LENGTH(Cname)3 order by SysUser.Personnel_ID descSQL語句現實增、刪、改、查實例例8:學會用GROUP BYSQL語句現實增、刪、改、查實例例9:查詢表中密碼最長的用戶: select SysUser.Personnel_ID ,Code ,Cname ,MAX(length(Code) as length from SysUser ,SysUserRole where Code like x% and Password=123456 and SysUser.Personnel_ID=SysUserRole.Personnel_ID Group by SysUser.Personnel_ID ,Code ,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 木地板安裝合同范例
- 電源材料采購合同范例
- 簡約勞動合同范例
- 義診合作協(xié)議合同范例
- 抖音短編劇合同范例
- 完整版100以內加減法混合運算4000道112
- 鐵門關職業(yè)技術學院《計算機控制技術》2023-2024學年第一學期期末試卷
- 小學數學二年級第二學期口算計算共5073道題
- 小學數學二年級第二學期口算計算共5083道題
- 小學數學二年級第二學期口算計算共5093道題
- 2024 年度校長述職報告:堅守教育初心鑄就卓越未來
- 創(chuàng)業(yè)人生學習通超星期末考試答案章節(jié)答案2024年
- 工業(yè)項目投資估算及財務評價附表(有計算公式)
- 2024年公路造價師繼續(xù)教育在線自測答案共科
- 中國少數民族文化智慧樹知到期末考試答案章節(jié)答案2024年云南大學
- 唐宋名家詞智慧樹知到期末考試答案2024年
- 江蘇省常州市2023-2024學年八年級上學期期末道德與法治試題(含答案解析)
- 無心磨的導輪及心高調整講解
- 乳腺癌化療的不良反應級處理ppt課件
- 艾灸療法(課堂PPT)
- (完整版)劍橋少兒英語預備級單詞表
評論
0/150
提交評論