ИТ Блог. Администрирование серверов на основе Linux (Ubuntu, Debian, CentOS, openSUSE)

Создание таблиц в MySQL с помощью Perl

Учебник. MySQL и Perl

Описание: в этой статье мы покажем вам, как использовать API Perl DBI для создания таблиц в базе данных MySQL.

 

Создание таблиц в MySQL с помощью Perl

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

Чтобы создать новую таблицу, вы используете следующие шаги:

  1. Подключитесь к базе данных MySQL.
  2. Выполните инструкцию CREATE TABLE, вызвав метод do() объекта дескриптора базы данных.
  3. Отключиться от базы данных MySQL.

 

Пример создания таблиц в MySQL с помощью Perl

Мы собираемся создать три таблицы в примере базы данных perlmysqldb:

Следующая диаграмма иллюстрирует таблицы:

Создание таблиц в MySQL с помощью Perl

 

Ниже приведен скрипт Perl, который создает таблицы:

#!/usr/bin/perl
use strict;
use warnings;
use v5.10; # для функции say() 

use DBI;

say "Создание демонстрационных таблиц в MySQL с помощью Perl";

# Конфигурации баз данных MySQL
my $dsn = "DBI:mysql:perlmysqldb";
my $username = "root";
my $password = '';

# подключение к базе данных MySQL
my %attr = (PrintError=>0, RaiseError=>1);

my $dbh = DBI->connect($dsn,$username,$password, \%attr);

# создание таблиц
my @ddl =     (
# создать таблицу tags
"CREATE TABLE tags (
tag_id int(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
tag varchar(255) NOT NULL
) ENGINE=InnoDB;",
# создать таблицу links
"CREATE TABLE links (
link_id int(11) NOT NULL AUTO_INCREMENT PRIMARY KEY,
title varchar(255) NOT NULL,
url varchar(255) NOT NULL,
target varchar(45) NOT NULL
) ENGINE=InnoDB;",
# создать таблицу link_tags 
"CREATE TABLE link_tags (
link_id int(11) NOT NULL,
tag_id int(11) NOT NULL,
PRIMARY KEY (link_id,tag_id),
KEY fk_link_idx (link_id),
KEY fk_tag_idx (tag_id),
CONSTRAINT fk_tag FOREIGN KEY (tag_id)
REFERENCES tags (tag_id),
CONSTRAINT fk_link FOREIGN KEY (link_id)
REFERENCES links (link_id)
) ENGINE=InnoDB"
);

# execute all create table statements
for my $sql(@ddl){
$dbh->do($sql);
}

say "Все таблицы созданы успешно!";

# отключитесь от базы данных MySQL
$dbh->disconnect();

 

Как это работает.

Вывод сценария выглядит следующим образом:

Создание демонстрационных таблиц в MySQL с помощью Perl
Все таблицы созданы успешно!

 

Теперь вы можете проверить базу данных perlmysqldb, чтобы убедиться, что таблицы были созданы успешно.

Создание таблиц в MySQL с помощью Perl

 

В этой статье вы узнали, как создавать новые таблицы из Perl-программы в базе данных MySQL, используя метод do() объекта-дескриптора базы данных.

Exit mobile version