Node.js - MySQL Создание таблицы: Пособие для начинающих

Здравствуйте, будущие программисты! Сегодня мы отправимся в увлекательное путешествие в мир Node.js и MySQL. Как ваш доброжелательный сосед по компьютерным наукам, я здесь, чтобы помочь вам через процесс создания таблиц в MySQL с использованием Node.js. Не волнуйтесь, если вы новички в программировании - мы начнем с азов и будем двигаться вверх. Так что возьмите кружку кофе (или чая, если это ваше дело) и погружайтесь с нами!

Node.js - MySQL Create Table

Понимание основ

Прежде чем мы перейдем к коду, давайте на минутку停 чтобы понять, с чем мы имеем дело. Node.js - это мощная среда выполнения JavaScript, которая позволяет нам запускать JavaScript на серверной стороне. MySQL, с другой стороны, является популярной реляционной системой управления базами данных. Когда мы combine эти два технологических решения, мы можем создавать динамические веб-приложения, взаимодействующие с базами данных.

Представьте, что вы организовываете свою книжную полку. Каждая полка может быть таблицей в нашей базе данных, а каждая книга представляет собой строку данных. Создание таблицы похоже на установку новой полки с конкретными правилами для того, какие книги (данные) она может удерживать.

CREATE TABLE в MySQL

Давайте начнем с того, как мы создаем таблицы напрямую в MySQL. Это даст нам прочный фундамент перед тем, как мы перейдем к созданию через Node.js.

Основной синтаксис

Основной синтаксис для создания таблицы в MySQL следующий:

CREATE TABLE table_name (
column1 datatype,
column2 datatype,
column3 datatype,
....
);

Давайте разберем это:

  • CREATE TABLE - это команда, которая сообщает MySQL, что мы хотим создать новую таблицу.
  • table_name - это место, где вы указываете, как вы хотите назвать свою таблицу.
  • Внутри скобок мы перечисляем наши столбцы вместе с их типами данных.

Простой пример

Давайте создадим таблицу для хранения информации о книгах:

CREATE TABLE books (
id INT AUTO_INCREMENT PRIMARY KEY,
title VARCHAR(100) NOT NULL,
author VARCHAR(50) NOT NULL,
publication_year INT,
isbn VARCHAR(13) UNIQUE
);

В этом примере:

  • id - это целое число, которое автоматически увеличивается и служит primary key.
  • title и author - это переменной длины строки, которые не могут быть null.
  • publication_year - это целое число.
  • isbn - это уникальная 13- character string.

Помните, когда я mentioned организацию вашей книжной полки? Структура этой таблицы похожа на то, как вы label каждую секцию полки: одну для ID книги, одну для заголовка, другую для автора и так далее.

CREATE TABLE в Node.js

Теперь, когда мы понимаем, как создавать таблицы в MySQL, давайте посмотрим, как мы можем достичь того же результата, используя Node.js. Вот где происходит магия!

Настройка

Сначала нам нужно настроить нашу среду Node.js и установить необходимые пакеты. Откройте ваш терминал и выполните:

npm init -y
npm install mysql2

Это создает новый проект Node.js и устанавливает пакет mysql2, который мы будем использовать для подключения к нашей базе данных MySQL.

Подключение к MySQL

Прежде чем мы сможем создать таблицы, нам нужно establish соединение с нашей базой данных MySQL. Вот как мы это делаем:

const mysql = require('mysql2');

const connection = mysql.createConnection({
host: 'localhost',
user: 'your_username',
password: 'your_password',
database: 'your_database_name'
});

connection.connect((err) => {
if (err) {
console.error('Error connecting to the database: ' + err.stack);
return;
}
console.log('Connected to database.');
});

Замените 'your_username', 'your_password', и 'your_database_name' на ваши реальные учётные данные MySQL.

Создание таблицы

Теперь давайте создадим нашу таблицу books с использованием Node.js:

const createTableQuery = `
CREATE TABLE IF NOT EXISTS books (
id INT AUTO_INCREMENT PRIMARY KEY,
title VARCHAR(100) NOT NULL,
author VARCHAR(50) NOT NULL,
publication_year INT,
isbn VARCHAR(13) UNIQUE
)
`;

connection.query(createTableQuery, (err, results) => {
if (err) {
console.error('Error creating table: ' + err.stack);
return;
}
console.log('Table created successfully.');
});

Давайте разберем это:

  1. Мы определяем наш SQL запрос в виде строки, так же, как мы делали это в чистом MySQL.
  2. Мы используем IF NOT EXISTS, чтобы предотвратить ошибки, если таблица уже существует.
  3. Мы используем метод connection.query(), чтобы execute наш SQL запрос.
  4. Мы предоставляем callback функцию для обработки результата или ошибок.

Полное руководство

Вот completo скрипт, который подключается к базе данных и создает нашу таблицу:

const mysql = require('mysql2');

const connection = mysql.createConnection({
host: 'localhost',
user: 'your_username',
password: 'your_password',
database: 'your_database_name'
});

connection.connect((err) => {
if (err) {
console.error('Error connecting to the database: ' + err.stack);
return;
}
console.log('Connected to database.');

const createTableQuery = `
CREATE TABLE IF NOT EXISTS books (
id INT AUTO_INCREMENT PRIMARY KEY,
title VARCHAR(100) NOT NULL,
author VARCHAR(50) NOT NULL,
publication_year INT,
isbn VARCHAR(13) UNIQUE
)
`;

connection.query(createTableQuery, (err, results) => {
if (err) {
console.error('Error creating table: ' + err.stack);
return;
}
console.log('Table created successfully.');
connection.end(); // Закрываем соединение, когда мы закончили
});
});

Чтобы запустить этот скрипт, сохраните его как create_table.js и выполните его с помощью Node.js:

node create_table.js

Если все пойдет хорошо, вы должны увидеть "Connected to database." followed by "Table created successfully."

Заключение

Поздравляю! Вы только что создали свою первую таблицу MySQL с использованием Node.js. Представьте, что мы создали новую, организованную полку в обширной библиотеке вашей базы данных. Каждый раз, когда вы запускаете этот скрипт, он проверяет, существует ли полка (таблица), и если нет, создает одну для вас.

Помните, это только начало. С этой информацией вы можете создавать более сложные таблицы, добавлять между ними отношения и начинать разрабатывать мощные базы данных-драйверные приложения.

Пока мы заканчиваем, у меня есть небольшой профессиональный совет от вашего доброжелательного учителя информатики: Всегда double-check ваши данные для подключения и убедитесь, что ваш сервер MySQL работает перед выполнением ваших скриптов Node.js. Это сэкономит вам много времени на размышления!

Продолжайте практиковаться, stay curious, и счастливого кодирования!

Credits: Image by storyset