Javascript連接數(shù)據(jù)庫(kù)查詢(xún)并插入數(shù)據(jù)
編譯環(huán)境 : vscode
數(shù)據(jù)庫(kù) : MySQL
類(lèi)庫(kù) : node
一、準(zhǔn)備數(shù)據(jù)庫(kù)
下載MySQL ,借助數(shù)據(jù)庫(kù)圖形工具或者在cmd上面編輯一下代碼
-- 創(chuàng)建數(shù)據(jù)庫(kù) CREATE DATABASE IF NOT EXISTS SchoolTownDB; -- 使用數(shù)據(jù)庫(kù) USE SchoolTownDB; -- 添加數(shù)據(jù)表 CREATE TABLE school( ?? ?id INT, ?? ?NAME VARCHAR(10), ?? ?X DOUBLE, ?? ?Y DOUBLE ?? ?); ?? ? -- 添加數(shù)據(jù) INSERT INTO school VALUE(1,'廣州大學(xué)',NULL,NULL); INSERT INTO school VALUE(1,'中山大學(xué)',NULL,NULL); -- 展示數(shù)據(jù)表 SELECT *FROM school;
下載node:
在官網(wǎng)下載點(diǎn)擊下一步默認(rèn)安裝即可
準(zhǔn)備一個(gè)文件夾:
新建一個(gè)文件夾,待會(huì)在里面放置js文件,命名為Demo
把node編譯完成的文件里面的node_modules
文件夾, 復(fù)制到Demo文件夾中,在連接數(shù)據(jù)庫(kù)就會(huì)發(fā)揮作用.
二、在Vscode中編譯package.json文件
在菜單欄新建一個(gè)終端
在終端輸入下面一句代碼,然后回車(chē).npm init
然后一直回車(chē),知道出現(xiàn)(yes), 然后在終端輸入 yes, 再回車(chē)
于是生成一個(gè)json文件package.json
然后繼續(xù)輸入npm install mysql
運(yùn)行編譯生成package-lock.json
文件
此時(shí)package.json的文件大致如下:
三、用Javascript代碼實(shí)現(xiàn)數(shù)據(jù)庫(kù)的連接
創(chuàng)建一個(gè)index.js文件,在里面編輯代碼:
// 引入mysql模塊 let mysql = require("mysql"); //創(chuàng)建連接對(duì)象 let connection =mysql.createConnection({ ? ? host: "localhost",//連接本地計(jì)算機(jī) ? ? port:3306,//端口 ? ? user:"root",//數(shù)據(jù)庫(kù)賬號(hào) ? ? password:"qq124519",//密碼 ? ? database:"SchoolTownDB"http://連接的數(shù)據(jù)庫(kù)名 }); //調(diào)用connect方法創(chuàng)造連接 connection.connect((err)=>{//回調(diào)函數(shù),如果報(bào)錯(cuò)會(huì)把err填充上 ? ? if(err){ ? ? ? ? console.error("連接失敗"+err.stack);//打印堆棧信息 ? ? ? ? return; ? ? } ? ? console.log("連接成功"); }); //關(guān)閉數(shù)據(jù)庫(kù)連接 connection.end();
測(cè)試代碼, 在終端輸入
?node .\index.js
回車(chē)運(yùn)行
四、查詢(xún)和插入數(shù)據(jù)
SQL語(yǔ)句的查詢(xún):
//SQL語(yǔ)句的查詢(xún) connection.query("SELECT *FROM school", (err, result) => { ? ? if (err) { ? ? ? ? console.error("查詢(xún)失敗" + err.message); ? ? ? ? result; ? ? } ? ? console.log(result); });
運(yùn)行的代碼也是在終端輸入node .\index.js
為數(shù)據(jù)庫(kù)插入數(shù)據(jù):
let sql = "insert into school values(?,?,?,?)";//?是占位符 //設(shè)置參數(shù) let params=[3,"華南理工大學(xué)",null,null]; connection.query(sql,params,(err,result)=>{ ? ? if (err) { ? ? ? ? console.error("插入失敗" + err.message); ? ? ? ? result; ? ? } ? ? console.log("插入成功"); });
運(yùn)行的代碼也是在終端輸入 node .\index.js
測(cè)試結(jié)果如下:
到此這篇關(guān)于Javascript連接數(shù)據(jù)庫(kù)查詢(xún)并插入數(shù)據(jù)的文章就介紹到這了,更多相關(guān)Javascript連接數(shù)據(jù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
JS實(shí)現(xiàn)用戶(hù)注冊(cè)時(shí)獲取短信驗(yàn)證碼和倒計(jì)時(shí)功能
在用戶(hù)注冊(cè)時(shí),通常需要短信驗(yàn)證碼,而且為了交互效果,也需要增加倒計(jì)時(shí)。該如何實(shí)現(xiàn)獲取驗(yàn)證碼倒計(jì)時(shí)功能呢?下面小編給大家分享JS實(shí)現(xiàn)用戶(hù)注冊(cè)時(shí)獲取短信驗(yàn)證碼和倒計(jì)時(shí)的代碼,一起看看吧2016-10-10javascript document.referrer 用法
document對(duì)象的referrer屬性,返回導(dǎo)航到當(dāng)前網(wǎng)頁(yè)的超鏈接所在網(wǎng)頁(yè)的URL。2009-04-04詳解微信小程序框架wepy踩坑記錄(與vue對(duì)比)
這篇文章主要介紹了詳解微信小程序框架wepy踩坑記錄(與vue對(duì)比),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-03-03微信小程序中實(shí)現(xiàn)車(chē)牌輸入功能
我們都知道車(chē)牌是有一定規(guī)律的,本文實(shí)現(xiàn)了微信小程序中實(shí)現(xiàn)車(chē)牌輸入功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-05-05JavaScript事件學(xué)習(xí)小結(jié)(一)事件流
這篇文章主要介紹了JavaScript事件學(xué)習(xí)小結(jié)(一)事件流的相關(guān)資料,需要的朋友可以參考下2016-06-06js實(shí)現(xiàn)運(yùn)行代碼需要刷新的解決方法
js實(shí)現(xiàn)運(yùn)行代碼需要刷新的解決方法...2007-08-08微信小程序?qū)崿F(xiàn)活動(dòng)報(bào)名登記功能(實(shí)例代碼)
這篇文章主要介紹了微信小程序?qū)崿F(xiàn)活動(dòng)報(bào)名登記,本篇將介紹使用微信小程序?qū)崿F(xiàn)發(fā)起一個(gè)活動(dòng)報(bào)名的設(shè)計(jì),以此為基礎(chǔ),我們可以掌握微信小程序表單的基本用法,進(jìn)而在諸如疫情信息登記、出入報(bào)備等場(chǎng)景中使用小程序進(jìn)行開(kāi)發(fā),滿(mǎn)足相關(guān)的需求,需要的朋友可以參考下2022-09-09