《PHP MySQL和WEB開發》第九章筆記

2021-08-08 17:42:51 字數 2704 閱讀 7968

<?

//安裝mysql 然後建立資料庫

/*解決mysql不是內部命令也不是可執行的程式,在環境變數中加入mysql的安裝目錄,分隔符用分號*/

許可權系統

//最少許可權原則:乙個使用者(或者乙個程序)應該擁有能夠執行分配給他的任務的最低級別的許可權

.2 建立使用者 grant和revoke 全域性、資料庫、表、列

/*grant all on * .* to luphper identified by 'luhao0701' with grant option;

show grants for luphper;

revoke all on *.* from luphper;

grant usage on lustudy.* to zhouwei identified by '123456';

show grants fron zhouwei;

grant select,update on lustudy to zhouwei;

show grants from zhouwei;

revoke update on lustudy from zhouwei;

show grants for zhouwei;

revoke all on lustudy.* from zhouwei;

show grants for zhouwei;

【此處有乙個疑問為什麼使用identified by 之後的密碼在cmd命令提示符那裡無法登入,而不輸入密碼反而可以登入的是乙個沒有任何許可權的賬戶】

因為在建立grant的時候沒有對他的域進行說明。而且在mysql的user表裡 有一條空使用者名稱空密碼域為localhost的記錄像響了,刪除掉就

不會出現直接輸入mysql就進入匿名賬戶的問題了。或者grant的時候加上@localhost

然後執行了乙個delete from mysql.user where user !='root';*/

/*9.6建立乙個web使用者*/

//grant select,delete,update,insert on lustudy.* to lustudy_web identified by '123456';

//還是在這上邊寫再複製過去吧 容易修改

/*cerate table customers(

customerid int unsigned not null auto_increment primary key,

name char(50) not null,

address char(100) not null ,city char(30) not null

);create table orders(

orderid int unsigned not null auto_increment primary key,

customerid int unsigned not null ,

amout float(6,2),

date date not null

);create table books(

isbn char(13) not null primary key,

author char(50),

title char(100),

price float(4,2)

);create table order_items(

orderid int unsigned not null,

isbn char(13) not null,

quantity tinyint unsigned,

primary key(orderid,isbn)

);create table book_reviews(

isbn char(13) not null primary key,

review text

);//雖然varchar的儲存空間更小但是char的速度更快

//not null 可以優化【優化速度】

//檢視乙個錶用describe 例如:describe customers;【很有用】

對於列名,sql不區分大小寫,但是不能在同乙個語句中使用不同的大小寫。

//177頁說到乙個mysqladmin 沒搞懂,第二次迭代的時候再看吧。

//使用後引號``可以使用特殊字元,請使用有意義的識別符號

//選擇列資料型別的原則是選擇能滿足條件最小的型別,而不是為了方便選擇較大的

//浮點類的(m,d)d的範圍為(-2,30)

//所有的數字型別可以指定 zerofill 用0來填充空值。如果是zerofill那麼就是unsigned型別

//bit=bool=tinyint

//float後面不加括號就是可變的浮點數

//如果不手動設定,特定行的timestamp將被設定為最近修改改行的日期和時間

/*9.10.3字串型別*/

//第一類 char varchar,char會自動填補空白,varchar會隨列寬自動變化 但是比較慢

//第二類 next 和 blob text區分大小寫 blob(大二進位制)不區分大小寫

//第三類 set和enum set指定指定列中的值必須來自乙個指定集合中的值 最大64個

// enum列舉,該型別的列可以只有乙個制定集合中的值或者null 最大65535

//fopen("unit10.php","w");

?>

《PHP MySQL和WEB開發》筆記第十一章

fopen search.html a echo enter the search web.fopen search result.php w get magic quotes gpc魔術引擎是否開啟 這是search.php require page.inc searcher new page s...

PHP MYSQL物聯網監控系統Web端

b chmod 777 xampp linux x64 7.3.0 0 installer.run c xampp linux x64 7.3.0 0 installer.run d opt lampp lampp start 3 使用wincp工具將編好的程式放到opt lampp htdocs ...

php mysql生日提醒 PHP與Web安全

開卷有益,我勸大家 耗子尾汁 不要噴,不要說什麼php簡單。不管白貓 黑貓,抓到老鼠就是好貓。學習php,是為了撬動web安全這座大山,是為了更好的演示,黑客是如何入侵 的。或許你會說php過時了,但是黑客的攻擊思路是永遠不會湮滅的 本篇完,謝謝大家...