php中執行mysql語句(php執行sql文件)

本文目錄一覽:

php中執行mysql語句?

不可以!如果你的表有5個字段 而你是只要插入兩個字段!其他不要插的的要用default(默認)代替!

PHP執行批量mysql語句的解決方法

當有多條mysql語句連起來需要執行,比如

$sqls=

「insert

table

a

values(1,2);

insert

table

a

values(2,3);」

需要執行的話php中可以使用的方法有三個:

mysql_query

pdo

mysqli

三種方法當sqls語句沒有問題的時候都是可以的。

但是

當sql語句是錯誤的時候會出現問題

第一條sql錯誤:三個方法都返回false

第一條sql正確,第二條sql錯誤:mysql_query、pdo、

mysqli:query也是返回true。所以這個時候你是沒法判斷你的sqls是否有那條語句是錯誤的。

解決這種辦法有幾個招:

1

解析sql語句

將每條sql都拆分開來執行。這樣每個語句分開執行就解決了。但是這種方法多出了好幾種方法,所以不可取。

2

將sqls語句保存為文本

使用cmd執行命令

mysql….

.

sqls.sql,

然後捕獲輸出。這也是一種方法,但是感覺是繞着問題走,應該還有更好的方法。

3

使用mysqli::multi_query方法

這個方法可以執行多條sql語句,然後使用mysqli::next_result來設置sql的偏移量,使用mysqli::error獲取當前偏移的sql的錯誤狀態

下面是第三種方法的示例代碼

代碼如下:

複製代碼

代碼如下:

$sql

=

Config::get(‘sql’);

$content

=

file_get_contents($sql);

$config

=

Config::get(‘config’)

$mysqli

=

mysqli_connect($config[‘host’],

$config[‘user’],

$config[‘password’],

$config[‘dbname’]);

$ret

=

$mysqli-multi_query($content);

if($ret

===

false)

{

echo

mysqli_error($mysqli);

}

while

(mysqli_more_results($mysqli))

{

if

(mysqli_next_result($mysqli)

===

false)

{

echo

mysqli_error($mysqli);

echo

“\r\n”;

break;

}

}

$mysqli-close();

這樣的話當sqls語句中任意一條有錯誤的話,程序就會跳出這個錯誤。

如果你要編寫初始化mysql的腳本的話,這招就非常好用了。

php中寫mysql語句

不管怎樣,在這裡我總結了常用的PHP連接MySQL數據庫以及讀取寫入數據庫的方法,希望能夠幫到你,當然也是作為我自己的一個回顧總結。

1.為了更好地設置數據連接,一般會將數據連接所涉及的值定義成變量.

?

1

2

3

4

5

6

7

$mysql_server_name=’localhost’; //改成自己的mysql數據庫服務器

$mysql_username=’root’; //改成自己的mysql數據庫用戶名

$mysql_password=’123456′; //改成自己的mysql數據庫密碼

$mysql_database=’Mydb’; //改成自己的mysql數據庫名

也可把以上變量放在一個文件里,可以隨時讓其他文件調用.

例如: 將以上內容放在:db_config.php 那麼在其他需要用到數據庫的頁面直接調用.

調用代碼:require(“db_config.php”);

2.連接數據庫

?

1

2

3

4

5

6

7

8

9

$conn=mysql_connect($mysql_server_name,$mysql_username,$mysql_password) or die(“error connecting”) ; //連接數據庫

mysql_query(“set names ‘utf8′”); //數據庫輸出編碼 應該與你的數據庫編碼保持一致.南昌網站建設公司百恆網絡PHP工程師建議用UTF-8 國際標準編碼.

mysql_select_db($mysql_database); //打開數據庫

$sql =”select * from news “; //SQL語句

$result = mysql_query($sql,$conn); //查詢

3.讀取表中的內容,這裡我們用while,可以根據具體情況,用for 或其他的.

?

1

2

3

4

5

6

7

8

9

10

11

while($row = mysql_fetch_array($result))

{

echo “div style=\”height:24px; line-height:24px; font-weight:bold;\””; //排版代碼

echo $row[‘Topic’] . “br/”;

echo “/div”; //排版代碼

}

4.php寫入數據庫,Mysql數據的寫入

原創文章,作者:B4QX9,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/129887.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
B4QX9的頭像B4QX9
上一篇 2024-10-03 23:27
下一篇 2024-10-03 23:27

相關推薦

  • 如何修改mysql的端口號

    本文將介紹如何修改mysql的端口號,方便開發者根據實際需求配置對應端口號。 一、為什麼需要修改mysql端口號 默認情況下,mysql使用的端口號是3306。在某些情況下,我們需…

    編程 2025-04-29
  • PHP和Python哪個好找工作?

    PHP和Python都是非常流行的編程語言,它們被廣泛應用於不同領域的開發中。但是,在考慮擇業方向的時候,很多人都會有一個問題:PHP和Python哪個好找工作?這篇文章將從多個方…

    編程 2025-04-29
  • vue下載無後綴名的文件被加上後綴.txt,有後綴名的文件下載正常問題的解決

    本文旨在解決vue下載無後綴名的文件被加上後綴.txt,有後綴名的文件下載正常的問題,提供完整的代碼示例供參考。 一、分析問題 首先,需了解vue中下載文件的情況。一般情況下,我們…

    編程 2025-04-29
  • 如何在Java中拼接OBJ格式的文件並生成完整的圖像

    OBJ格式是一種用於表示3D對象的標準格式,通常由一組頂點、面和紋理映射坐標組成。在本文中,我們將討論如何將多個OBJ文件拼接在一起,生成一個完整的3D模型。 一、讀取OBJ文件 …

    編程 2025-04-29
  • Python中讀入csv文件數據的方法用法介紹

    csv是一種常見的數據格式,通常用於存儲小型數據集。Python作為一種廣泛流行的編程語言,內置了許多操作csv文件的庫。本文將從多個方面詳細介紹Python讀入csv文件的方法。…

    編程 2025-04-29
  • Python程序文件的拓展

    Python是一門功能豐富、易於學習、可讀性高的編程語言。Python程序文件通常以.py為文件拓展名,被廣泛應用於各種領域,包括Web開發、機器學習、科學計算等。為了更好地發揮P…

    編程 2025-04-29
  • 為什麼用cmd運行Java時需要在文件內打開cmd為中心

    在Java開發中,我們經常會使用cmd在命令行窗口運行程序。然而,有時候我們會發現,在運行Java程序時,需要在文件內打開cmd為中心,這讓很多開發者感到疑惑,那麼,為什麼會出現這…

    編程 2025-04-29
  • Python3支持多行語句

    Python3是一種高級編程語言,開發人員可以輕鬆地使用該語言編寫簡單到複雜的代碼。其中Python3支持多行語句,方便開發人員編寫複雜的代碼,提高代碼的可讀性和可維護性。 一、使…

    編程 2025-04-29
  • Python zipfile解壓文件亂碼處理

    本文主要介紹如何在Python中使用zipfile進行文件解壓的處理,同時詳細討論在解壓文件時可能出現的亂碼問題的各種解決辦法。 一、zipfile解壓文件亂碼問題的根本原因 在P…

    編程 2025-04-29
  • Python將矩陣存為CSV文件

    CSV文件是一種通用的文件格式,在統計學和計算機科學中非常常見,一些數據分析工具如Microsoft Excel,Google Sheets等都支持讀取CSV文件。Python內置…

    編程 2025-04-29

發表回復

登錄後才能評論