@agentdb/sdk
Version:
JavaScript SDK for AgentDB database service
93 lines (79 loc) • 2.63 kB
JavaScript
/**
* Basic Usage Example
*
* This example demonstrates the basic functionality of the AgentDB SDK:
* - Creating a service instance
* - Listing databases
* - Creating a connection
* - Executing SQL statements
*/
import { DatabaseService } from '../index.js';
async function basicExample() {
// Configuration - replace with your actual values
const BASE_URL = 'https://api.agentdb.dev';
const API_KEY = 'your-api-key-here';
const TOKEN = 'your-uuid-token-here';
try {
// Create a service instance
console.log('Creating DatabaseService...');
const service = new DatabaseService(BASE_URL, API_KEY);
// List existing databases
console.log('Listing databases...');
const databases = await service.listDatabases(TOKEN);
console.log('Available databases:', databases);
// Create a connection to a database
console.log('Creating connection...');
const connection = service.connect(TOKEN, 'example-db', 'sqlite');
// Create a simple table
console.log('Creating table...');
await connection.execute({
sql: `CREATE TABLE IF NOT EXISTS users (
id INTEGER PRIMARY KEY AUTOINCREMENT,
name TEXT NOT NULL,
email TEXT UNIQUE,
created_at DATETIME DEFAULT CURRENT_TIMESTAMP
)`,
params: []
});
// Insert some data
console.log('Inserting data...');
await connection.execute({
sql: 'INSERT INTO users (name, email) VALUES (?, ?)',
params: ['John Doe', 'john@example.com']
});
// Query the data
console.log('Querying data...');
const result = await connection.execute({
sql: 'SELECT * FROM users',
params: []
});
console.log('Query results:', result.results[0].data);
// Execute multiple statements in one request
console.log('Executing batch operations...');
const batchResult = await connection.execute([
{
sql: 'INSERT INTO users (name, email) VALUES (?, ?)',
params: ['Alice Smith', 'alice@example.com']
},
{
sql: 'INSERT INTO users (name, email) VALUES (?, ?)',
params: ['Bob Johnson', 'bob@example.com']
},
{
sql: 'SELECT COUNT(*) as total_users FROM users',
params: []
}
]);
console.log('Batch execution results:');
batchResult.results.forEach((result, index) => {
console.log(`Statement ${index + 1}:`, result);
});
} catch (error) {
console.error('Error in basic example:', error.message);
if (error.statusCode) {
console.error('Status code:', error.statusCode);
}
}
}
// Run the example
basicExample();