Nodejs 请教Mac下安装node-sqlite3的方法

Nodejs 请教Mac下安装node-sqlite3的方法

各种ERR…

3 回复

当然可以!以下是如何在Mac上安装node-sqlite3的详细步骤。node-sqlite3 是一个用于 Node.js 的 SQLite3 绑定库,允许你在项目中使用 SQLite 数据库。

步骤 1: 安装 Homebrew (如果还没有安装)

Homebrew 是 macOS 上非常流行的包管理器,可以简化许多软件的安装过程。如果你还没有安装 Homebrew,可以通过以下命令进行安装:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

步骤 2: 安装 SQLite3

使用 Homebrew 来安装 SQLite3,这将确保你拥有正确的版本,从而与 node-sqlite3 兼容:

brew install sqlite3

步骤 3: 安装 node-gyp

node-gyp 是一个 Node.js 的编译工具,用于编译原生插件。你可以通过 npm 安装它:

npm install -g node-gyp

步骤 4: 安装 node-sqlite3

现在,你可以通过 npm 安装 node-sqlite3

npm install node-sqlite3

示例代码

假设你已经成功安装了 node-sqlite3,你可以使用以下示例代码来创建和操作一个 SQLite 数据库:

const sqlite3 = require('sqlite3').verbose();

// 创建一个新的数据库连接
let db = new sqlite3.Database(':memory:', (err) => {
  if (err) {
    console.error(err.message);
  }
  console.log('Connected to the in-memory SQlite database.');
});

// 创建一个表
db.serialize(() => {
  db.run("CREATE TABLE lorem (info TEXT)");

  // 插入一些数据
  const stmt = db.prepare("INSERT INTO lorem VALUES (?)");
  for (let i = 0; i < 10; i++) {
    stmt.run("Ipsum " + i);
  }
  stmt.finalize();
});

// 查询数据
db.each("SELECT rowid AS id, info FROM lorem", (err, row) => {
  if (err) {
    console.error(err.message);
  }
  console.log(row.id + ": " + row.info);
});

// 关闭数据库连接
db.close((err) => {
  if (err) {
    console.error(err.message);
  }
  console.log('Close the database connection.');
});

这段代码首先创建了一个内存中的 SQLite 数据库,并创建了一个名为 lorem 的表。然后插入一些数据并查询这些数据。最后关闭数据库连接。

希望这些步骤和示例代码能帮助你在 Mac 上成功安装和使用 node-sqlite3


啊哦,, 好吧,, 安装完xcode, 再安装好command line tool, 然后走make流就安装好了,当我没有问过。。。。

当然可以。在 Mac 下安装 node-sqlite3 模块可能会遇到一些依赖问题,主要是因为需要编译 SQLite3 的本地代码。以下是一些步骤和示例代码,帮助你在 Mac 上顺利安装 node-sqlite3

安装步骤

  1. 安装 Homebrew(如果还没有安装):

    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
    
  2. 安装 SQLite3 和 GCC 编译工具

    brew install sqlite3
    brew install gcc
    
  3. 安装 node-gyp(如果尚未安装)

    npm install -g node-gyp
    
  4. 设置环境变量(可选,但有时可能需要): 在你的 .bash_profile.zshrc 文件中添加以下内容:

    export npm_config_prefix=/usr/local
    export npm_config_clang=0
    
  5. 安装 node-sqlite3

    npm install node-sqlite3
    

示例代码

以下是一个简单的示例代码,展示如何使用 node-sqlite3 连接到 SQLite 数据库并执行基本查询:

const sqlite3 = require('sqlite3').verbose();

// 打开数据库连接
let db = new sqlite3.Database(':memory:', (err) => {
  if (err) {
    console.error(err.message);
  }
  console.log('Connected to the in-memory SQlite database.');
});

// 创建表
db.serialize(() => {
  db.run("CREATE TABLE lorem (info TEXT)");

  // 插入数据
  const stmt = db.prepare("INSERT INTO lorem VALUES (?)");
  for (let i = 0; i < 10; i++) {
    stmt.run("Ipsum " + i);
  }
  stmt.finalize();

  // 查询数据
  db.each("SELECT rowid AS id, info FROM lorem", (err, row) => {
    if (err) {
      console.error(err.message);
    }
    console.log(row.id + ": " + row.info);
  });
});

// 关闭数据库连接
db.close();

解释

  • 安装 Homebrew:Homebrew 是一个包管理器,可以方便地安装和管理软件。
  • 安装 SQLite3 和 GCC 编译工具:确保系统中有正确的 SQLite3 版本和编译工具。
  • 安装 node-gypnode-gyp 是 Node.js 原生模块的编译工具。
  • 设置环境变量:某些情况下可能需要调整环境变量以确保编译过程顺利。
  • 安装 node-sqlite3:通过 npm 安装 node-sqlite3 包。
  • 示例代码:展示了如何创建数据库、插入数据和查询数据。

希望这些步骤能帮助你成功安装并使用 node-sqlite3

回到顶部