OceanBase
English日本語简体中文
ドキュメントホーム
製品
エコシステム
リリース

データベース

OceanBase CloudOceanBaseデータベース

データベース

OceanBase CloudOceanBaseデータベース
OceanBase CloudOceanBaseデータベース

OceanBaseデータベース

  • エコシステム統合の概要
  • ORMフレームワーク
    • Java
      • SpringBootサンプルプログラム
      • SpringBatchサンプルプログラム
      • Spring JDBCサンプルプログラム
      • SpringDataJPAサンプルプログラム
      • Hibernateサンプルプログラム
      • MyBatisサンプルプログラム
    • Python
      • SQLAlchemyによるOceanBaseデータベース接続サンプルプログラム
      • peeweeによるOceanBaseデータベース接続サンプルプログラム
      • Tortoise ORM による OceanBase データベース接続サンプルプログラム
    • Go
      • GORMサンプルプログラム
    • Rust
      • SeaORM による OceanBase データベース接続サンプルプログラム
    • Ruby
      • ActiveRecordによるOceanBaseデータベース接続サンプルプログラム
      • Sequel で OceanBase データベースに接続するサンプルプログラム
      • Ruby on RailsによるOceanBaseデータベース接続サンプルプログラム
    • Node.js
      • SequelizeでOceanBaseデータベースに接続する
      • TypeORMを使用してOceanBaseデータベースに接続する
      • Prismaを使用してOceanBaseデータベースに接続する
      • Drizzle ORMを使用してOceanBaseデータベースに接続する
    • C#
      • Dapperを使用してOceanBaseデータベースに接続する
      • SqlSugarを使用してOceanBaseデータベースに接続する
      • FreeSQLを使用してOceanBaseデータベースに接続する
    • PHP
      • Yii 2.0 ORMサンプルプログラム
      • Laravel Eloquent ORMサンプルプログラム
  • データベースのバージョン管理
    • Liquibaseを使用したOceanBaseデータベースのバージョンの管理
    • Flywayを使用してOceanBaseデータベースを統合し、バージョン管理を実現する
  • データ統合
    • dbtを使用したOceanBaseデータの分析
    • Flink DirectLoadを使用したOceanBaseのダイレクトインポート
    • SeaTunnelを使用したOceanBaseデータの読み取りと同期
    • Maxwellを使用したOceanBaseデータの読み取り
    • Debeziumを使用してOceanBaseに接続し、データを取得する
    • Spark Catalogを使用してOceanBaseデータベースに接続する
    • Apache NiFiを使用してOceanBaseデータベースと統合する
  • SQL開発
    • WebLogicを使用してOceanBaseデータベースに接続する
    • DBeaverを使用してOceanBaseデータベースに接続する
    • Navicatを使用してOceanBaseデータベースに接続する
    • DataGripでOceanBaseデータベースに接続する
    • TablePlusでOceanBaseデータベースに接続する
    • DMSを使用したOceanBaseデータベースの管理
  • 編成とスケジューリング
    • AirflowとOceanBaseデータベースの連携
    • PowerJobとOceanBaseデータベースの連携
    • DolphinSchedulerにOceanBaseデータソースを設定する
    • LinkisとOceanBaseデータベースの統合
  • 可視化ツール
    • SupersetとOceanBaseを使用したデータ分析
    • Power BIでOceanBaseに接続してデータを取得する
    • Quick BIでOceanBaseに接続してデータを取得する
    • Bytebaseを使用したOceanBaseインスタンスの管理
  • データベース管理
    • NineDataを使用したOceanBaseデータソースの管理
    • Bytebaseを使用したOceanBaseインスタンスの管理
  • AI
    • OpenAI
    • Qwen
    • OceanBaseデータベースとLangChainの統合
    • OceanBaseデータベースのベクトル検索機能とLlamaIndexの連携
    • OceanBaseデータベースのベクトル検索機能とDifyの連携
    • OceanBaseデータベースとn8nの連携
    • OceanBase MCP ServerとTraeの連携
    • OceanBaseデータベースとSpring AI Alibabaの連携
    • OceanBase MCP ServerとClineの連携
    • OceanBase MCP ServerとCursorの連携
    • OceanBase MCP ServerとContinueの連携
    • Google GenAI Toolboxを使用して独自のOceanBase MCP Serverを構築する
    • OceanBaseデータベースとCamelAIの連携
    • OceanBase VectorとFirecrawlの連携
    • OceanBase VectorとHugging Faceの連携
    • OceanBase VectorとOllamaの連携
    • OceanBaseデータベースとGoogle Geminiの連携
    • OceanBase VectorとCloudflare Workers AIの連携
    • OceanBase VectorとJina AIの連携
    • OceanBase MCP ServerとAugment Codeの連携
    • OceanBase MCP ServerとClaude Codeの連携
    • OceanBase MCP ServerとKiroの連携

PDF をダウンロード

ドキュメントフィードバック
  1. ドキュメントセンター
  2. OceanBaseデータベース
  3. master

SequelizeでOceanBaseデータベースに接続する

最終更新:2026-10-10 03:12:37

前提条件
手順
ステップ1:Node.jsとnpmのバージョンを確認する
ステップ2:必要な依存関係をインストールする
ステップ3:OceanBaseデータベース接続情報を取得する
ステップ4:プロジェクトを作成して設定する
ステップ5:サンプルプログラムを実行する
全体の例
関連ドキュメント

適用対象

SequelizeはOceanBaseデータベースのMySQLモードに適用されます。

Sequelizeは、PromiseベースのNode.js ORMツールであり、Postgres、MySQL、SQLite、SQL Serverなど、さまざまなデータベースをサポートしています。本記事では、Sequelizeを使用してOceanBaseデータベースのMySQLモードに接続する方法について説明します。

