PHP MySQL फ़ंक्शन

PHP MySQL इंट्रोडक्शन

MySQL फ़ंक्शन आपको MySQL डाटाबेस सर्वर को पहुंचने की अनुमति देते हैं。

इनस्टाल करें

इस क्लास फ़ंक्शन का बिना काम करने के लिए, PHP को कम्पाइल करते समय MySQL के समर्थन को जोड़ना आवश्यक है。

कम्पाइल करते समय, केवल --with-mysql[=DIR] कॉन्फ़िगरेशन विकल्प का उपयोग करें, जहां वैकल्पिक [DIR] MySQL के इनस्टालेशन डिरेक्ट्री को संकेत करता है。

हालांकि इस MySQL एक्सटेंशन लाइब्रेरी MySQL 4.1.0 और उसके बाद की संस्करणों से समर्थन प्रदान करती है, लेकिन यह उन संस्करणों द्वारा प्रदान की गई अतिरिक्त विकल्पों को नहीं समर्थित करती है। इन विकल्पों का उपयोग करने के लिए MySQLi एक्सटेंशन लाइब्रेरी का उपयोग करें。

mysql एक्सटेंशन लाइब्रेरी और mysqli एक्सटेंशन लाइब्रेरी को साथ-साथ इनस्टाल करना है तो, किसी भी टकराव को बचाने के लिए एक ही क्लायंट लाइब्रेरी का उपयोग करना आवश्यक है。

Linux प्रणाली पर इनस्टाल करें

PHP 4

डिफ़ॉल्ट में --with-mysql विकल्प सक्षम किया गया है। इस डिफ़ॉल्ट व्यवहार को --without-mysql कॉन्फ़िगरेशन विकल्प के द्वारा निष्क्रिय किया जा सकता है। MySQL को सक्षम करने के लिए इसके साथ इनस्टालेशन डिरेक्ट्री को निर्दिष्ट न करने पर, PHP बांधे MySQL क्लायंट कनेक्शन लाइब्रेरी का उपयोग करेगा。

MySQL का उपयोग करने वाले अन्य अनुप्रयोग (उदाहरण के लिए auth-mysql) के उपयोगकर्ता बांधे लाइब्रेरी का उपयोग न करें, बल्कि MySQL के इनस्टालेशन डिरेक्ट्री को निर्दिष्ट करें, जैसे: --with-mysql=/path/to/mysql। इससे PHP को MySQL के साथ इनस्टालेशन के साथ आगे बढ़ने वाले क्लायंट कनेक्शन लाइब्रेरी का उपयोग करना मजबूर किया जाएगा, इससे किसी भी टकराव को बचाया जा सकेगा।

PHP 5+

MySQL डिफ़ॉल्ट में नहीं सक्षम है और न ही बांधे MySQL लाइब्रेरी है। --with-mysql[=DIR] कॉन्फ़िगरेशन विकल्प का उपयोग करके MySQL के समर्थन को जोड़ें। MySQL के समर्थन को जोड़ने के लिए इससे भी उपयोग किया जा सकता है MySQL हेड फ़ाइल और लाइब्रेरी डाउनलोड करें。

Windows प्रणाली पर इनस्टाल करें

PHP 4

PHP MySQL एक्सटेंशन PHP में पूर्व-कम्पाइल किया गया है。

PHP 5+

MySQL मूवला डिफ़ॉल्ट नहीं सक्षम किया गया है, इसलिए php.ini में php_mysql.dll डायनेमिक लिंक लाइब्रेरी को सक्षम करना आवश्यक है। इसके अलावा, PHP को MySQL क्लायंट कनेक्शन लाइब्रेरी का उपयोग करना होता है। PHP के Windows एजेंडा में libmysql.dll शामिल है, ताकि PHP MySQL के साथ संवाद कर सके, इस फ़ाइल को Windows के सिस्टम पथ PATH में रखना आवश्यक है।

किसी भी PHP एक्सटेंशन लाइब्रेरी (उदाहरण के लिए php_mysql.dll) को सक्रिय करने के लिए, PHP निर्देश extension_dir को PHP एक्सटेंशन लाइब्रेरी के स्थान के रूप में सेट करना चाहिए। PHP 5 में extension_dir का एक उदाहरण c:\php\ext है।

टिप्पणी:यदि वेब सर्वर शुरू करने के दौरान ऐसी तरह की गलती दिखाई देती है: "Unable to load dynamic library './php_mysql.dll'" तो इसका कारण यह है कि सिस्टम php_mysql.dll और / या libmysql.dll नहीं पा सका है।

रनटाइम कॉन्फ़िगरेशन

MySQL फ़ंक्शन के व्यवहार php.ini में सेट किए गए प्रभावित होता है।

