Създаване на таблица с примерни полета
Създаване на таблица с име devices и набор от най-популярните полета с техните настойки:
CREATE TABLE devices (
id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
counter INT,
small_counter SMALLINT,
big_counter BIGINT,
temperature FLOAT,
voltage DOUBLE,
price DECIMAL(10,2),
name VARCHAR(100),
description TEXT,
log LONGTEXT,
is_active BOOLEAN,
created_date DATE,
created_time TIME,
created_at DATETIME,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
config JSON,
raw_data BLOB,
checksum BINARY(16),
status ENUM('new','active','error','disabled'),
ip_address VARCHAR(45),
mac_address CHAR(17),
INDEX idx_name (name),
UNIQUE KEY uniq_mac (mac_address)
) ENGINE=InnoDB
DEFAULT CHARSET=utf8mb4
COLLATE=utf8mb4_unicode_ci;
CREATE TABLE devices (
-- 🔑 Първичен ключ
id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
- 🔢 Цели числа:
-- стандартно цяло число
counter INT,
-- малко цяло число
small_counter SMALLINT,
-- много голямо число
big_counter BIGINT,
- 🔢 Десетични числа
-- плаваща запетая (бързо, по-малко точно)
temperature FLOAT,
-- по-точно от FLOAT
voltage DOUBLE,
-- пари / точни стойности
price DECIMAL(10,2),
- 📝 Текст
-- кратък текст
name VARCHAR(100),
-- дълъг текст
description TEXT,
-- много дълъг текст
log LONGTEXT,
- ✅ Булеви стойности
-- true / false (реално TINYINT(1))
is_active BOOLEAN
-- 📅 Дати и време
created_date DATE,
created_time TIME,
created_at DATETIME,
updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
ON UPDATE CURRENT_TIMESTAMP,
- 📦 JSON (много популярен напоследък)
config JSON,- 🧬 Двоични данни
-- бинарни данни
raw_data BLOB,
-- фиксирана дължина (напр. MD5)
checksum BINARY(16),
- 🔐 ENUM (ограничен набор от стойности)
status ENUM('new','active','error','disabled'),
- 🌍 Други
-- IPv4 / IPv6
ip_address VARCHAR(45),
-- MAC адрес
mac_address CHAR(17),
- 🔍 Индекси
INDEX idx_name (name),Total views: 8 , Total comments: 0
UNIQUE KEY uniq_mac (mac_address)
) ENGINE=InnoDB
DEFAULT CHARSET=utf8mb4
COLLATE=utf8mb4_unicode_ci;
Leave a comment
No comments