hotschpotsh/Pottery-website/server/migrate.js

42 lines
1.1 KiB
JavaScript

const { Pool } = require('pg');
require('dotenv').config();
const pool = new Pool({
user: process.env.DB_USER,
host: process.env.DB_HOST,
database: process.env.DB_NAME,
password: process.env.DB_PASSWORD,
port: process.env.DB_PORT,
});
const sql = `
-- Orders Table
CREATE TABLE IF NOT EXISTS orders (
id SERIAL PRIMARY KEY,
customer_email TEXT NOT NULL,
customer_name TEXT NOT NULL,
shipping_address JSONB NOT NULL,
items JSONB NOT NULL,
total_amount DECIMAL(10, 2) NOT NULL,
payment_status TEXT DEFAULT 'pending',
shipping_status TEXT DEFAULT 'pending',
created_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP
);
`;
async function migrate() {
try {
console.log('Starting migration...');
const client = await pool.connect();
await client.query(sql);
console.log('Migration successful: Orders table created or already exists.');
client.release();
} catch (err) {
console.error('Migration failed:', err);
} finally {
await pool.end();
}
}
migrate();