MySQL कॉन्फ़िगरेशन विकल्पः

नाम दिव्यस्वरूप वर्णन संशोधन की योग्य
mysql.allow_persistent "1" MySQL के स्थायी कनेक्शन को अनुमति देने के लिए। PHP_INI_SYSTEM
mysql.max_persistent "-1" प्रत्येक प्रक्रिया में अधिकतम स्थायी कनेक्शन संख्या। PHP_INI_SYSTEM
mysql.max_links "-1" प्रत्येक प्रक्रिया में अधिकतम कनेक्शन संख्या, स्थायी कनेक्शन सहित। PHP_INI_SYSTEM
mysql.trace_mode "0" ट्रैकिंग मोड। PHP 4.3.0 से उपलब्ध है। PHP_INI_ALL
mysql.default_port NULL दिव्यस्वरूप कनेक्शन डाटाबेस के लिए TCP पोर्ट संख्या निर्दिष्ट करें। PHP_INI_ALL
mysql.default_socket NULL दिव्यस्वरूप सॉकेट नाम। PHP 4.0.1 से उपलब्ध है। PHP_INI_ALL
mysql.default_host NULL दिव्यस्वरूप सर्वर पता। SQL सुरक्षा मोड के लिए अनुप्रयुक्त नहीं है। PHP_INI_ALL
mysql.default_user NULL दिव्यस्वरूप उपयोगकर्ता नाम। SQL सुरक्षा मोड के लिए अनुप्रयुक्त नहीं है। PHP_INI_ALL
mysql.default_password NULL दिव्यस्वरूप पासवर्ड। SQL सुरक्षा मोड के लिए अनुप्रयुक्त नहीं है। PHP_INI_ALL
mysql.connect_timeout "60" कनेक्शन अवधि सेकंड। PHP_INI_ALL

संसाधन प्रकार

MySQL मोड्यूल में दो प्रकार के संसाधन उपयोग किए गए हैं। पहला है डाटाबेस का कनेक्शन हैंडल और दूसरा है SQL क्वेरी द्वारा प्रदान किया गया परिणामसेट है।

PHP MySQL फ़ंक्शन

PHP:इस तर्क को समर्थन करने वाले अधिकतम PHP संस्करण को सूचित करता है।

तर्क वर्णन PHP
mysql_affected_rows() पिछले MySQL ऑपरेशन से प्रभावित रिकॉर्ड की पंक्तियों की संख्या प्राप्त करता है。 3
mysql_change_user() अनुमति नहीं है। सक्रिय कनेक्शन में लॉगिन करने वाले उपयोगकर्ता को बदलें 3
mysql_client_encoding() वर्तमान कनेक्शन के चारकीकरण के नाम को वापस करता है 4
mysql_close() अस्थायी MySQL कनेक्शन बंद करें。 3
mysql_connect() अस्थायी MySQL कनेक्शन खोलें。 3
mysql_create_db() अनुमति नहीं है। एक नया MySQL डाटाबेस बनाएं। mysql_query() का प्रयोग करें。 3
mysql_data_seek() रिकॉर्ड संकेतक को खिस्काएं। 3
mysql_db_name() mysql_list_dbs() के आह्वान से डाटाबेस नाम को वापस करता है。 3
mysql_db_query()

अनुमति नहीं है। एक MySQL क्वेरी भेजें。

mysql_select_db() और mysql_query() का प्रयोग करें。

3
mysql_drop_db()

अनुमति नहीं है। एक MySQL डाटाबेस को नष्ट करें (छोड़ें)。

使用 mysql_query() 代替。

3
mysql_errno() पिछले MySQL ऑपरेशन में त्रुटि सूचना का नंबरकोड वापस करता है。 3
mysql_error() पिछले MySQL ऑपरेशन से उत्पन्न टेक्स्ट त्रुटि सूचना वापस करता है。 3
mysql_escape_string()

अनुमति नहीं है। mysql_query के लिए एक स्ट्रिंग को इस्केप करें。

mysql_real_escape_string() का प्रयोग करें。

