MySQL基礎(chǔ)操作

Windows下配置PHP支持mysql

在php.ini文件中找到extension=php_mysql.dll
和extension=php_mysqli.dll喂分,如果之前有分號(hào)废睦,表明被注釋,去掉分號(hào)即可;如果沒有這兩句需要手動(dòng)輸入

unset()釋放變量

可變變量
PHP中變量名可以是變量请梢。
$catlogue = "city";
$$catlogue = "Zhengzhou";
第二句相當(dāng)于$city = "Zhengzhou";
在輸出可變變量時(shí)需要注意(使用大括號(hào)表明$cityname解釋出來的值也要作為一個(gè)變量進(jìn)行解釋)
$Reno = 360000;
$Pasadena = 138000;
$cityname = "Reno";
echo "The size of $cityname is ${$cityname}";
$cityname = "Pasadena";
echo "The size of $cityname is ${$cityname}";
輸出結(jié)果如下:
The size of Reno is 360000
The size of Pasadena is 138000
如果沒有大括號(hào),會(huì)輸出
The size of Reno is $Reno

輸出變量值可以使用以下3個(gè)句子
echo
print_r
var_dump //同時(shí)輸出變量類型和變量值

定義常量
define("constantname","constantvalue");

PHP8種數(shù)據(jù)類型
Integer: 整數(shù)
Floating-point number: 浮點(diǎn)數(shù)
String: 字符串
Boolean: 布爾值
Array: 數(shù)組
Object: 對(duì)象
Resource: A reference that identifies a connection
NULL: A value that represents no value

PHP內(nèi)置SQLite

MySQL查詢語句
CREATE
DROP
ALTER
SHOW
INSERT
LOAD
SELECT
UPDATE
DELETE

use databasename
show databasename
quit

創(chuàng)建和維護(hù)MySQL用戶賬戶
備份數(shù)據(jù)
更新MySQL

每個(gè)MySQL賬戶都有以下屬性:
1.賬戶名(可以有16字符長,其中可以有空格和-符號(hào)定血,但不能出現(xiàn)通配符;賬戶名可以為空诞外,這樣可以允許主機(jī)上的所有有正確密碼的用戶訪問數(shù)據(jù)庫)
2.主機(jī) —— 用戶可以從它訪問數(shù)據(jù)庫的主機(jī)(可以包含通配符澜沟,例如George@%可以允許George在任何主機(jī)上訪問數(shù)據(jù)庫;主機(jī)名也可為空峡谊,作用和%一樣)
3.密碼(可為空)
4.一系列權(quán)限
一個(gè)主機(jī)名和一個(gè)賬戶名確定一個(gè)唯一的用戶(accountname@hostname)茫虽。

所有的用戶信息都存儲(chǔ)在mysql數(shù)據(jù)庫中,這個(gè)數(shù)據(jù)庫在安裝MySQL時(shí)自動(dòng)創(chuàng)建既们。要添加或改變用戶信息濒析,必須有一個(gè)有權(quán)限操作mysql數(shù)據(jù)庫的賬戶。
mysql數(shù)據(jù)庫中包含以下表:
user
db
host
tables_priv
columns_priv

CREATE USER accountname@hostname IDENTIFIED BY 'password'

SET PASSWORD FOR username@hostname = PASSWORD('password')
取消密碼:SET PASSWORD FOR username@hostname = PASSWORD('')

查看用戶權(quán)限:SHOW GRANTS ON accountname@hostname

GRANT privilege (columns) ON tablename
TO accountname@hostname IDENTIFIED BY 'password'

GRANT select (firstName,lastName), update,
insert (birthdate) ...

GRANT select ON ProductCatalog.* TO phpuser@localhost
IDENTIFIED BY 'A41!14a!'

REVOKE privilege (columns) ON tablename
FROM accountname@hostname

REVOKE all ON . FROM accountname@hostname

DROP USER accountname@hostname, accountname@hostname, ...

mysqldump --user=accountname --password=password
databasename >path\backupfilename

mysql -u accountname -p < path/backupfilename

