⌂ Home›Block›ขั้นตอนการติดตั้ง CMS Website และใช้งาน

ขั้นตอนการติดตั้ง CMS Website และใช้งาน

Updated: 14 ต.ค. 2569

Website CMS สำหรับใช้งานเปิดเว็บ

ขั้นตอนการติดตั้ง CMS Website และใช้งาน

ขั้นตอนการติดตั้ง

ขั้นตอนที่ 1

ทำการ สร้างไฟล์ docker-compose.yml ขึ้นมา และใส่ขึ้นมูลนี้ลงไป

version: '1'

services:
  mysql:
    image: mysql:latest
    container_name: mysql
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: ${DBPASSWORD}
      MYSQL_DATABASE: ${DATABASE}
    ports:
      - "3307:3306"
    volumes:
      - mysql_data:/var/lib/mysql
    networks:
      - anasaki_cms_network

  phpmyadmin:
    image: phpmyadmin/phpmyadmin:latest
    container_name: phpmyadmin
    restart: always
    environment:
      PMA_HOST: mysql
      MYSQL_ROOT_PASSWORD: ${DBPASSWORD}
    ports:
      - "8080:80"
    depends_on:
      - mysql
    networks:
      - anasaki_cms_network

  cms_frontend:
    image: chichat/anasakicms:latest
    restart: always
    ports:
      - "1420:1420"
    env_file:
      - .env.production
    networks:
      - anasaki_cms_network

  cms_backend:
    image: chichat/anasakicmsbackend:latest
    restart: always
    ports:
      - "1419:1419"
    env_file:
      - .env
    environment:
      - HOST=mysql
    depends_on:
      - mysql
    networks:
      - anasaki_cms_network

networks:
  anasaki_cms_network:
    driver: bridge

volumes:
  mysql_data:

ขั้นตอนที่ 2

สร้างไฟล์ .env ขึ้นมาและทำการตั้งค่าดังนี้

PORT = //Port ที่ต้องการให้ backend server ทำงาน
HOST =  //DB Host
DBUSER =  //User DB
DBPASSWORD = //PAssword DB
DATABASE = //ชื่อ Database ที่ต้องการจะใช้
DBPORT = //Port DB
EMAILUSER = //Email สำหรับทำระบบ ลืมรหัสผ่าน
EMAILPASSWORD = //Emailpass
JWT_SECRET= //Secret key
WEBNAME= //ชื่อ Webside

ขั้นตอนที่ 3

สร้างไฟล์ .env.production ขึ้นมาและทำการตั้งค่าดังนี้

API_BASE_URL= //Backend URL
SOCKET_URL= //Socket URL สำหรับระบบ realtime chat

ขั้นตอนที่ 4

Import Table ลง Database

ให้ทำการเปิดไปที่ port 8080 และทำการ login phpmyadmin หลังจากนั้นไปที่ Databse ที่กำหนดไว้ใน .env ทำการ import SQL นี้ลงไป

SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
START TRANSACTION;
SET time_zone = "+00:00";

