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

TypeORMを使用してOceanBaseデータベースに接続する

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

前提条件
手順
ステップ1:Node.jsとnpmのバージョンを確認する
ステップ2:必要な依存関係をインストールする
ステップ3:プロジェクトの設定
ステップ4:データ操作の例
ステップ5:サンプルを実行する
関連ドキュメント

適用対象

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

TypeORMは、TypeScriptとJavaScriptをサポートするORMフレームワークであり、さまざまなデータベースシステムに対応しています。本記事では、TypeORMを使用してOceanBaseデータベースのMySQLモードに接続する方法について説明します。

前提条件

  • Node.js 14.0.0以降がインストール済みであること。
  • npmまたはyarnパッケージマネージャーがインストール済みであること。
  • OceanBaseデータベースがデプロイ済みで、MySQLモードのテナントが作成されていること。
  • TypeScript環境(推奨)。

手順

  1. Node.jsとnpmのバージョンを確認する
  2. 必要な依存関係をインストールする
  3. プロジェクトを設定する
  4. データ操作の例
  5. サンプルを実行する

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

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

node -v
npm -v

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

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

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

    npm install typeorm mysql2 reflect-metadata
    
    # TypeScriptを使用する場合
    npm install --save-dev typescript @types/node
    
    # TypeScript設定の初期化
    npx tsc --init
    
    
  3. tsconfig.json を更新してデコレーターをサポートします:

{
  "compilerOptions": {
    "experimentalDecorators": true,
    "emitDecoratorMetadata": true,
    "target": "es6",
    "module": "commonjs",
    "outDir": "./dist",
    "strict": true,
    "esModuleInterop": true,
    "skipLibCheck": true,
    "forceConsistentCasingInFileNames": true
  },
  "include": ["src/**/*.ts"],
  "exclude": ["node_modules"]
}

ステップ3:プロジェクトの設定

  1. プロジェクトのディレクトリ構造を作成します:

    mkdir -p src/entity src/migration src/subscriber
    
  2. TypeORM設定ファイル ormconfig.json を作成します:

    {
      "type": "mysql",
      "host": "oceanbase-host",
      "port": 2881,
      "username": "your_username",
      "password": "your_password",
      "database": "your_database",
      "synchronize": true,
      "logging": false,
      "entities": ["src/entity/**/*.ts"],
      "migrations": ["src/migration/**/*.ts"],
      "subscribers": ["src/subscriber/**/*.ts"],
      "cli": {
        "entitiesDir": "src/entity",
        "migrationsDir": "src/migration",
        "subscribersDir": "src/subscriber"
      }
    }
    

注意

  • host、port、username、password および database をご自身のOceanBaseデータベース接続情報に置き換えてください。
  • SSL接続を使用する場合は、ssl: { rejectUnauthorized: false } 設定を追加する必要があります。
  • 開発時には synchronize を true に設定できますが、本番環境ではマイグレーション(migrations)を使用してデータベーススキーマの変更を管理することを推奨します。
  • 機密情報の保存には、.env ファイルや環境変数の使用を推奨します。

ステップ4:データ操作の例

1. エンティティの定義

src/entity/User.ts ファイルを作成します:

import { Entity, PrimaryGeneratedColumn, Column } from "typeorm";

@Entity()
export class User {
  @PrimaryGeneratedColumn()
  id?: number;

  @Column()
  firstName: string = "";

  @Column()
  lastName: string = "";

  @Column({ unique: true })
  email: string = "";

  @Column()
  age: number = 0;
}

2. データベース接続と操作の例を作成

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

import 'reflect-metadata';
import { createConnection } from 'typeorm';
import { User } from './entity/User';

async function main() {
  // 1. Create database connection
  const connection = await createConnection();
  console.log('Database connection established');

  // 2. 新規ユーザーの作成
  const user = new User();
  user.firstName = "張";
  user.lastName = "三";
  user.email = "zhangsan@example.com";
  user.age = 25;
  
  await connection.manager.save(user);
  console.log('ユーザーが保存されました、ユーザーID: ', user.id);

  // 3. 全ユーザーのクエリ
  const users = await connection.manager.find(User);
  console.log('全ユーザー: ', users);

  // 4. 条件によるクエリ
  const specificUser = await connection.manager.findOne(User, {
    where: {
      firstName: "張",
      lastName: "三"
    }
  });
  console.log('条件によるクエリ: ', specificUser);

  // 5. QueryBuilderを使用した複雑なクエリ
  const userRepository = connection.getRepository(User);
  const queryBuilderUsers = await userRepository
    .createQueryBuilder("user")
    .where("user.age > :age", { age: 18 })
    .orderBy("user.age", "DESC")
    .getMany();
  console.log('複雑なクエリ: ', queryBuilderUsers);

  // 6. レコードの更新
  await connection
    .createQueryBuilder()
    .update(User)
    .set({ firstName: "李", lastName: "四" })
    .where("id = :id", { id: 1 })
    .execute();
  const updateUsers = await connection.manager.find(User);
  console.log('レコードの更新: ', updateUsers);

  // 7. レコードの削除
  await connection
    .createQueryBuilder()
    .delete()
    .from(User)
    .where("id = :id", { id: 1 })
    .execute();
  const deleteUsers = await connection.manager.find(User);
  console.log('レコードの削除: ', deleteUsers);
}

main().catch(error => {
  console.error('Error occurred:', error);
  process.exit(1);
});

ステップ5:サンプルを実行する

  1. データベースが起動してアクセス可能であることを確認します。

  2. TypeScriptコードをコンパイルします:

    npx tsc
    
  3. サンプルを実行します:

    node src/index.js
    

説明

実際のプロジェクトでは、次のことを確認してください:

  • パスワードは必ず暗号化処理を施す必要があります(例:bcryptを使用)
  • 発生する可能性のあるエラー状況を処理する
  • 環境変数を使用してデータベース接続情報を管理する
  • 適切な入力検証を追加する

関連ドキュメント

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

前のトピック

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

次のトピック

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