建表流程
1.Name your database.
2.Identify the objects.
3.Define and name a table for each object.
4.Identify the attributes for each object.
5.Define and name columns for each separate attribute that you identify in Step 4.
6.Identify the primary key.
7.Define the defaults.
8.Identify columns that require data.(不允許為空)
設(shè)計(jì)良好的數(shù)據(jù)庫將每個(gè)數(shù)據(jù)只存儲(chǔ)在一個(gè)地方贤壁。

建立表關(guān)系

常用MySQL數(shù)據(jù)類型
CHAR(length)
VARCHAR(length)
TEXT

INT(length)
INT(length)
UNSIGNED
BIGINT
DECIMAL(length,dec)

DATE
TIME
DATETIME

ENUM ("val1","val2"...)
SERIAL AUTO_INCREMENT(SERIAL是BIGINT UNSIGNED NOT NULL AUTO_INCREMENT UNIQUE的一個(gè)別名悼枢。)

一個(gè)表格必須有一個(gè)字段或者字段組合作為主鍵。不能有兩個(gè)記錄有相同的主鍵脾拆。如果多字段構(gòu)成主鍵馒索,在定義時(shí)PRIMARY KEY (columnname1,columnname2)

CREATE TABLE tablename (
columnname datatype definition1 definition2 ...,
columnname datatype definition1 definition2 ...,
...,
PRIMARY KEY(columnname) )

CREATE TABLE IF NOT EXISTS tablename

CREATE TABLE tablename LIKE oldtablename
新表只復(fù)制舊表的結(jié)構(gòu),不復(fù)制數(shù)據(jù)

SHOW TABLES

EXPLAIN tablename
查看表結(jié)構(gòu)

DROP TABLE tablename

使用ALTER語句改變數(shù)據(jù)庫結(jié)構(gòu)名船〈律希基本結(jié)構(gòu)為ALTER TABLE tablename,后面可以跟
ADD columnname definition
ALTER columnname SET DEFAULT value
ALTER columnname DROP DEFAULT
CHANGE columnname newcolumnname definition
DROP columnname
MODIFY columnname definition
RENAME newtablename
例子:
ALTER TABLE Customer RENAME NewCustomer
ALTER TABLE Customer MODIFY lastName VARCHAR(50)

增###

INSERT INTO tablename (columnname, columnname,...,columnname)
VALUES (value, value,...,value)
從服務(wù)器所在目錄的文件導(dǎo)入數(shù)據(jù)
LOAD DATA INFILE "path/datafilename" INTO TABLE tablename
FIELDS TERMINATED BY 'character'
FIELDS ENCLOSED BY 'character'
LINES TERMINATED BY 'character'
例子:
LOAD DATA INFILE "customer.dat" INTO TABLE Customer
FIELDS TERMINATED BY ','
從本地文件導(dǎo)入數(shù)據(jù)
LOAD DATA LOCAL INFILE "path/datafilename"
INTO TABLE tablename

查###

SELECT * FROM tablename
SELECT COUNT(*) FROM tablename
SELECT columnname,columnname,columnname,... FROM tablename
SELECT price,price*1.08 AS priceWithTax FROM Inventory
SELECT MAX(price) FROM Inventory
SELECT * FROM Customers ORDER BY DESC lastName
SELECT * FROM Inventory GROUP BY Category
SELECT lastName,firstName FROM Customer
WHERE lastName LIKE "B%"
AND city = "Indianapolis"
AND (phone LIKE "%8%" OR fax LIKE "%8%")
//返回前三條在德州的客戶記錄
SELECT * FROM Customer WHERE state="TX" LIMIT 3
//重復(fù)的Category只返回一次
SELECT DISTINCT Category FROM Product

UNION###

SELECT lastName,firstName FROM Member UNION ALL
SELECT lastName,firstName FROM OldMember

(SELECT lastName FROM Member UNION ALL
SELECT lastName FROM OldMember) ORDER BY lastName

JOIN##

INNER JOIN####

SELECT columnnamelist FROM table1,table2
WHERE table1.col2 = table2.col2

OUTER JOIN####

SELECT columnnamelist FROM table1 LEFT JOIN table2
ON table1.col1=table2.col2

SELECT columnnamelist FROM table1 RIGHT JOIN table2
ON table1.col1=table2.col2

更新表###

UPDATE tablename SET column=value,column=value,...
WHERE clause

刪除記錄###

DELETE FROM tablename WHERE clause

刪除一列###

ALTER TABLE tablename DROP columnname

