當前位置:首頁 » 操作系統 » js操作資料庫

js操作資料庫

發布時間: 2025-07-22 11:58:07

① js 如何讀取資料庫信息

javaScript讀取資料庫信息的方法如下

JavaScript 本身作為客戶端腳本語言,無法直接讀取伺服器端的資料庫。但可以通過以下步驟間接獲取資料庫信息:

  1. 使用Ajax請求

    • JavaScript可以通過Ajax技術向伺服器端發送請求。
    • 這個請求可以是一個HTTP GET或POST請求,具體取決於你的需求和伺服器端介面的設計。
  2. 伺服器端腳本處理請求

    • 伺服器端需要有一個腳本來處理這個請求,這個腳本可以是PHP、Python、Node.js等編寫的。
    • 伺服器端腳本連接到資料庫,並執行相應的sql查詢或資料庫操作來獲取數據。
  3. 伺服器端返回數據

    • 伺服器端腳本將查詢結果或資料庫操作的結果轉換為適當的格式,並通過HTTP響應返回給客戶端。
    • response.write是其中一種方式,但在現代Web開發中,更常見的是使用JSON格式的數據,並通過res.json或類似的函數返回數據。
  4. JavaScript處理響應

    • Ajax請求的回調函數會接收到伺服器返回的響應數據。
    • JavaScript可以解析這些數據,並在頁面上使用這些數據。

示例流程

  • 客戶端:使用JavaScript的fetch或XMLHttpRequest對象發送Ajax請求到伺服器。
  • 伺服器端:接收請求,執行資料庫查詢,獲取數據,將數據轉換為JSON格式,並通過HTTP響應返回。
  • 客戶端:接收響應,解析JSON數據,並在頁面上使用這些數據。

這種方法確保了資料庫的安全性和隱私性,因為資料庫訪問邏輯在伺服器端執行,客戶端只能通過伺服器端提供的介面獲取數據。

② 如何用javascript操作access資料庫

1.Access資料庫名為 MyData.Mdb, 裡面建了一個名為count的表,表由兩個 欄位組成: ID和COUNT,表裡有一條數據: ('count','100')。
文本文件名為 count.txt,裡面隨便寫入一個數字。
靜態頁面名為Cnt.htm。
2.以上3個文件都放在同一目錄下。
由於採用Access資料庫,而它採用非標准SQL語法,所以要注意在表名和欄位名上需要加方括弧: []
3.下面是頁面里的代碼:其中getCountFromDB方法是對Access資料庫進行操作,getCountFromTxt方法是對txt純文本進行操作,這兩個方法都在本地執行通過。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<SCRIPT LANGUAGE="JavaScript">
<!--
function getCountFromDB() {
//以當前頁面文件為基礎,找到文件所在的絕對路徑。
var filePath = location.href.substring(0, location.href.indexOf("Cnt.htm"));
var path = filePath + "MyData.mdb";
//去掉字元串中最前面的"files://"這8個字元。
pathpath = path.substring(8);
var updateCnt = 0;

//生成查詢和更新用的sql語句。
var sqlSelCnt = "SELECT COUNT FROM [COUNT] WHERE ID = 'count'";
var sqlUpdCnt = "UPDATE [COUNT] SET [COUNT] = '";

//建立連接,並生成相關字元串 www.knowsky.com。
var con = new ActiveXObject("ADODB.Connection");
con.Provider = "Microsoft.Jet.OLEDB.4.0";
con.ConnectionString = "Data Source=" + path;

con.open;
var rs = new ActiveXObject("ADODB.Recordset");
rs.open(sqlSelCnt, con);
while (!rs.eof) {
var cnt = rs.Fields("COUNT");
document.write(cnt);
//將取得結果加1後更新資料庫。
updateCnt = cnt * 1 + 1;
rs.moveNext;
}
rs.close();
rs = null;

sqlUpdCntsqlUpdCnt = sqlUpdCnt + updateCnt + "'";
con.execute(sqlUpdCnt);

con.close();
con = null;
}

