Създаването на база данни в MySQL е толкова лесно, колкото става. Един ред е всичко, което е необходимо. Всъщност обикновено ми отнема повече време да измисля име за базата данни, отколкото да я създам!
Въпреки че със сигурност можете да създавате своите бази данни чрез GUI на MySQL Workbench, вероятно ще откриете, че ще намерите по-бързо да ги създадете програмно, като използвате CREATE DATABASE
изявление.
CREATE DATABASE
Изявление
Можете да създадете нова база данни с помощта на CREATE DATABASE
изявление. Това изявление е част от SQL, който е език със специална цел за заявки и програмиране на бази данни.
Синтаксисът е CREATE DATABASE db_name
където db_name
е името на базата данни, която искате да създадете.
Например, за да създадете база данни, наречена FruitShop
въведете следното в раздела Заявка и изпълнете заявката:
CREATE DATABASE FruitShop;
Това е всичко, което е необходимо. СХЕМИ разделът в лявото меню вече трябва да показва вашата база данни:
Ако не можете да видите вашата база данни, щракнете върху малката икона за опресняване до СХЕМИ заглавие.
Можете също да използвате следната команда, за да покажете списък с бази данни на сървъра:
SHOW DATABASES;
Но, разбира се, вече имате празна база данни. Ще трябва да добавите таблици и да вмъкнете данни, преди да имате напълно функционираща база данни. Ще стигнем до това скоро.
CREATE SCHEMA
Изявление
Можете също да използвате CREATE SCHEMA
изявление. Това използва същия синтаксис, така че горният израз може да бъде пренаписан на това:
CREATE SCHEMA FruitShop;
Използване на IF NOT EXISTS
Можете да използвате IF NOT EXISTS
за да предотвратите възникването на грешка, ако базата данни вече съществува. Ето един пример:
CREATE DATABASE IF NOT EXISTS FruitShop;
Използване на DROP DATABASE IF EXISTS
Използване на горния IF NOT EXISTS
е страхотно, стига да нямате намерение да замените базата данни (и всички нейни данни) с нова нова. Но понякога може да искате да изтриете старата база данни и да започнете отново от нулата. Това е мястото, където DROP DATABASE
идва по-удобно.
Можете да използвате DROP DATABASE
за да премахнете всички таблици в базата данни и да изтриете базата данни, преди да стартирате CREATE DATABASE
изявление. Можете да комбинирате това с IF EXISTS
за да укажете, че операторът трябва да се изпълнява само ако базата данни съществува в момента. Това ще предотврати възникването на грешка, ако се опитате да изтриете база данни, която всъщност не съществува.
Ето как може да изглежда това:
DROP DATABASE IF EXISTS FruitShop; CREATE DATABASE FruitShop;
Относно точките и запетаята
Горният пример използва точки и запетая (;
), за да маркирате края на всяко твърдение. MySQL командите обикновено се състоят от SQL израз, последван от точка и запетая. Има някои изключения, но повечето команди следват тази конвенция. Ако установите, че команда, която пишете, не се изпълнява, проверете дали сте включили точката и запетаята след всяко изявление.
Дизайн на база данни
Преди да създадете своята база данни, трябва да помислите за нейния дизайн. Трябва да помислите какви таблици и други обекти ще съдържа, както и данните, които ще се съхраняват в базата данни.
В действителност, когато създавате база данни, вие не просто създавате празна база данни и след това мислите какви таблици ще влязат в нея по-късно. Обикновено бихте написали скрипт, който създава базата данни и всички нейни таблици и други обекти наведнъж.
За щастие, да направите това е доста лесно. Това е просто въпрос на комбиниране на SQL изрази, един след друг, за всеки обект, който искате да създадете.
След това ще разгледаме създаването на таблици, но засега ето един бърз пример:
DROP DATABASE IF EXISTS FruitShop; CREATE DATABASE FruitShop; USE FruitShop; CREATE TABLE Fruit (FruitName VARCHAR(20), DateEntered DATETIME);
Това е прост пример, който създава база данни и таблица в тази база данни. Можете да напишете дълъг скрипт, който създава база данни и много таблици, както и други обекти на базата данни.
Можете също да напишете друг скрипт, който попълва таблиците с необходимите първоначални данни. Можете дори да комбинирате двата скрипта в един, ако желаете.
Конвенции за именуване
Добра идея е да поддържате последователна конвенция за именуване. Можете да извикате базата данни FruitShop
(заглавие), FRUITSHOP
(главни букви), fruitshop
(малки букви), fruit_shop
(с разделител за долно черта) и др.
Някои хора също обичат да поставят префикс на своите обекти в базата данни. Например, поставяне на префикс на таблици с tbl
или tbl_
и съхранени процедури с sp
или sp_
. Така че една таблица може да се нарече tblCustomers
или tbl_customers
и др.
Трябва да помислите и за множествено число. Обаждате ли таблица, която съдържа всички клиентски записи customer
или customers
. Ако изберете customers
, тогава трябва също да извикате таблица, която съдържа всички продукти products
а не product
.
Каквото и да изберете, трябва да се опитате да поддържате една и съща конвенция в цялата си база данни.
Създаването на конвенция за именуване ще помогне изключително много, когато започнете да пишете заявки към вашата база данни. Няма да ви се налага да помните дали сте именували конкретна таблица с долна черта, главни букви и т.н.