<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                我們為大家將數據庫連接整理成了最重要的8個步驟,我戲稱它為:“數據庫連接天龍八步”。 這八個步驟如下,并且將每一步使用的函數都做了說明: ##第一步: 連接數據庫服務器 | 類型 | 說明 | | -- | -- | | 函數 | mysqli_connect | | 功能 | 連接到mysql數據庫服務器 | | 參數1 | 主機 | | 參數2 | 數據庫服務器登陸名 | | 參數3 | 密碼 | | 參數4 | 數據庫的名稱 | | 參數5 | 數據庫服務器端口不填默認3306 | 若參數4,數據庫名稱在此步已填,則不需要再執行第三步。 ##第二步: 判斷錯誤 | 類型 | 說明 | | -- | -- | | 函數 | mysqli_errno | | 功能 | 返回連接錯誤號,無錯誤返回0 | | 參數1 | 傳入mysqli_connect返回的資源 | | 類型 | 說明 | | -- | -- | | 函數 | mysqli_error | | 功能 | 返回連接錯誤字符串 | | 參數1 | 傳入mysqli_connect返回的資源 | ##第三步: 選擇數據庫 | 類型 | 說明 | | -- | -- | | 函數 | mysqli_select_db | | 功能 | 選擇本連接中的數據庫 | | 參數1 | 傳入mysqli_connect返回的資源 | | 參數2 | 需要連接的數據庫名| 若在第一步已填數據庫,不需要更換成其他數據庫,則不需要執行第三步。 ##第四步: 設置字符集 | 類型 | 說明 | | -- | -- | | 函數 | mysqli_set_charset | | 功能 | 設置與mysql服力器連接,結果,校驗字符集 | | 參數1 | 傳入mysqli_connect返回的資源 | | 參數2 | 字符集類型| 更多注意項,請關注本書《13.6 數據顯示亂碼終極解決方案》 ##第五步: 準備SQL語句 其實就是一個SQL語句的字符串。 例如: > $sql = "insert into user(username,password) values('$username','$password')"; 我們通常要把變量賦值在SQL語句中使用。可是變量或者SQL語句出錯了,非常不好排查。 我們根據實際工作經驗增加了這一步。 如果在執行此步的時候報錯了,我們可以把SQL語句打印出來,粘貼到phpMyAdmin或者相關工具中。 排錯時,如果執行成功就說明不是SQL語句的問題。如果執行失敗,請仔細檢查SQL語句。 ##第六步: 發送SQL語句 | 類型 | 說明 | | -- | -- | | 函數 | mysqli_query | | 功能 | 發送SQL語句 | | 參數1 | 傳入mysqli_connect返回的資源 | | 參數2 | 傳入發送的SQL語句 | SQL語句準備完成,需要通過mysqli_query將SQL語句發送給MySQL服務器。 MySQL服務器會執行發送過來的SQL語句進行執行。 ##第七步: 判斷是否執行正常或者遍歷數據 ####讀取 第6步中,發送的是select類別的語句,通常需要將結果輸出顯示出來。就需要用到遍歷顯示數據的函數。 | 類型 | 說明 | | -- | -- | | 函數 | mysqli_fetch_array | | 功能 | 得到result結果集中的數據,返回數組進行便利 | | 參數1 | 傳入查詢出來的結果變量 | | 參數2 | 傳入MYSQLI_NUM返回索引數組,MYSQLI_ASSOC返回關聯數組,MYSQLI_BOTH返回索引和關聯 | | 類型 | 說明 | | -- | -- | | 函數 | mysqli_fetch_assoc | | 功能 | 得到result結果集中的數據,返回關聯數組進行便利 | | 參數1 | 傳入查詢出來的結果變量 | | 類型 | 說明 | | -- | -- | | 函數 | mysqli_fetch_row | | 功能 | 得到result結果集中的數據,返回索引數組進行便利 | | 參數1 | 傳入查詢出來的結果變量 | | 類型 | 說明 | | -- | -- | | 函數 | mysqli_fetch_object | | 功能 | 得到result結果集中的數據,返回對象進行遍歷 | | 參數1 | 傳入查詢出來的結果變量 | | 類型 | 說明 | | -- | -- | | 函數 | mysqli_num_rows | | 功能 | 返回查詢出來的結果總數 | | 參數1 | 傳入查詢出來的結果變量 | | 類型 | 說明 | | -- | -- | | 函數 | mysqli_num_rows | | 功能 | 返回查詢出來的結果總數 | | 參數1 | 傳入查詢出來的結果變量 | | 注 | 實際工作中用得非常少,了解| ####寫入 第6步中,如果發送的是insert的語句,通常需要得到是否執行成功,或者同時拿到自增的ID。 | 類型 | 說明 | | -- | -- | | 函數 | mysqli_fetch_field | | 功能 | 遍歷數據行 | | 參數1 | 傳入查詢出來的結果變量 | ####修改和刪除 第6步中,如果發送的是update和delete類別的語句。只需要判斷是否執行成功即可。 我們將這些常用函數列出數據表給給大家查看。 ##第八步: 關閉數據庫 | 類型 | 說明 | | -- | -- | | 函數 | mysqli_close | | 功能 | 關閉數據庫連接| | 參數1 | 傳入mysqli_connect返回的資源 | 數據庫連接是一個資源類型。我們在之前的章節中講解資源類型的時候跟大家說過。凡是涉及到數資源類型的有打開就有關閉。這樣能夠保證PHP更高效的處理和回收資源。 因此,數據庫連接成功后,不需要使用的時候。我們可以關閉這個連接。 ##其他:顯示服務器信息函數 | 類型 | 說明 | | -- | -- | | 函數 |mysqli_get_server_info | | 功能 | 返回服務器信息| | 參數1 | 傳入mysqli_connect返回的資源 | | 類型 | 說明 | | -- | -- | | 函數 |mysqli_get_server_version | | 功能 | 返回服務器版本| | 參數1 | 傳入mysqli_connect返回的資源 | *** 注意: mysqli只學過程化的方法即可。在面向對象階段實際工作中完全拋棄了mysqli的對象用法,而是使用的是PDO對象連接數據庫的方式。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看