版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Mysql數(shù)據(jù)庫(kù)學(xué)習(xí)心得(1)由于工作中需要使用mysql,筆者通過(guò)網(wǎng)上學(xué)習(xí),動(dòng)手實(shí)踐,終于從一個(gè)"數(shù)據(jù)庫(kù)菜鳥(niǎo)"變成了能熟練操作mysql的"準(zhǔn)大蝦"了,:)?,F(xiàn)將學(xué)習(xí)心得整理如下。MySQL是完全網(wǎng)絡(luò)化的跨平臺(tái)關(guān)系型數(shù)據(jù)庫(kù)系統(tǒng),一個(gè)真正的多用戶、多線程SQL數(shù)據(jù)庫(kù)服務(wù)器,同時(shí)是具有客戶機(jī)/服務(wù)器體系結(jié)構(gòu)的分布式數(shù)據(jù)庫(kù)管理系統(tǒng)。它具有功能強(qiáng)、使 用簡(jiǎn)便、管理方便、運(yùn)行速度快、安全可靠性強(qiáng)等優(yōu)點(diǎn),用戶可利用許多語(yǔ)言編寫(xiě)訪問(wèn)MySQL數(shù)據(jù)庫(kù)的程序,對(duì)于中、小型應(yīng)用系統(tǒng)是非常理想的。除了支持標(biāo)準(zhǔn)的ANSI SQL語(yǔ)句,更重要的是,它還支持多種平臺(tái),而在Unix
2、系統(tǒng)上該軟件支持多線程運(yùn)行方式,從而能獲得相當(dāng)好的性能。對(duì)于不使用Unix的用戶,它可以在Windows NT系統(tǒng)上以系統(tǒng)服務(wù)方式運(yùn)行,或者在Windows 95/98系統(tǒng)上以普通進(jìn)程方式運(yùn)行。而在Unix/Linux系統(tǒng)上,MySQL支持多線程運(yùn)行方式,從而能獲得相當(dāng)好的性能,而且它是屬于開(kāi)放源代碼軟。MySQL是以一個(gè)客戶機(jī)/服務(wù)器結(jié)構(gòu)的實(shí)現(xiàn),它由一個(gè)服務(wù)器守護(hù)程序mysqld和很多不同的客戶程序和庫(kù)組成,MySQL的執(zhí)行性能非常高,運(yùn)行速度非??欤⒎浅H菀资褂?,是一個(gè)非常棒的數(shù)據(jù)庫(kù)。MySQL的官方發(fā)音是"My Ess Que Ell"(不是MY-SEQUEL )。
3、一.獲得MySQL首先必須下載MySQL。Mysql的官方網(wǎng)站是:,在中國(guó)的鏡像是:或者:,可以下載MySQL的穩(wěn)定版本3.22.32(截止到筆者發(fā)稿為止)。其版本名稱是mysql-shareware-3.22.32-win,不但免費(fèi)而且沒(méi)有所謂的"30天使用期限"。二.MySQL的安裝(一)在Win98/Winnt下的安裝到一個(gè)目錄,運(yùn)行Setup程序,會(huì)提示整個(gè)安裝的過(guò)程。它默認(rèn)安裝到c:mysql下,如果要安裝到其它目錄下還有改動(dòng)一些東西,作為初學(xué)者,可以先不管,以默認(rèn)的目錄安裝。好了,安裝后,進(jìn)入c:mysqlin目錄下,運(yùn)行mysqld-shareware.exe
4、文件在Win98下直接運(yùn)行,正常情況下,沒(méi)有什么提示信息。1。將下載后的文件解壓解壓到一個(gè)臨時(shí)目錄。2。點(diǎn)擊setup.exe安裝到c:mysql(默認(rèn))。3。將mysql_f拷貝到c:f,把文件中的#basedir=d:/mysql/改為basedir=c:mysql。4。進(jìn)入msdos,到目錄c:mysqlin。5。輸入mysqld-shareware -install,此為啟動(dòng)Mysql數(shù)據(jù)庫(kù)服務(wù)。6。mysqladmin-u root -p password新密碼,此為修改root用戶的密碼(原來(lái)默認(rèn)的密碼為空。) 7。輸入mysql -u root -p。8.接著,根據(jù)提示輸入新密碼
5、,正常情況下會(huì)出現(xiàn)幾行提示信息并出現(xiàn)提示符號(hào):Welcome to the MySQL monitor. Commands end with ; or g.Your MySQL connection id is 6268 to server version: 3.22.32 Type 'help' for help.mysql>到此,你已經(jīng)成功安裝了MySQL。 Mysql數(shù)據(jù)庫(kù)學(xué)習(xí)心得(2)- (二)在Windows2000下的安裝1。安裝時(shí)選默認(rèn)目錄:c:mysql2。把c:mysqlmy-f copy為c:f,并把c:mysqlibgwinb19.dll copy到
6、winntsystem32。 3。啟動(dòng)mysql的方法是:c:mysqlinmysqld-shareware -installnet start mysql這么簡(jiǎn)單,就可以啟動(dòng)了。4。更改超級(jí)用戶(root)的密碼:C:mysqlinmysql mysqlmysql> UPDATE user SET password=PASSWORD('your password')swheresuser='root'mysql> QUITC:mysqlinmysqladmin reload 使用命令C:mysqlinmysqlshow去看看檢測(cè)一下。在這里應(yīng)該顯示
7、:+-+| Databases |+-+| mysql | test |+-+看到這些信息這一步就證明沒(méi)問(wèn)題了再來(lái):C:mysqlinmysqlshow -user=root -password=your password mysql在這里應(yīng)該顯示:Database: mysql+-+| Tables |+-+| columns_priv | db | host | tables_priv | user |+-+一切搞定!5。C:mysqlinmysqladmin version status proc應(yīng)該可以看到這些版本信息的:mysqladmin Ver 8.0 Distrib 3.22.
8、32, for Win95/Win98 on i586TCX Datakonsult AB, by MontyServer version 3.22.32-shareware-debugProtocol version 10Connection localhost via TCP/IPTCP port 3306Uptime: 1 hour 29 min 30 secThreads: 1 Questions: 72 Slow queries: 0 Opens: 16 Flush tables: 1 Open tables: 0 Memory in use: 16423K Max memory u
9、sed: 16490KUptime: 5370 Threads: 1 Questions: 72 Slow queries: 0 Opens: 16 Flush tables: 1 Open tables: 0 Memory in use: 16423K Max memory used: 16490K+-+-+-+-+-+-+-+-+| Id | User | Host | db | Command | Time | State | Info |+-+-+-+-+-+-+-+-+| 35 | ODBC | localhost | | Query | 0 | | show processlist
10、 |+-+-+-+-+-+-+-+-+接著,用show databases命令可以將安裝的數(shù)據(jù)庫(kù)列出來(lái):mysql> show databases;你就可以看到:+-+| Database |+-+| mysql | test |+-+2 rows in set (0.00 sec)如果一切正常的話,那說(shuō)明MySQL可以完全工作了!如果要退出程序,輸入:exitmysql> exit;Bye Mysql數(shù)據(jù)庫(kù)學(xué)習(xí)心得(3)- 三.Mysql常識(shí)(一)字段類型1.INT(M) 正常大小整數(shù)類型2.DOUBLE(M,D) ZEROFILL 正常大小(雙精密)浮點(diǎn)數(shù)字類型3.DATE 日
11、期類型。支持的范圍是'1000-01-01'到'9999-12-31'。MySQL以'YYYY-MM-DD'格式來(lái)顯示DATE值,但是允許你使用字符串或數(shù)字把值賦給DATE列4.CHAR(M) 定長(zhǎng)字符串類型,當(dāng)存儲(chǔ)時(shí),總是是用空格填滿右邊到指定的長(zhǎng)度5.BLOB TEXT BLOB或TEXT類型,最大長(zhǎng)度為65535(216-1)個(gè)字符。6.VARCHAR變長(zhǎng)字符串類型,最常用的類型。(二)基本操作1:顯示數(shù)據(jù)庫(kù)mysql>SHOW DATABASES; 2:當(dāng)前選擇的數(shù)據(jù)庫(kù),mysql> SELECT DATABASE(); +-
12、+ | DATABASE() | +-+ | test | +-+ 3.當(dāng)前數(shù)據(jù)庫(kù)包含的表信息:mysql> SHOW TABLES; +-+ | Tables in test | +-+ | mytable1 | | mytable2 | +-+ 4.獲取表結(jié)構(gòu)mysql> desc mytable1; +-+-+-+-+-+-+ | Field | Type | Null | Key | Default | Extra | +-+-+-+-+-+-+ | s1 | varchar(20) | YES | | NULL | | +-+-+-+-+-+-+ 5.創(chuàng)建表表是數(shù)據(jù)庫(kù)的最
13、基本元素之一,表與表之間可以相互獨(dú)立,也可以相互關(guān)聯(lián)。創(chuàng)建表的基本語(yǔ)法如下:create table table_name (column_name datatype identity |null|not null, ) 其中參數(shù)table_name和column_name必須滿足用戶數(shù)據(jù)庫(kù)中的識(shí)別器(identifier)的要求,參數(shù)datatype是一個(gè)標(biāo)準(zhǔn)的SQL類型或由用戶數(shù)據(jù)庫(kù)提供的類型。用戶要使用non-null從句為各字段輸入數(shù)據(jù)。create table還有一些其他選項(xiàng),如創(chuàng)建臨時(shí)表和使用select子句從其他的表中讀取某些字段組成新表等。還有,在創(chuàng)建表是可用PRIMARY K
14、EY、KEY、INDEX等標(biāo)識(shí)符設(shè)定某些字段為主鍵或索引等。書(shū)寫(xiě)上要注意:在一對(duì)圓括號(hào)里的列出完整的字段清單。字段名間用逗號(hào)隔開(kāi)。字段名間的逗號(hào)后要加一個(gè)空格。最后一個(gè)字段名后不用逗號(hào)。所有的SQL陳述都以分號(hào)""結(jié)束。例:mysql>CREATE TABLE guest (name varchar(10),sex varchar(2),age int(3),career varchar(10); 6.創(chuàng)建索引索引用于對(duì)數(shù)據(jù)庫(kù)的查詢。一般數(shù)據(jù)庫(kù)建有多種索引方案,每種方案都精于某一特定的查詢類。索引可以加速對(duì)數(shù)據(jù)庫(kù)的查詢過(guò)程。創(chuàng)建索引的基本語(yǔ)法如下:create ind
15、ex index_name on table_name (col_name(length),. ) 例:mysql> CREATE INDEX number ON guest (number(10);7.執(zhí)行查詢查詢是使用最多的SQL命令。查詢數(shù)據(jù)庫(kù)需要憑借結(jié)構(gòu)、索引和字段類型等因素。大多數(shù)數(shù)據(jù)庫(kù)含有一個(gè)優(yōu)化器(optimizer),把用戶的查詢語(yǔ)句轉(zhuǎn)換成可選的形式,以提高查詢效率。值得注意的是MySQL不支持SQL92標(biāo)準(zhǔn)的嵌套的where子句,即它只支持一個(gè)where子句。其基本語(yǔ)法如下:SELECT STRAIGHT_JOIN SQL_SMALL_RESULT SQL_BIG_RE
16、SULT HIGH_PRIORITY DISTINCT | DISTINCTROW | ALL select_expression,. INTO OUTFILE | DUMPFILE '' export_options FROM table_references WHERE where_definition GROUP BY col_name,. HAVING where_definition ORDER BY unsigned_integer | col_name | formula ASC | DESC ,. LIMIT offset, rows PROCEDURE pro
17、cedure_name 其中where從句是定義選擇標(biāo)準(zhǔn)的地方,where_definition可以有不同的格式,但都遵循下面的形式:字段名操作表達(dá)式字段名操作字段名在第一種形式下,標(biāo)準(zhǔn)把字段的值與表達(dá)式進(jìn)行比較;在第二種形式下,把兩個(gè)字段的值進(jìn)行比較。根據(jù)所比較的數(shù)據(jù)類型,search_condition中的操作可能選以下幾種:=檢查是否相等!=檢查是否不等> (或>=)檢查左邊值是否大于(或大于等于)右邊值< (或<=)檢查左邊值是否小于(或小于等于)右邊值not between檢查左邊值是否在某個(gè)范圍內(nèi)not in檢查左邊是否某個(gè)特定集的成員not like檢查左
18、邊是否為右邊的子串is not null檢查左邊是否為空值在這里,可以用通配符_代表任何一個(gè)字符,%代表任何字符串。使用關(guān)鍵字、和可以生成復(fù)雜的詞,它們運(yùn)行檢查時(shí)使用布爾表達(dá)式的多重標(biāo)準(zhǔn)集。例:mysql> selec, t2.salary from employee AS t1, info A = ; mysql> select college, region, seed from tournament ORDER BY region, seed; mysql> select col_name from tbl_nameswherescol_name >
19、 0; 8.改變表結(jié)構(gòu)在數(shù)據(jù)庫(kù)的使用過(guò)程中,有時(shí)需要改變它的表結(jié)構(gòu),包括改變字段名,甚至改變不同數(shù)據(jù)庫(kù)字段間的關(guān)系。可以實(shí)現(xiàn)上述改變的命令是alter,其基本語(yǔ)法如下:alter table table_name alter_spec , alter_spec . 例:mysql> alter table dbname add column userid int(11) not null primary key auto_increment;這樣,就在表dbname中添加了一個(gè)字段userid,類型為int(11)。9.修改表中數(shù)據(jù)在使用數(shù)據(jù)庫(kù)過(guò)程中,往往要修改其表中的數(shù)據(jù),比如往表中添
20、加新數(shù)據(jù),刪除表中原有數(shù)據(jù),或?qū)Ρ碇性袛?shù)據(jù)進(jìn)行更改。它們的基本語(yǔ)法如下:數(shù)據(jù)添加:insert into table_name (column(s) values (expression(s) 例:mysql>insertsintosmydatabase values('php','mysql','asp','sqlserver','jsp','oracle'); Mysql數(shù)據(jù)庫(kù)學(xué)習(xí)心得(4)-10.表的數(shù)據(jù)更新(1)一次修改一個(gè)字段,再次注意語(yǔ)法。文本需要加引號(hào)但數(shù)字不要。mysql&g
21、t;update table01 set field03='new info'swheresfield01=1; Query OK, 1 row affected (0.00 sec) (2)一次改變多個(gè)字段,記住在每一個(gè)更新的字段間用逗號(hào)隔開(kāi)。mysql>update table01 set field04=19991022, field05=062218swheresfield01=1; Query OK, 1 row affected (0.00 sec) (3)一次更新多個(gè)數(shù)據(jù)mysql>update table01 set field05=152901sw
22、heresfield04>19990101; Query OK, 3 rows affected (0.00 sec) 11.刪除數(shù)據(jù)mysql>delete from table01swheresfield01=3; Query OK, 1 row affected (0.00 sec) 12.導(dǎo)入數(shù)據(jù)庫(kù)表(1)創(chuàng)建.sql文件(2)先產(chǎn)生一個(gè)庫(kù)如auction.c:mysqlin>mysqladmin -u root -p creat auction,會(huì)提示輸入密碼,然后成功創(chuàng)建。(3)導(dǎo)入auction.sql文件c:mysqlin>mysql -u root -
23、p auction < auction.sql。通過(guò)以上操作,就可以創(chuàng)建了一個(gè)數(shù)據(jù)庫(kù)auction以及其中的一個(gè)表auction。13.mysql數(shù)據(jù)庫(kù)的授權(quán)mysql>grant select,insert,delete,create,dropon *.* (或test.*/user.*/.)to用戶名localhostidentified by '密碼';如:新建一個(gè)用戶帳號(hào)以便可以訪問(wèn)數(shù)據(jù)庫(kù),需要進(jìn)行如下操作:mysql> grant usage-> ON test.*-> TO testuserlocalhost;Query OK, 0 r
24、ows affected (0.15 sec)此后就創(chuàng)建了一個(gè)新用戶叫:testuser,這個(gè)用戶只能從localhost連接到數(shù)據(jù)庫(kù)并可以連接到test數(shù)據(jù)庫(kù)。下一步,我們必須指定testuser這個(gè)用戶可以執(zhí)行哪些操作:mysql> GRANT select, insert, delete,update-> ON test.*-> TO testuserlocalhost;Query OK, 0 rows affected (0.00 sec)此操作使testuser能夠在每一個(gè)test數(shù)據(jù)庫(kù)中的表執(zhí)行SELECT,INSERT和DELETE以及UPDATE查詢操作?,F(xiàn)在
25、我們結(jié)束操作并退出MySQL客戶程序:mysql> exitBye 14.授權(quán)MySQL用戶密碼MySQL數(shù)據(jù)庫(kù)的默認(rèn)用戶名為"root"(MS SQL Server的sa相似),密碼默認(rèn)為空。在DOS提示符(注意,不是mysql提示符)下輸入c:mysqlin>"mysqladmin -u root -p password newpassword回車后會(huì)提示你輸入原來(lái)的密碼,由于原來(lái)密碼為空,直接回車,root用戶的密碼便改為"newpassword"了。 Mysql數(shù)據(jù)庫(kù)學(xué)習(xí)心得(5)- 四.安裝phpMyAdminMySQL圖
26、形界面管理器phpMyAdmin是一套以php3寫(xiě)成,針對(duì)MySQL數(shù)據(jù)庫(kù)系統(tǒng)的Web管理界面。它可以很方便地以圖形化界面,來(lái)對(duì)MySQL數(shù)據(jù)庫(kù)里的字段、數(shù)據(jù)進(jìn)行增加、刪除等的動(dòng)作,更可以做數(shù)據(jù)庫(kù)本身的增刪管理;phpMyAdmin可以管理整個(gè)MySQL服務(wù)器(需要超級(jí)用戶),也可以管理單個(gè)數(shù)據(jù)庫(kù)。另外,您也可以通過(guò)使用這個(gè)圖形化界面來(lái)學(xué)習(xí)SQL正確的 語(yǔ)法,直至熟練掌握。那要等到你看過(guò)MySQL手冊(cè)中相關(guān)的部分。你可以到去下載最新的版本。首先,將phpMyAdmin軟件包解到一個(gè)目錄下。1.修改文檔config.inc.php3。將原來(lái)的設(shè)定:§cfgServers1'ho
27、st' = '' / MySQL hostname §cfgServers1'port' = '' / MySQL port - leave blank fordefault port §cfgServers1'adv_auth' = false; / Use advanced authentication? §cfgServers1'stduser' = '' / MySQL standard user (only needed with advanced a
28、uth) §cfgServers1'stdpass' = '' / MySQL standard password (only needed with advanced auth) §cfgServers1'user' = '' / MySQL user (only needed withbasic auth) §cfgServers1'password' = '' / MySQL password (only needed with basic auth) §
29、;cfgServers1'only_db' = '' / If set to a db-name, only this db is accessible §cfgServers1'verbose' = '' / Verbose name for this host -leave blank to show the hostname : : require("english.inc.php3");修改成:§cfgServers1'host' = 'MySQL Server的hostname' /填入您的MySQL Server的主機(jī)名稱§cfgServers1'port' = '' /填入連結(jié)MySQL的port,不填則以預(yù)設(shè)的port進(jìn)行連結(jié)§cfgServers1'adv_auth' = true; /改成true則進(jìn)入phpMyAdmin必須先身份認(rèn)證§cfgServers1'stduser' = 'root
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 專業(yè)化煤炭銷售服務(wù)協(xié)議樣式(2024版)版B版
- 2024年汽車貸款擔(dān)保協(xié)議
- 不可撤銷貸款代理合同2024版版B版
- 韓束知識(shí)培訓(xùn)課件
- 《珍惜生命安全教育》課件
- 2024房屋購(gòu)買協(xié)議3篇
- 2024擔(dān)保合同范本借款反擔(dān)保協(xié)議
- 2025年度瓷磚原材料進(jìn)口合同規(guī)范3篇
- 2025年新型環(huán)保門(mén)窗產(chǎn)品銷售代理合同3篇
- 攝影中心前臺(tái)接待員總結(jié)
- GB/T 15166.2-2023高壓交流熔斷器第2部分:限流熔斷器
- 百分?jǐn)?shù)的認(rèn)識(shí)說(shuō)課稿(課堂)課件
- 老年人能力評(píng)估標(biāo)準(zhǔn)解讀講義課件
- 材料報(bào)價(jià)三家對(duì)比表
- 2024年國(guó)家公務(wù)員考試公共基礎(chǔ)知識(shí)全真模擬試題及答案(共四套)
- 焊接工序首件檢驗(yàn)記錄表
- (通橋【2018】8370)《鐵路橋梁快速更換型伸縮縫安裝圖》
- 針灸的作用原理和治療原則
- 標(biāo)準(zhǔn)輔助航空攝影技術(shù)規(guī)范
- 項(xiàng)目經(jīng)理部組織機(jī)構(gòu)
- 某辦公樓裝飾工程監(jiān)理大綱方案
評(píng)論
0/150
提交評(píng)論