function getCountFromTxt() {
var filePath = location.href.substring(0, location.href.indexOf("Cnt.htm"));
var path = filePath + "count.txt";
pathpath = path.substring(8);
var nextCnt = 0;

var fso, f1, ts, s;
//以只讀方式打開文本文件。
var ForReading = 1;
//以讀寫方式打開文本文件。
var ForWriting = 2;

fso = new ActiveXObject("Scripting.FileSystemObject");
f1 = fso.GetFile(path);
ts = f1.OpenAsTextStream(ForReading, true);
s = ts.ReadLine();
nextCnt = eval(s) + 1;
document.write("now count is :" + s);
ts.Close();

ts = f1.OpenAsTextStream(ForWriting, true);
ts.WriteLine(nextCnt);
ts.close();
}
//-->
</SCRIPT>
</HEAD>

<BODY>
<SCRIPT LANGUAGE="JavaScript">
<!--
getCountFromTxt();
//-->
</SCRIPT>
</BODY>
</HTML>
4.用這種方法來讀寫資料庫,只適合做計數器和留言版這樣的不需要保密性的工作,畢竟代碼全是用javascript寫成的,誰都可以看到,然後就可以得到路徑把db文件下載下來進行分析,所以沒辦法用它來保存一些不想讓別人知道的東西。

③ js如何連接和操作騰訊雲mysql資料庫

首先是登陸騰訊雲,登陸之後可以領取新手禮包,如圖

