当前位置:首页 > JavaScript

js实现数据库操作

2026-01-31 08:09:27JavaScript

JavaScript 实现数据库操作的方法

JavaScript 可以通过多种方式操作数据库,包括浏览器端的本地存储、服务器端的数据库连接以及使用 ORM 框架等。以下是几种常见的实现方法:

浏览器端存储(客户端数据库)

1. Web Storage API(localStorage/sessionStorage)
适用于简单的键值对存储,数据保存在浏览器中。

// 存储数据
localStorage.setItem('key', 'value');

// 读取数据
const value = localStorage.getItem('key');

// 删除数据
localStorage.removeItem('key');

2. IndexedDB
适用于存储结构化数据,支持事务和索引查询。

const request = indexedDB.open('myDatabase', 1);

request.onupgradeneeded = (event) => {
  const db = event.target.result;
  const store = db.createObjectStore('users', { keyPath: 'id' });
};

request.onsuccess = (event) => {
  const db = event.target.result;
  const transaction = db.transaction('users', 'readwrite');
  const store = transaction.objectStore('users');

  // 添加数据
  store.add({ id: 1, name: 'Alice' });

  // 查询数据
  const getRequest = store.get(1);
  getRequest.onsuccess = () => console.log(getRequest.result);
};

服务器端数据库操作

1. 使用 Node.js 连接关系型数据库(如 MySQL)
通过 mysqlmysql2 模块连接数据库。

const mysql = require('mysql2');
const connection = mysql.createConnection({
  host: 'localhost',
  user: 'root',
  database: 'test'
});

connection.query('SELECT * FROM users', (err, results) => {
  console.log(results);
});

connection.end();

2. 使用 MongoDB(NoSQL 数据库)
通过 mongodbmongoose 驱动操作。

const { MongoClient } = require('mongodb');
const url = 'mongodb://localhost:27017';
const client = new MongoClient(url);

async function run() {
  await client.connect();
  const db = client.db('test');
  const collection = db.collection('users');

  // 插入数据
  await collection.insertOne({ name: 'Bob' });

  // 查询数据
  const users = await collection.find({}).toArray();
  console.log(users);
}

run().catch(console.error);

使用 ORM 框架

1. Sequelize(支持 MySQL/PostgreSQL/SQLite 等)

const { Sequelize, DataTypes } = require('sequelize');
const sequelize = new Sequelize('sqlite::memory:');

const User = sequelize.define('User', {
  name: DataTypes.STRING
});

async function test() {
  await sequelize.sync();
  await User.create({ name: 'Charlie' });
  const users = await User.findAll();
  console.log(users);
}

test();

2. Prisma(现代 ORM 工具)

js实现数据库操作

const { PrismaClient } = require('@prisma/client');
const prisma = new PrismaClient();

async function main() {
  await prisma.user.create({ data: { name: 'Dave' } });
  const users = await prisma.user.findMany();
  console.log(users);
}

main().finally(() => prisma.$disconnect());

注意事项

  • 浏览器端存储(如 IndexedDB)受同源策略限制,无法跨域访问。
  • 服务器端数据库操作需注意安全性(如 SQL 注入),推荐使用参数化查询或 ORM。
  • 对于实时数据同步,可考虑 Firebase 或 Supabase 等 BaaS 服务。

标签: 操作数据库
分享给朋友:

相关文章

vue实现选题操作

vue实现选题操作

Vue 实现选题操作 在 Vue 中实现选题操作通常涉及数据绑定、事件处理和状态管理。以下是几种常见的实现方式: 单选实现 使用 v-model 绑定单选值,通过 radio 或 select 元素…

vue操作权限实现

vue操作权限实现

Vue 权限控制实现方案 Vue 中实现权限控制通常涉及前端路由、按钮/组件级权限、接口权限等多个层面。以下是常见的实现方法: 路由权限控制 通过动态路由实现,根据用户权限过滤可访问的路由: 定…

react如何操作节点数据

react如何操作节点数据

操作节点数据的常见方法 在React中操作DOM节点数据通常通过ref实现,以下是几种典型场景的解决方案: 使用useRef创建引用 通过useRef钩子创建引用并绑定到DOM元素,后续可直接操作节…

react如何连接mssql数据库

react如何连接mssql数据库

在React中连接MSSQL数据库 React本身是前端框架,不直接连接数据库。需要通过后端服务(如Node.js)与MSSQL交互,React再通过API调用后端。以下是完整方案: 后端服…

react如何请求数据库数据

react如何请求数据库数据

在React中请求数据库数据的常见方法 React本身是一个前端库,不直接与数据库交互。通常需要通过后端API或服务来间接访问数据库。以下是几种常见实现方式: 使用Fetch API与后端通信 通过…

php实现数据库备份

php实现数据库备份

使用 mysqldump 命令 在 PHP 中调用系统命令 mysqldump 是最常见的数据库备份方法。该方法适用于 MySQL 或 MariaDB 数据库。 $dbHost = 'localho…