zzyxyz_server/utils/test/test_db.js

75 lines
1.6 KiB
JavaScript

const utils = require('../../utils.js');
const betterSqlite3DB = require('../db_utils');
const db_path = utils.path.join(utils.DATA_DB_PATH, utils.env.DATABASE_NAME || 'sqlite3.db');
const db = new betterSqlite3DB(db_path, null);
db.createTable('test', [
{name :'id', type: 'INTEGER PRIMARY KEY AUTOINCREMENT'},
{name :'name', type: 'TEXT NOT NULL UNIQUE'},
{name :'age', type: `INTEGER NOT NULL DEFAULT '123456'`},
{name :'update_time', type: 'DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP'}
]);
if (!db.deleteData('test')) {
console.log('delete error');
}
if (!db.insertData('test', {
name: 'a',
age: 18
})) {
console.log('insert 1 error');
} else {
console.log('insert 1 success');
}
if (!db.insertData('test', {
name: 'a',
age: 18
})) {
console.log('insert 2 error');
} else {
console.log('insert 2 success');
}
if (!db.insertData('test', [
{name: 'b', age: 19},
{name: 'c', age: 20}
])) {
console.log('insert 3 error');
} else {
console.log('insert 3 success');
}
if (db.selectData('test', ['id', 'name', 'age'])) {
console.log(db.info);
} else {
console.log('select error');
}
if (db.selectData('test', ['id', 'name', 'age'], `name='b'`)) {
console.log(db.info);
} else {
console.log('select error');
}
if (db.selectData('test', ['id', 'name', 'age'], `name='e'`)) {
console.log(db.info);
} else {
console.log('select error');
}
if (db.updateData('test', {name: 'b', age: 18}, `name='b'`)) {
console.log(db.info);
} else {
console.log('select error');
}
if (db.selectData('test')) {
console.log(db.info);
} else {
console.log('select error');
}
module.exports = db;