41 lines
891 B
TypeScript
41 lines
891 B
TypeScript
import { cassandra } from "@lib/cassandra";
|
|
|
|
async function createTable() {
|
|
await cassandra.getClient().execute(`
|
|
CREATE TABLE IF NOT EXISTS users (
|
|
id TEXT PRIMARY KEY,
|
|
username TEXT,
|
|
display_name TEXT,
|
|
email TEXT,
|
|
password TEXT,
|
|
avatar_url TEXT,
|
|
is_verified BOOLEAN,
|
|
created_at TIMESTAMP,
|
|
updated_at TIMESTAMP
|
|
);
|
|
`);
|
|
|
|
await cassandra.getClient().execute(`
|
|
CREATE INDEX IF NOT EXISTS users_username_idx ON users (username);
|
|
`);
|
|
|
|
await cassandra.getClient().execute(`
|
|
CREATE INDEX IF NOT EXISTS users_email_idx ON users (email);
|
|
`);
|
|
}
|
|
|
|
async function dropTable() {
|
|
await cassandra.getClient().execute(`
|
|
DROP TABLE IF EXISTS users;
|
|
`);
|
|
|
|
await cassandra.getClient().execute(`
|
|
DROP INDEX IF EXISTS users_username_idx;
|
|
`);
|
|
|
|
await cassandra.getClient().execute(`
|
|
DROP INDEX IF EXISTS users_email_idx;
|
|
`);
|
|
}
|
|
|
|
export { createTable, dropTable };
|