Rumah pangkalan data tutorial mysql Mysqli基础知识_MySQL

Mysqli基础知识_MySQL

Jun 01, 2016 pm 12:59 PM
mysqli pengetahuan asas

       相信原来在开始学习php的时候,很多人使用的数据库首选MySQL,连接数据库的扩展首选mysql扩展,但随着php版本的提高,mysql扩展正逐渐被mysqli和PDO所取代。正如使用mysql函数时给出的deprecated: The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead。学习mysqli扩展势在必行了。

   相对于mysql扩展,mysqli扩展支持面向对象和面向过程两种方式,支持预处理,支持事务处理,而且速度比mysql速度更快。本篇将主要介绍mysqli的面向对象的基本简单操作。

mysqli安装配置

  mysqli的安装配置和其他配置一样,首先要确认你的ext文件夹下存在php_mysqli.dll文件(一般而言是存在的),并且在php.ini文件中去掉“extension=php_mysqli.dll”这一行前的";",并且确定配置文件中extension_dir='ext目录所在的位置。重新启动服务器后,便可以使用mysqli扩展啦~

如何验证mysqli扩展已经开启了呢?

   其实最直接的是使用mysqli扩展的函数看看能不能用,例如通过能否连接数据库判断扩展已经安装完成。连接成功,不必说,自然是装好了,连接不成功,也不要轻易认为没有装好,我们还有后招,利用phpinfo()函数,我们可以明确知道mysqli是否可用。

   当然可以通过extension_loaded('mysqli') 来判断是否装载mysqli扩展,甚至可以通过get_loaded_extensions()获得到底装载了哪些扩展。

面向对象mysqli的使用

  对于使用过mysql扩展的开发者,mysqli无论是面向对象还是面向过程的 方式都是非常容易理解的,有种似曾相识的感觉。具体的属性方法请参照php官方手册,http://php.net/manual/zh/mysqli.summary.php,下面我我通过一段代码示例mysqli的使用过程。

本例中操作做的表为test表,有id,title两个字段。

<&#63;php 
//配置文件完成相关配置
define("HOST", "localhost");
define("USER", 'root');
define("PWD", '');
define("DB", 'yii');

//建立连接,生成mysqli实例对象。
$mysqli=new Mysqli(HOST,USER,PWD,DB);

if ($mysqli->connect_errno) {
  "Connect Error:".$mysqli->connect_error;
}
//设置默认的字符集
$mysqli->set_charset('utf8');
$sql="select * from test";
//生成mysql_result对象
$result=$mysqli->query($sql);

//返回二维关联数组,参数同理可以设定为MYSQLI_NUM返回索引数组,或者MYSQLI_BOTH二者兼有。
$rows=$result->fetch_all(MYSQLI_ASSOC);
//将结果指针调整到任意行
$result->data_seek(2);
$row=$result->fetch_row();
//$row=$result->fetch_array();
//$row=$result->fetch_assoc();
//$row=$result->fetch_object();

//释放结果集
$result->free();
//$result->free_result();
//$result->close();

//关闭连接
$mysqli->close();

Salin selepas log masuk

以上代码仅仅是简单地展现了如何 利用mysqli进行查询,未对查询结果集进行遍历,如何取出数组中的数据应该不是难事。

需要注意的是$mysqli->query()执行的sql语句,成功执行SELECT, SHOW, DESCRIBE或 EXPLAIN查询会返回一个mysqli_result 对象,其他查询则返回 TRUE,执行失败则都返回false。

在进行INSERT,UPDATE,DELETE操作时可以调用$mysqli->affected_rows获得受影响记录条数

$mysqli->affected_rows 返回值 返回-1表明sql语句出现问题,0表示没有受影响的记录,其他数值则是受影响条数。

执行多条SQL语句,预处理,以及事务处理也是mysqli的重要内容,我会在后来的随笔中写到。

以上所述就是本文的全部内容了,希望大家能够喜欢。

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Penyelesaian kepada ralat PHP Fatal: Panggilan ke fungsi yang tidak ditentukan mysqli_connect() Penyelesaian kepada ralat PHP Fatal: Panggilan ke fungsi yang tidak ditentukan mysqli_connect() Jun 23, 2023 am 09:40 AM

Apabila menulis aplikasi web menggunakan PHP, pangkalan data MySQL sering digunakan untuk menyimpan data. PHP menyediakan cara untuk berinteraksi dengan pangkalan data MySQL yang dipanggil MySQLi. Walau bagaimanapun, kadangkala apabila menggunakan MySQLi, anda akan menemui mesej ralat, seperti yang ditunjukkan di bawah: PHPFatalerror:Calltoundefinedfunctionmysqli_connect() Mesej ralat ini bermakna PHP tidak dapat mencari saya

PHP PDO lwn mysqli: bandingkan dan bezakan PHP PDO lwn mysqli: bandingkan dan bezakan Feb 19, 2024 pm 12:24 PM

