管理MySQL的命令及基本函數

如下列出了使用Mysql數據庫過程當中經常使用的命令:php

  • USE 數據庫名 :選擇要操做的Mysql數據庫,使用該命令後全部Mysql命令都只針對該數據庫。mysql

  • SHOW DATABASES: 列出 MySQL 數據庫管理系統的數據庫列表。sql

  • SHOW TABLES: 顯示指定數據庫的全部表,使用該命令前須要使用 use 命令來選擇要操做的數據庫。數據庫

  • SHOW COLUMNS FROM 數據表: 顯示數據表的屬性,屬性類型,主鍵信息 ,是否爲 NULL,默認值等其餘信息。數組

  • SHOW INDEX FROM 數據表: 顯示數據表的詳細索引信息,包括PRIMARY KEY(主鍵)。服務器

  • SHOW TABLE STATUS LIKE 數據表: 該命令將輸出Mysql數據庫管理系統的性能及統計信息。ide

       退出 mysql> 命令提示窗口可使用 exit 命令,以下所示:函數

mysql> exit

使用 PHP 腳本鏈接 MySQL

mysql_connect()   在成功連接到MySQL後返回鏈接標識,失敗返回 FALSE。性能

connection mysql_connect(server,user,passwd,new_link,client_flag);

mysql_close() fetch

bool mysql_close ( resource $link_identifier );
// 註釋:mysql_close() 不會關閉由 mysql_pconnect() 創建的持久鏈接。

bool  mysql_select_db( db_name, connection );

mysql_fetch_array() 

//函數從結果集中取得一行做爲關聯數組,或數字數組,或兩者兼有 
//返回根據從結果集取得的行生成的數組,若是沒有更多行則返回 false。
//設置該參數查詢結果返回關聯數組,你可使用字段名稱來做爲數組的索引。
 //你也可使用常量 MYSQL_NUM 做爲PHP mysql_fetch_array()函數的第二個參數,返回數字數組。

mysql_free_result()

//在咱們執行完SELECT語句後,釋放遊標內存是一個很好的習慣。 
//能夠經過PHP函數mysql_free_result( mysql_query返回的句柄)來實現內存的釋放。

bool mysql_query( sql, connection );

bool mysql_query( sql, connection );
//該函數有兩個參數,在執行成功時返回 TRUE,不然返回 FALSE。
//sql表明要發送的 SQL 查詢。註釋:查詢字符串不該以分號結束。
//可選。規定 SQL 鏈接標識符。若是未規定,則使用上一個打開的鏈接。
<?php
    //PHP把單引號中的數據視爲普通字符串,再也不處理。
    //而雙引號還要對其中的字符串進行處理,好比遇到$了會把其後的內容視爲變量等。
   $dbhost = 'localhost:3306';  //mysql服務器主機地址,或者'127.0.0.1'
   $dbuser = 'guest';      //mysql用戶名
   $dbpass = 'guest123';//mysql用戶名密碼
   $conn = mysql_connect($dbhost, $dbuser, $dbpass);
   if(! $conn )
   {
     die('Could not connect: ' . mysql_error());
   }
   echo 'Connected successfully';
   mysql_close($conn);
?>


//建立數據庫
$sql = 'CREATE DATABASE RUNOOB';
//刪除數據庫
$sql = 'DROP DATABASE RUNOOB';
//選擇數據庫
bool mysql_select_db( db_name, connection );
//建立表PHP
$sql = "CREATE TABLE runoob_tbl( ".
       "runoob_id INT NOT NULL AUTO_INCREMENT, ".
       "runoob_title VARCHAR(100) NOT NULL, ".
       "runoob_author VARCHAR(40) NOT NULL, ".
       "submission_date DATE, ".
       "PRIMARY KEY ( runoob_id ));  ";
mysql_select_db( 'RUNOOB' );
$retval = mysql_query( $sql, $conn );
//建立表
mysql> CREATE TABLE runoob_tbl(
   -> runoob_id INT NOT NULL AUTO_INCREMENT,
   -> runoob_title VARCHAR(100) NOT NULL,
   -> runoob_author VARCHAR(40) NOT NULL,
   -> submission_date DATE,
   -> PRIMARY KEY ( runoob_id )
   -> );
//刪除表
$sql = "DROP TABLE runoob_tbl";
//插入數據
mysql> INSERT INTO runoob_tbl 
     ->(runoob_title, runoob_author, submission_date)
     ->VALUES 
     ->("Learn PHP", "John Poul", NOW());
     //咱們並無提供 runoob_id 的數據,由於該字段咱們在建立表的時候已經設置它爲 
     //AUTO_INCREMENT(自動增長)
     //屬性。 因此,該字段會自動遞增而不須要咱們去設置。
     // 實例中 NOW() 是一個 MySQL 函數,該函數返回日期和時間。
//查詢數據
    //mysql_fetch_array() 函數從結果集中取得一行做爲關聯數組,或數字數組,或兩者兼有 
    //返回根據從結果集取得的行生成的數組,若是沒有更多行則返回 false。
$sql = 'SELECT runoob_id, runoob_title, 
               runoob_author, submission_date
        FROM runoob_tbl';
$retval = mysql_query( $sql, $conn );
while($row = mysql_fetch_array($retval, MYSQL_ASSOC)){
    echo "Tutorial ID :{$row['runoob_id']}  <br> ".
         "Title: {$row['runoob_title']} <br> ".
         "Author: {$row['runoob_author']} <br> ".
         "Submission Date : {$row['submission_date']} <br> ".
         "--------------------------------<br>";} 
         //注意:記住若是你須要在字符串中使用變量,請將變量置於花括號。
         //PHP mysql_fetch_array()函數第二個參數爲MYSQL_ASSOC, 
         //設置該參數查詢結果返回關聯數組,你可使用字段名稱來做爲數組的索引。
         //你也可使用常量 MYSQL_NUM 做爲PHP mysql_fetch_array()函數的第二個參數,返回數字數組。
//內存釋放
    //在咱們執行完SELECT語句後,釋放遊標內存是一個很好的習慣。
    //能夠經過PHP函數mysql_free_result()來實現內存的釋放。
$retval = mysql_query( $sql, $conn );
。。。。do something。。。。。
mysql_free_result($retval);
相關文章
相關標籤/搜索