4
mysql_fetch_array() परिणाम से एक पंक्ति को संबंधित एकल मान, नंबरों के एकल मान या दोनों के रूप में प्राप्त करता है。 3
mysql_fetch_assoc() परिणाम से एक पंक्ति को संबंधित एकल मान के रूप में प्राप्त करता है。 4
mysql_fetch_field() परिणाम से स्तम्भ सूचना प्राप्त करता है और उसे वस्तु के रूप में वापस करता है。 3
mysql_fetch_lengths() परिणाम से प्रत्येक क्षेत्र के सामग्री की लंबाई प्राप्त करता है。 3
mysql_fetch_object() परिणाम से एक पंक्ति को वस्तु के रूप में प्राप्त करता है。 3
mysql_fetch_row() परिणाम से एक पंक्ति को नंबरों के एकल मान के रूप में प्राप्त करता है。 3
mysql_field_flags() परिणाम से विशिष्ट क्षेत्र से जुड़े संकेत प्राप्त करता है。 3
mysql_field_len() विशिष्ट क्षेत्र की लंबाई वापस करता है。 3
mysql_field_name() 取得结果中指定字段的字段名。 3
mysql_field_seek() 将结果集中的指针设定为指定的字段偏移量。 3
mysql_field_table() 取得指定字段所在的表名。 3
mysql_field_type() 取得结果集中指定字段的类型。 3
mysql_free_result() 释放结果内存。 3
mysql_get_client_info() 取得 MySQL 客户端信息。 4
mysql_get_host_info() 取得 MySQL 主机信息。 4
mysql_get_proto_info() 取得 MySQL 协议信息。 4
mysql_get_server_info() 取得 MySQL 服务器信息。 4
mysql_info() 取得最近一条查询的信息。 4
mysql_insert_id() 取得上一步 INSERT 操作产生的 ID。 3
mysql_list_dbs() 列出 MySQL 服务器中所有的数据库。 3
mysql_list_fields()

不赞成。列出 MySQL 结果中的字段。

使用 mysql_query() 代替。

3
mysql_list_processes() 列出 MySQL 进程。 4
mysql_list_tables()

不赞成。列出 MySQL 数据库中的表。

使用Use mysql_query() 代替。

3
mysql_num_fields() 取得结果集中字段的数目。 3
mysql_num_rows() 取得结果集中行的数目。 3
mysql_pconnect() 打开一个到 MySQL 服务器的持久连接。 3
mysql_ping() Ping 一个服务器连接,如果没有连接则重新连接。 4
mysql_query() 发送一条 MySQL 查询。 3
mysql_real_escape_string() 转义 SQL 语句中使用的字符串中的特殊字符。 4
mysql_result() परिणाम डाटा प्राप्त करें。 3
mysql_select_db() MySQL डाटाबेस चुनें。 3
mysql_stat() वर्तमान सिस्टम स्थिति प्राप्त करें。 4
mysql_tablename() इसे स्वीकार नहीं करते। तालिका नाम प्राप्त करें। mysql_query() का प्रयोग करें। 3
mysql_thread_id() वर्तमान थ्रेड की आईडी वापस करें। 4
mysql_unbuffered_query() MySQL को एक SQL क्वेरी भेजें (परिणाम को प्राप्त नहीं करें / कैश करें)。 4

PHP MySQL स्थिर

PHP 4.3.0 के बाद के संस्करणों में, mysql_connect() फ़ंक्शन और mysql_pconnect() फ़ंक्शन में अधिक क्लायंट टैग सेट करने की अनुमति दी जाती है:

PHP:इस स्थिर को सहारा देने वाले आधिकारिक PHP संस्करण

स्थिर वर्णन PHP
MYSQL_CLIENT_COMPRESS कम्प्रेसेड कॉम्यूनिकेशन प्रोटोकॉल का इस्तेमाल करें。 4.3
MYSQL_CLIENT_IGNORE_SPACE फ़ंक्शन नाम के बाद खाली स्थान छोड़ने की अनुमति दी जाती है。 4.3
MYSQL_CLIENT_INTERACTIVE संपर्क बंद करने से पहले अनुमति दिए गए इंटरैक्टिव अवकाश समय 4.3
MYSQL_CLIENT_SSL SSL एनक्रिप्शन का इस्तेमाल करें (केवल MySQL क्लायंट लाइब्रेरी संस्करण 4+ में उपलब्ध है)。 4.3

mysql_fetch_array() फ़ंक्शन एक स्थिर के द्वारा वापस प्राप्त होने वाले आरे के प्रकार को प्रदर्शित करता है:

स्थिर वर्णन PHP
MYSQL_ASSOC वापस प्राप्त होने वाले डाटा की स्तम्भ को फ़ील्ड नाम के रूप में इंडेक्स के रूप में इस्तेमाल किया जाता है。  
MYSQL_BOTH वापस प्राप्त होने वाले डाटा की स्तम्भ को फ़ील्ड नाम और नंबर के रूप में इंडेक्स के रूप में इस्तेमाल किया जाता है。  
MYSQL_NUM

वापस प्राप्त होने वाले डाटा की स्तम्भ को नंबर के रूप में इंडेक्स के रूप में इस्तेमाल किया जाता है。

सूची 0 से शुरू होती है, जो वापस प्राप्त होने वाले पहले क्षेत्र को प्रदर्शित करती है。