PDOPDO ialah lapisan abstraksi akses pangkalan data berorientasikan objek yang menyediakan antara muka bersatu untuk PHP, membolehkan anda menggunakan kod yang sama untuk berinteraksi dengan pangkalan data yang berbeza (seperti Mysql, postgresql, oracle). PDO menyembunyikan kerumitan sambungan pangkalan data asas dan memudahkan operasi pangkalan data. Kebaikan dan Kelemahan Kelebihan: Antara muka bersatu, menyokong berbilang pangkalan data, memudahkan operasi pangkalan data, mengurangkan kesukaran pembangunan, menyediakan penyata yang disediakan, meningkatkan keselamatan, menyokong pemprosesan transaksi Kelemahan: prestasi mungkin lebih rendah sedikit daripada sambungan asli, bergantung pada perpustakaan luaran, mungkin meningkatkan overhed, kod demo menggunakan PDO Sambung ke pangkalan data mysql: $db=newPDO("mysql:host=localhost;dbnam

Apakah yang perlu saya lakukan jika php tidak dapat menyambung ke mysqli? Apakah yang perlu saya lakukan jika php tidak dapat menyambung ke mysqli? Nov 09, 2022 am 10:07 AM

Penyelesaian kepada PHP tidak dapat menyambung ke mysqli: 1. Buka fail "php.ini"; 2. Cari "mysqli.reconnect"; 3. Tukar "mysqli.reconnect = OFF" kepada "mysqli.reconnect = on".

Amaran PHP: mysqli_connect(): (HY000/2002): Penyelesaian kepada Sambungan ditolak Amaran PHP: mysqli_connect(): (HY000/2002): Penyelesaian kepada Sambungan ditolak Jun 23, 2023 am 08:54 AM

Jika anda menghadapi mesej ralat berikut semasa menggunakan PHP untuk menyambung ke pangkalan data MySQL: PHPWarning:mysqli_connect():(HY000/2002):Connectionrefused, maka anda boleh cuba menyelesaikan masalah ini dengan mengikuti langkah di bawah. Untuk mengesahkan sama ada perkhidmatan MySQL berjalan seperti biasa, anda harus terlebih dahulu menyemak sama ada perkhidmatan MySQL berjalan seperti biasa Jika perkhidmatan tidak berjalan atau gagal dimulakan, ia boleh menyebabkan ralat ditolak sambungan. boleh awak

Apakah fail yang sedang dijalankan mysql Apakah fail yang sedang dijalankan mysql Apr 11, 2023 am 10:38 AM

Fail mysql yang sedang dijalankan ialah mysqld ialah fail boleh laku, yang mewakili program pelayan Mysql secara langsung boleh memulakan proses pelayan dan mysqld_safe adalah skrip permulaan, yang secara tidak langsung akan memanggil mysqld .

Tutorial terperinci tentang mewujudkan sambungan pangkalan data menggunakan MySQLi dalam PHP Tutorial terperinci tentang mewujudkan sambungan pangkalan data menggunakan MySQLi dalam PHP Jun 04, 2024 pm 01:42 PM

Cara menggunakan MySQLi untuk mewujudkan sambungan pangkalan data dalam PHP: Sertakan sambungan MySQLi (require_once) Cipta fungsi sambungan (functionconnect_to_db) Fungsi sambungan panggilan ($conn=connect_to_db()) Laksanakan pertanyaan ($result=$conn->query()) Tutup sambungan ( $conn->close())

Penyelesaian kepada ralat Fatal PHP: Panggilan ke kaedah yang tidak ditentukan mysqli::prepare() Penyelesaian kepada ralat Fatal PHP: Panggilan ke kaedah yang tidak ditentukan mysqli::prepare() Jun 23, 2023 am 11:21 AM

Apabila menggunakan sambungan mysqli untuk menyambung dan mengendalikan pangkalan data MySQL, anda kadangkala menghadapi ralat PHPFatalerror:Calltoundefinedmethodmysqli::prepare(). Ralat ini biasanya disebabkan oleh sebab-sebab berikut: PHP mempunyai sokongan yang tidak mencukupi untuk sambungan mysqli tidak dimuatkan atau dikonfigurasikan dengan betul terdapat ralat sintaks dalam kod PHP tidak dikonfigurasikan atau berjalan dengan betul;

Wajib dibaca untuk mempelajari MySQL! Penjelasan terperinci tentang pengetahuan asas pernyataan SQL Wajib dibaca untuk mempelajari MySQL! Penjelasan terperinci tentang pengetahuan asas pernyataan SQL Jun 15, 2023 pm 09:00 PM

MySQL ialah sistem pengurusan pangkalan data hubungan sumber terbuka yang digunakan secara meluas dalam pembangunan aplikasi web dan penyimpanan data. Mempelajari bahasa SQL MySQL sangat diperlukan untuk pengurus data dan pembangun. Bahasa SQL adalah bahagian teras MySQL, jadi sebelum mempelajari MySQL, anda perlu mempunyai pemahaman penuh tentang bahasa SQL Artikel ini bertujuan untuk menerangkan pengetahuan asas pernyataan SQL kepada anda secara terperinci, supaya anda boleh memahami penyataan SQL secara berperingkat langkah. SQL ialah singkatan dari Structured Query Language, yang digunakan dalam data hubungan

See all articles