本篇內(nèi)容介紹了“怎么使用Node.js調(diào)用SQL存儲(chǔ)過程并獲取結(jié)果”的有關(guān)知識(shí),在實(shí)際案例的操作過程中,不少人都會(huì)遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

成都創(chuàng)新互聯(lián)專注于網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)、網(wǎng)站制作、網(wǎng)站開發(fā)。公司秉持“客戶至上,用心服務(wù)”的宗旨,從客戶的利益和觀點(diǎn)出發(fā),讓客戶在網(wǎng)絡(luò)營銷中找到自己的駐足之地。尊重和關(guān)懷每一位客戶,用嚴(yán)謹(jǐn)?shù)膽B(tài)度對(duì)待客戶,用專業(yè)的服務(wù)創(chuàng)造價(jià)值,成為客戶值得信賴的朋友,為客戶解除后顧之憂。
在使用Node.js連接數(shù)據(jù)庫之前,需要安裝相應(yīng)的Node.js數(shù)據(jù)庫驅(qū)動(dòng)程序。本文以MySQLjs庫為例,首先需要在Node.js項(xiàng)目中引入這個(gè)庫:
var mysql = require('mysql');
在連接數(shù)據(jù)庫之前,需要先創(chuàng)建一個(gè)MySQL連接池。
var pool = mysql.createPool({
connectionLimit : 10,
host : 'example.org',
user : 'bob',
password : 'secret',
database : 'my_db'
});
請(qǐng)確保將host、user、password和database替換為正確的數(shù)據(jù)庫連接信息。在連接池成功創(chuàng)建后,即可使用以下代碼連接數(shù)據(jù)庫。
pool.getConnection(function(err, connection) {
// 在此處處理連接錯(cuò)誤
connection.query('SELECT * FROM customers', function(err, rows) {
// 在此處處理查詢結(jié)果
connection.release(); // 釋放連接
});
});
在釋放連接之前,需要注意一件事情:使用MySQL存儲(chǔ)過程時(shí),無需釋放連接。因?yàn)榇鎯?chǔ)過程會(huì)自動(dòng)關(guān)閉連接。在下一個(gè)示例中,你將了解如何調(diào)用存儲(chǔ)過程。
假設(shè)你有一個(gè)名為getCustomers的存儲(chǔ)過程,其參數(shù)列表如下:
in_start:以零為基礎(chǔ)的頁面編號(hào)。
in_amount:要顯示的記錄數(shù)。
out_total_rows:總行數(shù)。
out_total_pages:總頁數(shù)。
以下示例演示了如何使用Node.js調(diào)用存儲(chǔ)過程。
pool.getConnection(function(err, connection) {
// 在此處處理連接錯(cuò)誤
connection.query('CALL getCustomers(?, ?, @total_rows, @total_pages)', [0, 10], function(err, rows) {
if (err) throw err;
// 執(zhí)行第二個(gè)查詢以獲取返回值
connection.query('SELECT @total_rows AS total_rows, @total_pages AS total_pages', function(err, rows) {
if (err) throw err;
var totalRows = rows[0][0].total_rows;
var totalPages = rows[1][0].total_pages;
console.log('Total rows: ' + totalRows);
console.log('Total pages: ' + totalPages);
connection.release();
})
});
});
在第一行中,我們調(diào)用了存儲(chǔ)過程。請(qǐng)注意,我們使用?代替存儲(chǔ)過程中的每個(gè)參數(shù)。在例子中,我們?yōu)榇鎯?chǔ)過程傳遞了兩個(gè)參數(shù):0和10。@total_rows和@total_pages是存儲(chǔ)過程的兩個(gè)輸出參數(shù)。在第一條查詢執(zhí)行完成之后,我們需要執(zhí)行另一條SQL查詢來獲取帶有輸出參數(shù)的值。在獲取輸出參數(shù)之后,即可對(duì)這些值進(jìn)行操作。
“怎么使用Node.js調(diào)用SQL存儲(chǔ)過程并獲取結(jié)果”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!
當(dāng)前文章:怎么使用Node.js調(diào)用SQL存儲(chǔ)過程并獲取結(jié)果
分享路徑:http://www.js-pz168.com/article38/pojdsp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、網(wǎng)站設(shè)計(jì)、自適應(yīng)網(wǎng)站、做網(wǎng)站、網(wǎng)站排名、服務(wù)器托管
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)