二、使用一個demo來說明如何操作雲mysql資料庫

    1.在實例上上新建一個為nodejs的資料庫,然後新建一個為employee的表,新建四個欄位 name sex age email除了年齡為int其它的全部為varchar格式
    2.新建一個TimLiu的文件夾,打開cmd,cd TimLiu, 初始化項目npm init ,按照它的提示一步一步的操作即可,安裝mysql模塊,npm insitall mysql, 這個模塊的作用主要是連接mysql資料庫。
    3.新建一個model.js 文件,

  • var mysql = require(『mysql』);

  • var connection = mysql.createConnection({

  • host:'',

  • user:'root',

  • password:'123abc',

  • database:' nodejs',

  • port:6445

  • })

  • connection.connect();

  • 這里的host為我們在騰訊雲上開通的外地址,埠號也是在外網地址裡面,注意要把外網地址寫分開,用戶為默認的管理員用戶,密碼為我們在雲平台上設置的密碼,資料庫為我們創建的nodejs資料庫。
    接下來我們對資料庫進行增刪改查操作

  • /**

  • * 增加員工

  • */function addEmployee(){

  • var employeeInsertSql = 'INSERT INTO employee(name,sex,age,email) VALUES(?,?,?,?)';

  • var employeeInsertSql_Params = ['Tim','男',22,'[email protected]']

  • connection.query(employeeInsertSql,employeeInsertSql_Params,function(err,result){

  • if(err) console.log('[INSERT ERR]-',err.message);

  • console.log(result);

  • }) }addEmployee()

  • }

  • /**

  • * 更新員工

  • */

  • function insertEmployee(){

  • var employeeUpdateSql = "UPDATE employee SET name = ? WHERE age =?";

  • var employeeUpdateSql_Params = ['Peter',22];

  • connection.query(employeeUpdateSql,employeeUpdateSql_Params,function(err,result){

  • if(err) console.log('[UPDATE ERR]-',err.message);

  • console.log(result);

  • })}



  • insertEmployee();

  • /**

  • *查詢員工

  • */ function getEmployee(){

  • var employeeGetSql = "SELECT * FROM employee";

  • connection.query(employeeGetSql,function(err,result){

  • if(err) console.log('[SELECT ERR]-',err.message);

  • console.log(result);

  • })}

  • getEmployee();

  • /**

  • *刪除員工

  • */ function deleteEmployee(){

  • var employeeDeleteSql = "DELETE employee WHERE name = ?";

  • var employeeDeleteSql_Params = 'Peter';

  • connection.query(employeeDeleteSql,employeeDeleteSql_Params,function(err,result){

  • if(err) console.log('[DELETE ERR]-',err.message);

  • console.log(result);

  • })

  • }deleteEmployee();

  • 這樣我們就可以愉快的操作資料庫了

    如果大家想把項目更模塊化操作,可在model下面新建一個employee_two.js,代碼如下

  • var mysql = require('mysql');var connection = mysql.createConnection({

  • host:'',

  • user:'root',

  • password:'',

  • database:'nodejs',

  • port:})connection.connect();/**

  • * 增加員工

  • * @param {String} employee

  • * @param {Function} callback

  • */exports.addEmployee=function(employee,callback){

  • var employeeInsertSql = 'INSERT INTO employee(name,sex,age,email) VALUES(?,?,?,?)';

  • var employeeInsertSql_Params = [employee.name,employee.sex,employee.age,employee.email]

  • connection.query(employeeInsertSql,employeeInsertSql_Params,callback)}/**

  • * 更新員工

  • * @param {String} employee

  • * @param {Function} callback

  • */exports.updateEmployee = function(name,age){

  • var employeeUpdateSql = "UPDATE employee SET name = ? WHERE age =?";

  • var employeeUpdateSql_Params = ['Peter',22];

  • connection.query(employeeUpdateSql,employeeUpdateSql_Params,function(err,result){

  • if(err) console.log('[UPDATE ERR]-',err.message);

  • console.log(result);

  • })}/**

  • * 查詢員工

  • *

  • */exports.getEmployee = function(){

  • var employeeGetSql = "SELECT * FROM employee";

  • connection.query(employeeGetSql,callback)}/**

  • * 刪除員工

  • * @param {String} name

  • */exports.deleteEmployee = function(name){

  • var employeeDeleteSql = "DELETE employee WHERE name = ?";

  • var employeeDeleteSql_Params = 'Peter';

  • connection.query(employeeDeleteSql,employeeDeleteSql_Params,callback)

  • }再在根目錄下新建index.js,代碼如下var db = require('./model/employee_two');//增加員工var employee = {

  • name:'lisa',

  • age:22,

  • sex:"女",

  • email:'[email protected]'}db.addEmployee(employee,function(err,result){

  • if(err) console.log("[INSERT err]-",err.message)

  • console.log(result);})//刪除員工db.deleteEmployee('Peter',function(err,result){

  • if(err) console.log("[DELETE err]-",err.message)

  • console.log(result);})//更新員工db.updateEmployee('Tim',23,function(err,result){

  • if(err) console.log("[UPDATE err]-",err.message)

  • console.log(result);})//查詢員工db.getEmployee(function(err,result){

  • if(err) console.log("[GET err]-",err.message)

  • console.log(result);})

熱點內容
新版我的世界比較好的伺服器 發布:2025-07-22 18:39:29 瀏覽:596
acfun伺服器地址 發布:2025-07-22 18:29:11 瀏覽:952
ftp禁止刪除 發布:2025-07-22 18:29:06 瀏覽:601
蘋果手機5怎麼設密碼 發布:2025-07-22 18:23:51 瀏覽:960
蔚來es8買哪個配置性價比高 發布:2025-07-22 18:21:46 瀏覽:275
寶可夢我的世界自創伺服器 發布:2025-07-22 18:09:31 瀏覽:226
男人的圖片密碼多少 發布:2025-07-22 18:07:45 瀏覽:367
ftp直接訪問nas 發布:2025-07-22 18:00:53 瀏覽:233
java的對象的屬性值 發布:2025-07-22 17:58:59 瀏覽:745
黑魂的伺服器是電腦和主機共用嗎 發布:2025-07-22 17:56:35 瀏覽:630