前提条件

  • Node.js 14.0.0以降がインストール済みであること。
  • npmまたはyarnパッケージマネージャーがインストールされていること。
  • OceanBaseデータベースがデプロイ済みで、MySQLモードのテナントが作成されていること。
  • ネットワーク接続が正常であることを確認してください。

手順

  1. Node.jsとnpmのバージョンを確認する
  2. 必要な依存関係をインストールする
  3. OceanBaseデータベースの接続情報を取得する
  4. プロジェクトを作成して設定する
  5. サンプルプログラムを実行する

ステップ1:Node.jsとnpmのバージョンを確認する

ターミナルを開き、以下のコマンドを実行してNode.jsとnpmのバージョンを確認します:

node -v
npm -v

ステップ2:必要な依存関係をインストールする

  1. プロジェクトディレクトリを作成して初期化します:

    mkdir sequelize-oceanbase-demo
    cd sequelize-oceanbase-demo
    npm init -y
    
  2. SequelizeとMySQL2ドライバーをインストールします:

    npm install sequelize mysql2
    
    # TypeScriptを使用する場合
    npm install -D typescript @types/node @types/sequelize
    
    # TypeScript設定の初期化
    npx tsc --init
    

ステップ3:OceanBaseデータベース接続情報を取得する

OceanBaseデータベースのデプロイ担当者または管理者から、該当するデータベース接続情報を取得します。

mysql -h$host -P$port -u$user_name -p$password -D$database_name

パラメータ説明:

  • $host:OceanBaseデータベースへの接続IPアドレス
  • $port:OceanBaseデータベースへの接続ポート
  • $database_name:アクセス対象のデータベース名
  • $user_name:テナントの接続アカウント
  • $password:アカウントのパスワード

ステップ4:プロジェクトを作成して設定する

  1. プロジェクト構造を作成:

    sequelize-oceanbase-demo/
    ├── src/
    │   ├── models/
    │   │   └── index.js
    │   └── index.js
    ├── .env
    └── package.json
    
  2. データベース接続を設定:

    プロジェクトのルートディレクトリに .env ファイルを作成します:

    DB_HOST=your_host
    DB_PORT=2881
    DB_USER=your_username
    DB_PASSWORD=your_password
    DB_NAME=your_database
    
  3. データベース接続を作成:

    src/models/index.js ファイルを作成します:

    require('dotenv').config();
    const { Sequelize } = require('sequelize');
    
    const sequelize = new Sequelize(
      process.env.DB_NAME,
      process.env.DB_USER,
      process.env.DB_PASSWORD,
      {
        host: process.env.DB_HOST,
        dialect: 'mysql',
        port: process.env.DB_PORT,
        logging: console.log, // SQLクエリログを出力
        pool: {
          max: 5,
          min: 0,
          acquire: 30000,
          idle: 10000
        }
      }
    );
    
    module.exports = sequelize;
    
  4. 接続テスト:

    src/index.js ファイルを作成します:

    const sequelize = require('./models/index');
    
    async function testConnection() {
      try {
        await sequelize.authenticate();
        console.log('接続成功');
      } catch (error) {
        console.error('接続失敗:', error);
      }
    }
    
    testConnection();
    

ステップ5:サンプルプログラムを実行する

  1. モデルの定義:

    const { DataTypes } = require('sequelize');
    
    const User = sequelize.define('User', {
      username: {
        type: DataTypes.STRING,
        allowNull: false
      },
      email: {
        type: DataTypes.STRING,
        validate: {
          isEmail: true
        }
      }
    }, {
      tableName: 'users'
    });
    

全体の例

以下は、Sequelizeを使用してCRUD操作を行う方法を示す完全な例です:

const { Sequelize, DataTypes } = require('sequelize');

// 1. 接続の作成
const sequelize = new Sequelize('database_name', 'username', 'password', {
  host: 'oceanbase-host',
  port: 2881,
  dialect: 'mysql'
});

// 2. モデルの定義
const User = sequelize.define('User', {
  username: DataTypes.STRING,
  email: DataTypes.STRING
});

// 3. モデルをデータベースに同期
async function syncDatabase() {
  try {
    await sequelize.sync();
    console.log('データベース同期成功');
  } catch (error) {
    console.error('データベース同期失敗:', error);
  }
}

// 4. CRUD操作
async function crudOperations() {
  // 作成
  const user = await User.create({
    username: 'testuser',
    email: 'test@example.com'
  });

  // クエリ
  const users = await User.findAll();
  console.log(users);

  // 更新
  await User.update(
    { email: 'new@example.com' },
    { where: { id: 1 } }
  );

  // 削除
  await User.destroy({
    where: { id: 1 }
  });
}

// 実行
syncDatabase().then(() => crudOperations());

// トランザクションを使用する例
async function createWithTransaction() {
  const t = await sequelize.transaction();
  
  try {
    const user = await User.create({
      username: 'transaction_user',
      email: 'transaction@example.com'
    }, { transaction: t });
    
    await t.commit();
    return user;
  } catch (error) {
    await t.rollback();
    throw error;
  }
}

syncDatabase().then(() => createWithTransaction());

関連ドキュメント

  • Sequelize公式ドキュメント
  • OceanBaseドキュメント
  • Node.jsドキュメント

前のトピック

Ruby on RailsによるOceanBaseデータベース接続サンプルプログラム
前へ

次のトピック

TypeORMを使用してOceanBaseデータベースに接続する
次へ
このページの内容
前提条件
手順
ステップ1:Node.jsとnpmのバージョンを確認する
ステップ2:必要な依存関係をインストールする
ステップ3:OceanBaseデータベース接続情報を取得する
ステップ4:プロジェクトを作成して設定する
ステップ5:サンプルプログラムを実行する
全体の例
関連ドキュメント