php元件 SQL基礎知識

2021-09-21 02:40:07 字數 2739 閱讀 1384

hypertext preprocessor 嵌入thml文件的指令碼程式語言,動態**的開發語言

www.php.net

php, asp, ruby, c, bash《有程式功能的直譯器》

"php通過庫呼叫完成操作檔案"

"bash通過內部程式"

[foo]

directive = value

[mysql|mysqli] 連線mysql驅動的配置

持久:基於tcp連線發起mysql協議請求,不斷開,需要維持乙個連線

非持久:每次建立都需要拆除連線

php.ini核心配置選項:""

php.ini配置選項列表:""

cgi, cli //每次httpd呼叫程式,啟動子程序時,讀取配置

fastcgi/module //在啟動web程式讀取一次

[epel]php-xcache提供php的驅動

執行php**: scan[語法] -->parsing[詞法-->表示式] --> complie[表示式-->opcode] --> exec

php-xache能實現,快取opcode,程序間能相互使用opcode

實現: dbms(mysql, mariadb)

資料結構:層次、網狀、關係模型

關係模型的分類:

基本-關係模型

實體-關係模型

基於物件-關係模型

半結構化-關係模型

支援xml解析資料

實現:sql儲存(mysql分支、oracle、mssql)

mysql分支:mysql官方, mariadb開源, percona-server著名, pgsql皮(enterprisedb)

oracle: 傳統公司:在智慧型手機普級的時候,在高階的收音機又有什麼用呢?

ms_sql:微軟

設計正規化:

"1nf": 原子性 atomicity,

例如:乙個字段包含班級和專業,不被允許

"2nf":行內有有限個字段惟一標識此行, 

"3nf":2個表有相同的字段時,1張表字段必須是主鍵

例如:表1: 專業:非主鍵

表2: 專業:主鍵

滿足正規化:

"拆表":將乙個大的資料集拆分為小表,表必須滿足正規化

"聯合":join, 基於index,演算法

"資料集":乙個庫、方案、集合內

表:先定義column, 後row

可以沒有row, 必須有column
結構:

sql引擎: 

執行[scan]、分析[parsing]、求解[解決方案]、優化[選擇路徑|修改路徑結果不變]

"事務:

多個操作都完成或都不完成(atomicity原子性, consistency一致性, isolating隔離性, durability永續性)

恢復:將事務日誌中的資料同步至資料區

鎖: 寫(自己rw,其它人:-)讀(自己:r,其它人:r)

空間管理、緩衝、檔案訪問介面

實現: sql引擎或sql直譯器 sql引擎(sql協議): 命令執行、函式、變數

c/s架構,mysql協議, mariadb協議, oracle協議, mssql協議(sql server)

實現

client:

程式:cli(mysql), gui(phpmyadmin)

api:  sql介面, php-mysql, odbc(底層庫)

**api:寫程式面向的物件:硬體規格、彙編、syscall、libcall

server: 

監聽socket,接收、處理、響應使用者的請求

mariadb
作者研發sql介面:成立ab(瑞典公司),mysql

mysql-->google,facebook改進-->sun收購-->oracle收購sun-->

mysql讀音:『my' 'sql'

作者不樂意:另起一攤:mariadb maria:女兒的名字

oracle不能提供硬體到軟體到系統一體化的解決方案,而ibm(big blue)可以,為了比肩ibm,就收購了sun

約束型別:

稠密、稀疏:1對1 or 1對多

索引欄位是1個或多個

聚簇、非聚簇:索引欄位與資料是否在一起

選擇、選擇row,where

select

連線、join

檢視層:view,只能看到資料庫的部分內容:提公升使用者體驗

邏輯層:元資料, 依賴關係

物理層:據儲存格式:表和檔案的對應關係

原始碼 rpm

程式官方/專案官方:原始碼和二進位制程式

穩定

SQL基礎知識

本篇文章是講解sql的基礎知識,但也講得不全面,我只記錄了自己不懂的或者不熟悉的東西。一 在sql中簡單的查詢 1.重複的記錄 distinct 可以通過在選擇列表前的select語句中插入關鍵字distinct來消除重複的查詢結果記錄。比如 select distinct city from ci...

SQL基礎知識

sql作用 1.面向資料庫執行查詢 2.可從資料庫取回資料 3.可在資料庫中插入新的記錄 4.可更新資料庫中的資料 5.可從資料庫刪除記錄 6.可建立新資料庫 7.可在資料庫中建立新錶 8.可在資料庫中建立儲存過程 9.可在資料庫中建立檢視 10.可以設定表 儲存過程和檢視的許可權。資料庫操作語句 ...

SQL基礎知識

資料庫就是資料的倉庫,dbms資料庫管理系統同來對大資料的管理 檢索,就是對資料庫的管理。乙個dbms可以管理多個資料庫,這些不同的資料庫叫catalog或database,dbms允許把不同的database儲存在不同磁碟,每個資料庫中的表名不能相同。table 表,把不同型別的資料放到不同的區域...