刪除表###

DROP TABLE tablename

刪除數(shù)據(jù)庫###

DROP DATABASE databasename
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末渠驼,一起剝皮案震驚了整個(gè)濱河市蜈块,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖百揭,帶你破解...
    沈念sama閱讀 219,539評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件爽哎,死亡現(xiàn)場離奇詭異,居然都是意外死亡器一,警方通過查閱死者的電腦和手機(jī)课锌,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,594評(píng)論 3 396
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來祈秕,“玉大人渺贤,你說我怎么就攤上這事∏朊” “怎么了志鞍?”我有些...
    開封第一講書人閱讀 165,871評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長方仿。 經(jīng)常有香客問我固棚,道長,這世上最難降的妖魔是什么兼丰? 我笑而不...
    開封第一講書人閱讀 58,963評(píng)論 1 295
  • 正文 為了忘掉前任玻孟,我火速辦了婚禮,結(jié)果婚禮上鳍征,老公的妹妹穿的比我還像新娘黍翎。我一直安慰自己,他們只是感情好艳丛,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,984評(píng)論 6 393
  • 文/花漫 我一把揭開白布匣掸。 她就那樣靜靜地躺著,像睡著了一般氮双。 火紅的嫁衣襯著肌膚如雪碰酝。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,763評(píng)論 1 307
  • 那天戴差,我揣著相機(jī)與錄音送爸,去河邊找鬼。 笑死暖释,一個(gè)胖子當(dāng)著我的面吹牛袭厂,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播球匕,決...
    沈念sama閱讀 40,468評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼纹磺,長吁一口氣:“原來是場噩夢(mèng)啊……” “哼!你這毒婦竟也來了亮曹?” 一聲冷哼從身側(cè)響起橄杨,我...
    開封第一講書人閱讀 39,357評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤秘症,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后式矫,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體乡摹,經(jīng)...
    沈念sama閱讀 45,850評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,002評(píng)論 3 338
  • 正文 我和宋清朗相戀三年采转,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了趟卸。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,144評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡氏义,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出图云,到底是詐尸還是另有隱情惯悠,我是刑警寧澤,帶...
    沈念sama閱讀 35,823評(píng)論 5 346
  • 正文 年R本政府宣布竣况,位于F島的核電站克婶,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏丹泉。R本人自食惡果不足惜情萤,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,483評(píng)論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望摹恨。 院中可真熱鬧筋岛,春花似錦、人聲如沸晒哄。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,026評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽寝凌。三九已至柒傻,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間较木,已是汗流浹背红符。 一陣腳步聲響...
    開封第一講書人閱讀 33,150評(píng)論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留伐债,地道東北人预侯。 一個(gè)月前我還...
    沈念sama閱讀 48,415評(píng)論 3 373
  • 正文 我出身青樓,卻偏偏與公主長得像泳赋,于是被迫代替她去往敵國和親雌桑。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,092評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 數(shù)據(jù)庫基礎(chǔ)知識(shí) 數(shù)據(jù)庫客戶端MySQL作為數(shù)據(jù)庫服務(wù)器來運(yùn)行祖今,任何滿足mysql通信規(guī)范的軟件都可以作為客戶端來連...
    littlexjing閱讀 907評(píng)論 0 2
  • 一校坑、mysql基礎(chǔ)操作(centos5.5) 1.mysql表復(fù)制 create table t3 like t1...
    仒叻戓厺閱讀 212評(píng)論 0 0
  • mysql數(shù)據(jù)庫拣技,是當(dāng)前應(yīng)用非常廣泛的一款關(guān)系型數(shù)據(jù)庫主要知識(shí)點(diǎn)包括: a)數(shù)據(jù)庫與表的操作b)數(shù)據(jù)的增加、修改耍目、...
    PythonMaO閱讀 306評(píng)論 0 2
  • 1膏斤、數(shù)據(jù)庫管理 1、 連接數(shù)據(jù)庫mysql -u root -p 2 邪驮、查看所有的數(shù)據(jù)庫show database...
    小菜_charry閱讀 306評(píng)論 0 1
  • 數(shù)據(jù)庫基本操作(內(nèi)部基本操作) create table emp(id int not null auto_inc...
    曲諧_閱讀 179評(píng)論 0 0