php資料庫操作命令精華大全

來源:互聯網
上載者:User

標籤:des   style   http   io   os   ar   使用   for   strong   

1、表結構//列資訊2、表資料//行資訊3、表索引//把列中的行加到索引中(一般情況下一個表一定要把id這一列的所有資料都加到主鍵索引中)

2、[dos下]關閉mysql:net stop mysql
開啟mysql:net start mysql
登陸mysql:mysql -uroot -p123 --tee=c:\mysql.log
查看資料庫命令:show database;
進入test資料庫:use test
查看資料庫表:show tables;
建立一個表:create table user(id int,name varchar(30),pass varchar(30));
查看錶結構或表欄位:desc user
查看錶資料:select*from user;
查看錶中的所有索引:show index from t2;
在表中插入資料:insert into user(id,name,pass) values(1,"hello","123");
查看錶中的id:select*from user where id=1;
刪除表中的id:delete from user where id=1;
修改表中的值:update user set name=‘hello‘ where id=1;
退出myaql:exit;
建立一個資料庫:create database txet;
刪除資料庫:drop database;
修改表名:rename table user to user1;
刪除表:drop table user1;

 

表欄位的類型:
1、數值:int//int(3)與長度無關,不夠3位時前面補0,預設不顯示
float
2、字串:char(n) 255位元組 佔用n個位元組
varchar(n)最高65535位元組 存多少佔多少位元組
text 65535位元組
longtext 42億位元組
3、日期:date time datetime year

 

資料庫的基礎篇欄位屬性:
1、unsigned 無符號,全是正數
2、zenrofill 零填充,int(3),不夠3位補0
3、auto_increment 自增
4、null 這一列值允許為null
5、not null 這一列值不允許為null
6、default 不允許為null給預設值

 

用\s查看四種字元集:
1、server characterset: utf8 伺服器字元集
2、Db characterset: utf8 資料庫字元集
3、client characterset: utf8 用戶端字元集
4、Conn. characterset: utf8 用戶端串連字元集
查看資料庫字元集命令:sohw create database text;
查看錶字元集命令:show create table user;
PHP中設定mysql用戶端和串連字元集:$sql="set names utf8";

 

表欄位索引:
1、主鍵索引
2、普通索引
檢查sql語句:desc select * from user where id=3\G//加\G把表顛倒一下
rows 1 表示找到一個id=3的人檢索一行找到
查看錶中的所有索引:show index from user;

 

後期維護普通索引:
1、添加普通索引:alter table t2 add index in_name(name);
2、刪除普通索引:alter table t2 drop index in_name;

 

後期維護資料庫欄位:
1、添加欄位
alter table t1 add age int;
2、修改欄位
alter table t1 modify age int not null default 20;
3、刪除欄位
alter table t1 drop age;
4、修改欄位名
alter table t1 change name username varchar(30);

 

結構化查詢語言 (SQL)sql包含四個部分:
1、DDL //資料定義語言 (Data Definition Language),reate,drop,alter
2、DML //資料操作語言,insert,update,delete
3、DQL //資料查詢語言,select
4、DCL //資料控制語句,grant,commit,rollback

 

增-insert:insert into t1(username) values(‘g‘);
改-update:update t1 set username=‘f‘ where id=6;
一次更改多個值:update t1 set id=10, username=‘bb‘ where id =7;
刪-delete:
delete from t1 where id=6;
delete from t1 where id in(1,2,5);
delete from t1 where id=1 or id=3 or id=5;
delete from t1 where id>=3 and id<=5;
delete from t1 where id between 3 and 5;
查-select:

1、選擇特定的欄位:select id,name from user where id=3;
2、給欄位取別名-as:select pass as p,id from user where id=3;
select pass p,id from user where id=3;
3、取掉列中的重複值:select distinct name form user;
4、使用where條件進行查詢:select * from user where id>=3 and id<=5;
5、查詢空值null:select *from user where pass is null;
select *from user where pass is not null;
6、搜尋like關鍵字:select * form user wher name like ‘%3%‘;
select * form user wher name like ‘%3%‘ or name like ‘%1%‘;
select * form user wher name regexp ‘.*3.*‘;
select * form user wher name regexp ‘(.*3.*)|(.*5.*)‘;
7、使用order by對查詢結果排序:
升序 select * from user ordeer by id asc;註:升序可以不寫asc
降序 select * from user ordeer by id desc;
8、使用limit限定輸出個數:
select * from user order by id desc limit 0,3;
select * from user order by id desc limit 3;
9、concat函數-字串串連符:select concat("a","-","c");
10、rand函數-隨機排序:selec 8 from user order by rans() limit 3;
11、count統計:select count(*) from user;/ /http://www.pprar.com
select count(id) from user;
select count(id) from user where name=‘user1‘;//統計user1出現的次數
12、sum求和:select sum(id) from user where name=‘user1‘;//符合要求的id 之和
13、avg平均數: select avg(id) from user;
14、max最大值: select max(id) from user;
15、min最小值: select min(id) from user;
16、分組彙總:select name,count(id) tot from mess group by name order by tot desc;//tot是起了個別名//group by必須寫在order by的前面
select name,count(id) tot from mess group by name having tot>=5;//group by必須寫在having的前面//分組後加條件必須用having,而非where
17、在id欄位後加uid欄位:alter table post add uid int after id;
18、多表查詢:
(1)普通查詢-多表
(2)巢狀查詢-多表
(3)左串連查詢-多表
普通查詢:
select user.name,count(post.id) from user,post where user.id=post.uid group by post.uid;
左串連查詢:
select user.name,post.title,post.content from user left join post on user.id=post.uid;//顯示全部使用者發送或者沒有發送的名字加內容
普通查詢:
//得到發文章的人-普通查詢mysql> select distinct user.name from user,post where user.id=post.uid;
巢狀查詢:
//得到發文章的人-巢狀查詢mysql> select name from user where id in(select uid from post);

PHP操作資料庫:


1、通過PHP串連上mysql資料庫
2、選擇資料庫
3、通過PHP進行insert操作
4、通過PHP進行delete操作
5、通過PHP進行update操作
6、通過PHP進行select操作
通過PHP串連mysql資料庫:mysql_connect("localhost","root","123");
選擇資料庫:mysql_select_db("test");
設定用戶端和串連字元集:mysql_query("set names utf8");
通過PHP進行insert操作://從表單接收資料$uername="user1"; $passwoed="123";
//$sql="insert into t1(username,password) values(‘$username‘,‘$password‘)";
//執行這條mysql語句 var_dump(mysql_query($sql));
//釋放串連資源 mysql_close($conn);
//通過PHP進行update操作$sql="update t1 set username=‘user2‘,pssword=‘111‘ where id=8";
//通過PHP進行delete操作:$sql="delete form t1 where id=8";
從結果集中取資料:
mysql_fetch_assoc//關聯陣列
mysql_fetch_row//索引數組
mysql_fetch_array//混合數組
mysql_fetch_object//對象
//通過PHP進行select操作$sql="select form t1";
從結果集中取全部資料:while($row=mysql_fech_assoc($result)){echo "

"; print_r($row) echo "

";}
mysql_insert_id//取得上一步INSERT操作產生的ID
mysql_num_fields//得到insert,update,delete操作影響的行數musql_num_rows//得到select操作影響的行數
//得到表總行數:$sql="select count(*) form t1";
$rst=mysql_query($sql);
$tot=mysql_fetch_row($rst);

 

php資料庫操作命令精華大全

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.