node.js

Node.js 인터페이스는 Better-Sqlite3 를 기반으로합니다



설치

먼저 컴파일 및 설치 소스 코드에서 litesync에 대한 지침을 따르거나 사전 컴파일 된 바이너리를 사용하십시오.플랫폼.무료 버전으로 시작할 수 있습니다.


그런 다음이 명령으로 래퍼를 설치할 수 있습니다.


npm install better-sqlite3-litesync



예제 코드
기본 노드
const options = { verbose: console.log };
const uri = 'file:test.db?node=primary&bind=tcp://0.0.0.0:1234';
const db = require('better-sqlite3-litesync')(uri, options);

db.on('ready', function() {

  db.exec('CREATE TABLE IF NOT EXISTS users (name, email)');

});

db.on('sync', function() {

  console.log('데이터베이스는 업데이트를 받았습니다');

  const rows = db.prepare('SELECT * FROM users').all();
  for (var row of rows) {
    console.log(row.name, row.email);
  }

});

보조 노드
const options = { verbose: console.log };
const uri = 'file:test.db?node=secondary&connect=tcp://127.0.0.1:1234';
const db = require('better-sqlite3-litesync')(uri, options);

db.on('ready', function() {

  db.exec("INSERT INTO users (name, email) values ('john',123)");

});

db.on('sync', function() {

  console.log('데이터베이스는 업데이트를 받았습니다');

  const rows = db.prepare('SELECT * FROM users').all();
  for (var row of rows) {
    console.log(row.name, row.email);
  }

});

상태를 확인할 수도 있습니다:

let res = db.prepare('PRAGMA sync_status').get();
let status = JSON.parse(res.sync_status);


문제 해결

플랫폼에 미리 작성된 래퍼 바이너리가 없으면 설치에 실패 할 수 있습니다.이 경우 컴퓨터에는 적절한 빌드 도구가 있어야합니다.


창에서

이 명령 실행 :

npm install --global --production windows-build-tools

그런 다음 래퍼를 다시 설치하십시오.