26 lines
848 B
SQL
26 lines
848 B
SQL
-- Limpieza total para inicio desde cero
|
|
DROP TABLE IF EXISTS posts;
|
|
DROP TABLE IF EXISTS users;
|
|
|
|
-- 1. Tabla de Usuarios (Para autenticación vía curl/registro)
|
|
CREATE TABLE IF NOT EXISTS posts (
|
|
id SERIAL PRIMARY KEY,
|
|
title VARCHAR(255) NOT NULL,
|
|
type VARCHAR(50) DEFAULT 'INTERNAL',
|
|
content TEXT,
|
|
url TEXT,
|
|
image_url TEXT,
|
|
description TEXT,
|
|
tags TEXT DEFAULT '', -- Nueva columna para SEO y filtros
|
|
views INTEGER DEFAULT 0,
|
|
created_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS users (
|
|
id SERIAL PRIMARY KEY,
|
|
username VARCHAR(50) UNIQUE NOT NULL,
|
|
password VARCHAR(255) NOT NULL,
|
|
created_at TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP
|
|
);
|
|
-- Índice para que las consultas por slug sean instantáneas
|
|
CREATE INDEX idx_posts_slug ON posts(slug); |