登入MySQL mysql -hlocalhost-uroot -proot
退出MySQL exit
每條語句後必須加分號:--------------------------------------------
顯示資料庫 SHOW DATABASES;;查看MySQL伺服器上有多少個資料庫
建立資料庫
CREATE DATABASE db_name [IF NOT EXITSTS][CHARSET utf8];
各個命令之間用空格隔開
db_name // 自訂資料庫名字 字母數字底線 [IF NOT EXITSTS] //如果建立的資料庫已經存在,則不會報錯 [CHARSET utf8] //指定當前資料庫的字元集,預設為‘拉丁’,
切記:utf8中間不加橫線
SHOW命令的使用;
show create database db_name; //查看建立資料庫的語句過程
刪除資料庫 DROP DATABASE db_name [IFEXITSTS]; [IF EXITSTS] //如果存在刪除就不會報錯
修改mysql資料庫的字元集:ALERT DATABASE db_name DEFAULT CHARACTERSET 字元集;
資料表操作:
選擇當前資料庫------>USEdb_name;顯示資料表--------->SHOW TABLES; 建立資料表---------->CREATETABLE table_name(列1 類型列的屬性,列2 類型列的屬性,.....);
例:
create table table1(id int not null auto_increment primarykey,title varchar(100) not null,author varchar(20) not null,source varchar(30)not null,hits int(5) not null default 0,is_ppt tinyint(1) not null default0,content text null,addate int(16) not null);
auto_increment----自動成長 primarykey----主鍵
id欄位的屬性:必須的----NOT null auto_increment primary key
列的類型(mysql的資料類型):整型、浮點型、字元型、文本型、日期型
列的屬性:是否為空白、NOTnull || NULL
自動成長:AUTO_INCREMENT 只能用於id,一個表只能有一個自動成長屬性
預設值: DEFAULT value
主 鍵:(主索引)只有一個,PRIMARYKEY 一般指定給id欄位,一個表只能有一個
整型:tinyint---一個位元組(0-255) smalimt----兩個位元組(0-65535) int----四個位元組(0-21億)bigint----8個位元組()
浮點型:float(M,D)可以精確到小數點後7位,M代表總寬度,D代表小數位
double(M,D)可以精確到小數點後15位
字元型和文本
Char(M)固定長度字元,M代表長度
Varchar(M) 可變長度字元,M代表長度
char存取資料的速度要比varchar快一點
文本型
tinytext 0-255 最小文本型
text 0-1677萬 中型文本
longtext 42億
日期時間
date 如:“YYYY-MM-DD”time 如:“HH:MM:SS”datetime 如:“YYYY-MM-DD HH:MM:SS”
顯示資料表
SHOW TABLE FROM table_name;
顯示表的結構
DESCRIBE table_name;
刪除表
DROP TRABLE table_name;
修改
使用phpmyadmin來修改
資料處理SQL
結構化查詢語言 (SQL)
SQL的主要功能
增 刪 改 查
增加:----------- INSERT INTO table_name(欄位1,欄位2,….) VALUE(值1,值2,…..);
可以指定ID欄位,並給id賦值
設定用戶端請求的字元集(中文亂碼解決):set names gbk;
刪除:----------- DELETE FROM table_name [WHERE 條件];
WHERE 欄位>值
如果省略where條件,所以得都刪除
delete from table1 where id>5;刪除id大於5的所有delete from table1 where id>15 andcontent='上市大公司';
查詢:--------- select 欄位 from table_name;
describe命令查看資料庫表裡的欄位
匯入saixinjituan.sql檔案到mysql資料庫
先建立一個資料庫:然後選擇當前資料庫;選擇功能表列的匯入;
SELECT 欄位列表|* FROMtable_name [WHERE條件][ORDER BY][LIMIT]
欄位列表|*FROM ------ 查詢指定幾個欄位的資訊,使用萬用字元 * 可以查詢所有欄位
where條件 如果省略將顯示所有記錄
order by ---------- 查詢的記錄按那個欄位排序 ASC升序(預設)DESC降序
select* from news order by ID desc;
LIMIT限制輸出的記錄數-----LIMIT 開始行號,記錄數(用於資料分頁)
模糊查詢用%代替
selectid,title,hits from 007_news where id<50 order by id;select* from 007_news where id<50 order by id,hits desc;selectid,title,hits from 007_news where id<50 order by id limit 0,5;selectid,title form 007_news where keywords is null; //查詢id或title為空白的
修改:-------- UPDATE table_name SET 欄位1=新值1,欄位2=新值2[WHERE 條件];
update table1 set title='娛樂',author='作為',addate='14399999'where id=33;
PHP串連MySQL伺服器
php串連MySQL伺服器:mysql_connect()、exit()、mysql_error()
選擇資料庫-----------mysql_select_db()
設定mysql返回資料字元集--------mysql_query(“set names utf8”)
執行SQL語句---------mysql_query()
從結集中取出記錄總數-----------mysql_num_rows()
從結果集中取出一行資料---------mysql_fetch_row()、mysql_fetch_array()、mysql_fetch_assoc()
PHP補充函數----------include()、require()、md5()、urlencode()、urldecode();
PHP+MySQL資料庫編程步驟---------
一、登入mysql伺服器
二、選擇當前資料庫
三、佈建要求字元集
四、執行SQL語句
PHP函數串連mysql資料庫-------- mysql_connect()
resource $link =mysql_connect($db_host,$db_user,$db_pwd)
resource$link = mysql_connect(“localhost”,”root”,””) 不推薦
resource 串連成功,返回一個資源類型的標識符,如果失敗,返回false
$db_host 代表mysql伺服器的主機名稱或IP地址,本地為localhost
$db_user 代表mysql伺服器的使用者帳號
$db_pwd 代表mysql伺服器的使用者密碼
exit()輸出一個資訊,並終止程式運行
void exit([string $status]);
exit(“程式出錯了”)
mysql_error()主要用於測試,一旦上線就不可能再使用
輸出上一次操作mysql出錯的文本資訊
文法:mysql_error([resource $link])
$link代表當前的活動連結
@屏蔽系統的錯誤資訊
選擇資料庫mysql_select_db()
選擇要挫折的資料庫------返回布爾值
bool mysql_select_db(string $database_name [,resource $link_indentifier])
$database你要操作的資料庫名稱
[$link]可選 ,代表當前的活動連結
傳回值:成功------true 失敗-----false
設定MySQL返回的資料字元集
mysql_query(“set names utf8”)
執行SQL語句
mysql_query()---------執行各種SQL語句
文法:
resource $result =mysql_query($sql[,$link]);
$sql 各種SQL語句
增$sql = “insertinto table_name(title,id) values(‘title’,’id’)”;刪$sql = “delete from table_name [where id=5]”;改$sql = “update table_name set title=’新title’[where id=5]”;查$sql = “select * from table_name”;
$link當前活動的連結,如果省略,就以上一個開啟的連結為準
傳回值:當執行SQL語句時,成功返回結果集 是一個資源的資料類型,失敗返回FALSE
從結果集中讀取資料
取出一行----mysql_fetch_row() 每次讀一行資料
從結果集中讀取一行資料,並以枚舉數組返回
返回一個數組 array mysql_fetch_row(resource$result)
$result代表返回的結果集 返回一個枚舉數組,也就是說這一行是存在數組中的,
$row= mysql_fetch_row($result,$link);