CREATE TABLE `about` (
  `about_id` int NOT NULL,
  `bgColor` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `textColorTitle` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `textColorHighlight` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `textColorDescription` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `textColorStoryTitle` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `textColorStoryText` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `storyBgColor` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `title` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `highlight` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `description` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `storyTitle` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `storyText` text COLLATE utf8mb4_general_ci NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

INSERT INTO `about` (`about_id`, `bgColor`, `textColorTitle`, `textColorHighlight`, `textColorDescription`, `textColorStoryTitle`, `textColorStoryText`, `storyBgColor`, `title`, `highlight`, `description`, `storyTitle`, `storyText`) VALUES
(1, '#ffffffff', '#0f172a', '#f898a4', '#475569', '#0f172a', '#475569', '#ffffff', 'เกี่ยวกับ', 'CMS', 'มากกว่าร้านค้าไอที คือ Ecosystem ที่ช่วยให้คุณสร้างสรรค์งานได้ดีที่สุด', 'จุดเริ่มต้นของเรา', 'CMS เกิดขึ้นจากความตั้งใจของกลุ่มนักพัฒนา (Developers) ที่เข้าใจว่าการหาเครื่องมือทุ่นแรง (Tools) ที่ดีและอุปกรณ์ (Gear) ที่ใช่ นั้นสำคัญแค่ไหน เราจึงสร้างพื้นที่นี้ขึ้นมาเพื่อรวบรวมทั้ง Software ที่ช่วยแก้ปัญหา และ Hardware ที่เพิ่มประสิทธิภาพการทำงาน ไว้ในที่เดียว');

CREATE TABLE `blockdata` (
  `blockdata_id` int NOT NULL,
  `blockdetail_id` int NOT NULL,
  `block_type` enum('text','image') COLLATE utf8mb4_general_ci NOT NULL,
  `block_data` text COLLATE utf8mb4_general_ci NOT NULL,
  `status` enum('active','delete') COLLATE utf8mb4_general_ci NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

CREATE TABLE `blockdetail` (
  `blockdetail_id` int NOT NULL,
  `title` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `description` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `image` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `create_time` datetime NOT NULL,
  `update_time` datetime NOT NULL,
  `status` enum('active','delete') COLLATE utf8mb4_general_ci NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

CREATE TABLE `blocktemplate` (
  `blocktemplate_id` int NOT NULL,
  `bgColor` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `textColorTitle` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `cardBgColor` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `textColorCardTitle` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `textColorDetail` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `textColorCardText` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `buttonTextColor` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `breadcrumbTextColor` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `breadcrumbActiveTextColor` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `dateTextColor` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `imageBorderColor` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `title` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `description` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `searchColor` varchar(255) COLLATE utf8mb4_general_ci NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

INSERT INTO `blocktemplate` (`blocktemplate_id`, `bgColor`, `textColorTitle`, `cardBgColor`, `textColorCardTitle`, `textColorDetail`, `textColorCardText`, `buttonTextColor`, `breadcrumbTextColor`, `breadcrumbActiveTextColor`, `dateTextColor`, `imageBorderColor`, `title`, `description`, `searchColor`) VALUES
(1, '#ffffffff', '#ff7575ff', '#ffffff', '#ff7373', '#ff7373', '#ff9c9cff', '#ff0000', '#64748b', '#ff7373', '#64748b', '#e2e8f0', 'Block', 'บริการใหม่ที่เราให้คุณ', '#ffffffff');

CREATE TABLE `chathistory` (
  `chathistory_id` int NOT NULL,
  `user_id` int NOT NULL,
  `text` text COLLATE utf8mb4_general_ci NOT NULL,
  `sender` enum('user','admin') COLLATE utf8mb4_general_ci NOT NULL,
  `read_status` enum('read','unread') COLLATE utf8mb4_general_ci NOT NULL DEFAULT 'unread',
  `send_time` datetime NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

CREATE TABLE `home` (
  `home_id` int NOT NULL,
  `bgColor` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `textColorH1` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `textColorH2` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `textColorH2Highlight` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `textColorP` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `textColorPHighlight` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `textH1` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `textH2` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `textH2Highlight` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `textP` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `textPHighlight` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `textPSuffix` varchar(255) COLLATE utf8mb4_general_ci NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

INSERT INTO `home` (`home_id`, `bgColor`, `textColorH1`, `textColorH2`, `textColorH2Highlight`, `textColorP`, `textColorPHighlight`, `textH1`, `textH2`, `textH2Highlight`, `textP`, `textPHighlight`, `textPSuffix`) VALUES
(1, '#ffffffff', '#f898a4', '#334155', '#ff7d7d', '#64748b', '#ff7d7d', 'CMS', 'จุดเริ่มต้นของทุก', 'ไอเดียสร้างสรรค์', 'ให้คุณสร้างสรรค์ผลงานได้', 'ดีที่สุด', ', ในแบบของคุณ');

CREATE TABLE `logo` (
  `logo_id` int NOT NULL,
  `logoType` enum('both','text','image') COLLATE utf8mb4_general_ci NOT NULL,
  `logoImageUrl` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `logoText` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `logoImageSize` int NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

INSERT INTO `logo` (`logo_id`, `logoType`, `logoImageUrl`, `logoText`, `logoImageSize`) VALUES
(1, 'text', '', 'CMS', 50);

CREATE TABLE `navbar` (
  `nav_id` int NOT NULL,
  `logo_id` int NOT NULL,
  `navbarBg` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `logoText` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `menuBlockBg` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `menuText` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `btnBg` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `btnText` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `btnBorder` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `showService` tinyint(1) NOT NULL,
  `showProduct` tinyint(1) NOT NULL,
  `showBlock` tinyint(1) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

INSERT INTO `navbar` (`nav_id`, `logo_id`, `navbarBg`, `logoText`, `menuBlockBg`, `menuText`, `btnBg`, `btnText`, `btnBorder`, `showService`, `showProduct`, `showBlock`) VALUES
(1, 1, '#ffffff', '#000000', '#ffffff', '#000000', '#000000', '#ffffff', '#000000', 0, 0, 0);

CREATE TABLE `product` (
  `product_id` int NOT NULL,
  `product_name` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `product_detail` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `product_type` enum('free','payment','nopayment') COLLATE utf8mb4_general_ci NOT NULL,
  `product_price` float NOT NULL,
  `product_file` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `product_pin` enum('pin','unpin') COLLATE utf8mb4_general_ci NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

CREATE TABLE `producttemplate` (
  `producttemplate_id` int NOT NULL,
  `bgColor` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `textColorTitle` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `textColorHighlight` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `cardBgColor` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `textColorCardTitle` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `textColorPrice` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `textColorSave` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `buttonColor` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `buttonTextColor` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `searchColor` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `title` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `highlight` varchar(255) COLLATE utf8mb4_general_ci NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

INSERT INTO `producttemplate` (`producttemplate_id`, `bgColor`, `textColorTitle`, `textColorHighlight`, `cardBgColor`, `textColorCardTitle`, `textColorPrice`, `textColorSave`, `buttonColor`, `buttonTextColor`, `searchColor`, `title`, `highlight`) VALUES
(1, '#ffffffff', '#ff6767ff', '#ec4899', '#ffffffff', '#000000ff', '#545454ff', '#ff0000ff', '#ffffffff', '#ff0000ff', '#ffffffff', 'Product', 'a lot of product');

CREATE TABLE `profile` (
  `profile_id` int NOT NULL,
  `profileBg` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `profileCardBg` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `profileTextH1` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `profileTextH2` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `profileTextP` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `profileTextLabel` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `profileBtnBg` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `profileBtnText` varchar(255) COLLATE utf8mb4_general_ci NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

INSERT INTO `profile` (`profile_id`, `profileBg`, `profileCardBg`, `profileTextH1`, `profileTextH2`, `profileTextP`, `profileTextLabel`, `profileBtnBg`, `profileBtnText`) VALUES
(1, '#fff8f8', '#ffffff', '#75464a', '#f898a4', '#6b7280', '#2e3136', '#478a52', '#d8f3e2');

CREATE TABLE `roles` (
  `role_id` int NOT NULL,
  `role_name` varchar(255) COLLATE utf8mb4_general_ci NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

INSERT INTO `roles` (`role_id`, `role_name`) VALUES
(1, 'admin'),
(2, 'user');

CREATE TABLE `servicedata` (
  `servicedata_id` int NOT NULL,
  `servicedetail_id` int NOT NULL,
  `service_type` enum('text','image') COLLATE utf8mb4_general_ci NOT NULL,
  `service_data` text COLLATE utf8mb4_general_ci NOT NULL,
  `status` enum('active','delete') COLLATE utf8mb4_general_ci NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

CREATE TABLE `servicedetail` (
  `servicedetail_id` int NOT NULL,
  `title` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `description` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `image` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `create_time` datetime NOT NULL,
  `update_time` datetime NOT NULL,
  `status` enum('active','delete') COLLATE utf8mb4_general_ci NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

CREATE TABLE `servicetemplate` (
  `servicetemplate_id` int NOT NULL,
  `bgColor` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `textColorTitle` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `cardBgColor` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `textColorCardTitle` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `textColorDetail` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `textColorCardText` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `buttonTextColor` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `breadcrumbTextColor` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `breadcrumbActiveTextColor` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `dateTextColor` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `imageBorderColor` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `title` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `description` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `searchColor` varchar(255) COLLATE utf8mb4_general_ci NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

INSERT INTO `servicetemplate` (`servicetemplate_id`, `bgColor`, `textColorTitle`, `cardBgColor`, `textColorCardTitle`, `textColorDetail`, `textColorCardText`, `buttonTextColor`, `breadcrumbTextColor`, `breadcrumbActiveTextColor`, `dateTextColor`, `imageBorderColor`, `title`, `description`, `searchColor`) VALUES
(1, '#ffffffff', '#ff7575ff', '#ffffff', '#ff7373', '#ff7373', '#ff9c9cff', '#ff0000', '#64748b', '#ff7373', '#64748b', '#e2e8f0', 'Service', 'บริการใหม่ที่เราให้คุณ', '#ffffffff');

CREATE TABLE `sidebar` (
  `sidebar_id` int NOT NULL,
  `logo_id` int NOT NULL,
  `sidebarBg` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `sidebarText` varchar(255) COLLATE utf8mb4_general_ci NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

INSERT INTO `sidebar` (`sidebar_id`, `logo_id`, `sidebarBg`, `sidebarText`) VALUES
(1, 1, '#fee5e0', '#f898a4');

CREATE TABLE `users` (
  `user_id` int NOT NULL COMMENT 'ID เฉพาะตัวของผู้ใช้ (PK)',
  `email` varchar(255) COLLATE utf8mb4_general_ci NOT NULL COMMENT 'อีเมลสำหรับล็อกอิน (ห้ามซ้ำ)',
  `firstname` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT 'ชื่อจริง',
  `lastname` varchar(255) COLLATE utf8mb4_general_ci DEFAULT NULL COMMENT 'นามสกุล',
  `password` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `phone` varchar(10) COLLATE utf8mb4_general_ci NOT NULL,
  `otp` int DEFAULT NULL,
  `otp_expires` datetime DEFAULT NULL,
  `role_id` int NOT NULL,
  `user_status` enum('active','deleted') COLLATE utf8mb4_general_ci NOT NULL DEFAULT 'active' COMMENT 'สถานะบัญชี (active, deleted)'
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

CREATE TABLE `viewlog` (
  `viewlog_id` int NOT NULL,
  `ip` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `view_webpath` varchar(255) COLLATE utf8mb4_general_ci NOT NULL,
  `view_datetime` datetime NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

ALTER TABLE `about`
  ADD PRIMARY KEY (`about_id`);

ALTER TABLE `blockdata`
  ADD PRIMARY KEY (`blockdata_id`),
  ADD KEY `blockdetail_id` (`blockdetail_id`);

ALTER TABLE `blockdetail`
  ADD PRIMARY KEY (`blockdetail_id`);

ALTER TABLE `blocktemplate`
  ADD PRIMARY KEY (`blocktemplate_id`);

ALTER TABLE `chathistory`
  ADD PRIMARY KEY (`chathistory_id`),
  ADD KEY `fk_chathistory_user` (`user_id`);

ALTER TABLE `home`
  ADD PRIMARY KEY (`home_id`);

ALTER TABLE `logo`
  ADD PRIMARY KEY (`logo_id`);

ALTER TABLE `navbar`
  ADD PRIMARY KEY (`nav_id`),
  ADD KEY `fk_navbar_logo` (`logo_id`);

ALTER TABLE `product`
  ADD PRIMARY KEY (`product_id`);

ALTER TABLE `producttemplate`
  ADD PRIMARY KEY (`producttemplate_id`);

ALTER TABLE `profile`
  ADD PRIMARY KEY (`profile_id`);

ALTER TABLE `roles`
  ADD PRIMARY KEY (`role_id`);

ALTER TABLE `servicedata`
  ADD PRIMARY KEY (`servicedata_id`),
  ADD KEY `fk_servicedata_servicedetail` (`servicedetail_id`);

ALTER TABLE `servicedetail`
  ADD PRIMARY KEY (`servicedetail_id`);

ALTER TABLE `servicetemplate`
  ADD PRIMARY KEY (`servicetemplate_id`);

ALTER TABLE `sidebar`
  ADD PRIMARY KEY (`sidebar_id`),
  ADD KEY `fk_sidebar_logo` (`logo_id`);

ALTER TABLE `users`
  ADD PRIMARY KEY (`user_id`),
  ADD UNIQUE KEY `user_email` (`email`),
  ADD KEY `fk_users_roles` (`role_id`);

ALTER TABLE `viewlog`
  ADD PRIMARY KEY (`viewlog_id`);

ALTER TABLE `about`
  MODIFY `about_id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2;

ALTER TABLE `blockdata`
  MODIFY `blockdata_id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=90;

ALTER TABLE `blockdetail`
  MODIFY `blockdetail_id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=15;

ALTER TABLE `blocktemplate`
  MODIFY `blocktemplate_id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2;

ALTER TABLE `chathistory`
  MODIFY `chathistory_id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=12;

ALTER TABLE `home`
  MODIFY `home_id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2;

ALTER TABLE `logo`
  MODIFY `logo_id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2;

ALTER TABLE `navbar`
  MODIFY `nav_id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2;

ALTER TABLE `product`
  MODIFY `product_id` int NOT NULL AUTO_INCREMENT;

ALTER TABLE `producttemplate`
  MODIFY `producttemplate_id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2;

ALTER TABLE `profile`
  MODIFY `profile_id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2;

ALTER TABLE `roles`
  MODIFY `role_id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=3;

ALTER TABLE `servicedata`
  MODIFY `servicedata_id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=55;

ALTER TABLE `servicedetail`
  MODIFY `servicedetail_id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=5;

ALTER TABLE `servicetemplate`
  MODIFY `servicetemplate_id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2;

ALTER TABLE `sidebar`
  MODIFY `sidebar_id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=2;

ALTER TABLE `users`
  MODIFY `user_id` int NOT NULL AUTO_INCREMENT COMMENT 'ID เฉพาะตัวของผู้ใช้ (PK)', AUTO_INCREMENT=7;

ALTER TABLE `viewlog`
  MODIFY `viewlog_id` int NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=1305;

ALTER TABLE `blockdata`
  ADD CONSTRAINT `fk_blockdata_blockdetail` FOREIGN KEY (`blockdetail_id`) REFERENCES `blockdetail` (`blockdetail_id`) ON DELETE CASCADE ON UPDATE CASCADE;

ALTER TABLE `chathistory`
  ADD CONSTRAINT `fk_chathistory_user` FOREIGN KEY (`user_id`) REFERENCES `users` (`user_id`) ON UPDATE CASCADE;

ALTER TABLE `navbar`
  ADD CONSTRAINT `fk_navbar_logo` FOREIGN KEY (`logo_id`) REFERENCES `logo` (`logo_id`) ON DELETE CASCADE ON UPDATE CASCADE;

ALTER TABLE `servicedata`
  ADD CONSTRAINT `fk_servicedata_servicedetail` FOREIGN KEY (`servicedetail_id`) REFERENCES `servicedetail` (`servicedetail_id`) ON DELETE CASCADE ON UPDATE CASCADE;

ALTER TABLE `sidebar`
  ADD CONSTRAINT `fk_sidebar_logo` FOREIGN KEY (`logo_id`) REFERENCES `logo` (`logo_id`) ON DELETE CASCADE ON UPDATE CASCADE;

ALTER TABLE `users`
  ADD CONSTRAINT `fk_users_roles` FOREIGN KEY (`role_id`) REFERENCES `roles` (`role_id`) ON DELETE CASCADE ON UPDATE CASCADE;
COMMIT;