MySQL Създаване на таблица - Как да създам база данни в MySQL

Съдържание:

Anonim

Стъпки за създаване на база данни в MySQL

Създайте база данни по два начина

1) Чрез изпълнение на проста SQL заявка

2) Чрез използване на напред инженеринг в MySQL Workbench

В този урок за SQL ще научите -

  • Как да създадете база данни
  • Как да създадете таблица в MySQL
  • Типове данни
  • MySQL Workbench ER диаграма напред инженеринг

Като начинаещ в SQL, нека първо разгледаме метода на заявката.

Как да създадете база данни

Ето как да създадете база данни в MySQL:

CREATE DATABASE е SQL командата, използвана за създаване на база данни в MySQL.

Представете си, че трябва да създадете база данни с име "филми". Можете да създадете база данни в MySQL, като изпълните следната SQL команда.

CREATE DATABASE movies; 

Забележка: можете също да използвате командата CREATE SCHEMA вместо CREATE DATABASE

Сега нека подобрим нашата SQL заявка, добавяйки повече параметри и спецификации.

АКО НЕ СЪЩЕСТВУВА

Един сървър MySQL може да има множество бази данни. Ако не сте единственият, който има достъп до един и същ MySQL сървър или ако трябва да се справите с множество бази данни, има вероятност да се опитате да създадете нова база данни с име на съществуваща база данни. АКО НЕ СЪЩЕСТВУВА, позволете ви да инструктирате MySQL сървъра да провери съществуването на база данни с подобно име преди създаването на база данни.

Когато се използва IF NOT EXISTS, базата данни се създава само ако дадено име не противоречи на името на съществуваща база данни. Без използването на IF NOT EXISTS MySQL извежда грешка.

CREATE DATABASE IF NOT EXISTS movies;

Събиране и набор от символи

Събирането е набор от правила, използвани в сравнение. Много хора използват MySQL за съхраняване на данни, различни от английски. Данните се съхраняват в MySQL, като се използва определен набор от символи. Наборът от символи може да бъде дефиниран на различни нива, а именно сървър, база данни, таблица и колони.

Трябва да изберете правилата за съпоставяне, които от своя страна зависят от избрания набор от символи.

Например набор от символи Latin1 използва

latin1_swedish_ci сравнение, което е шведският ред, нечувствителен към регистъра.
CREATE DATABASE IF NOT EXISTS movies CHARACTER SET latin1 COLLATE latin1_swedish_ci

Най-добрата практика при използване на местни езици като арабски, китайски и т.н. е да изберете Unicode (utf-8) набор от символи, който има няколко съпоставяния или просто да се придържате към стандартното съпоставяне utf8-general-ci.

Можете да намерите списъка с всички съпоставяния и набори от символи тук

Можете да видите списък със съществуващи бази данни, като изпълните следната SQL команда.

SHOW DATABASES

Как да създадете таблица в MySQL

Командата CREATE TABLE се използва за създаване на таблици в база данни

Таблиците могат да бъдат създадени с помощта на израза CREATE TABLE и той всъщност има следния синтаксис.

CREATE TABLE [IF NOT EXISTS] `TableName` (`fieldname` dataType [optional parameters]) ENGINE = storage Engine; 

ТУК

  • "CREATE TABLE" е този, който отговаря за създаването на таблицата в базата данни.
  • „[АКО НЕ СЪЩЕСТВУВА]“ не е задължително и създайте таблицата само ако не е намерено съответстващо име на таблица.
  • "` fieldName` "е името на полето, а" data type "определя естеството на данните, които трябва да се съхраняват в полето.
  • „[незадължителни параметри]“ допълнителна информация за поле като „AUTO_INCREMENT“, NOT NULL и т.н.

Пример за създаване на таблица в MySQL

По-долу е даден пример на MySQL за създаване на таблица в база данни:

CREATE TABLE IF NOT EXISTS `MyFlixDB`.`Members` (`membership_number` INT AUTOINCREMENT ,`full_names` VARCHAR(150) NOT NULL ,`gender` VARCHAR(6) ,`date_of_birth` DATE ,`physical_address` VARCHAR(255) ,`postal_address` VARCHAR(255) ,`contact_number` VARCHAR(75) ,`email` VARCHAR(255) ,PRIMARY KEY (`membership_number`) )ENGINE = InnoDB;

Сега нека видим какви са типовете данни на MySQL. Можете да използвате всеки от тях в зависимост от вашите нужди. Винаги трябва да се опитвате да не подценявате или надценявате потенциалния обхват от данни, когато създавате база данни.

ВИДОВЕ ДАННИ

Типовете данни определят естеството на данните, които могат да се съхраняват в определена колона на таблица

MySQL има 3 основни категории типове данни, а именно

  1. Цифров,
  2. Текст
  3. Време за среща.

Числови типове данни

Цифровите типове данни се използват за съхраняване на числови стойности. Много е важно да се уверите, че обхватът на вашите данни е между долната и горната граница на числовите типове данни.

TINYINT () -128 до 127 нормално
0 до 255 НЕПОДПИСАНО.
СМАЛЛИНТ () -32768 до 32767 нормално
0 до 65535 НЕПОДПИСАНО.
СРЕДЕН () -8388608 до 8388607 нормално
0 до 16777215 НЕПОДПИСАНО.
INT () -2147483648 до 2147483647 нормално
0 до 4294967295 НЕПОДПИСАНО.
ГОЛЯМ () -9223372036854775808 до 9223372036854775807 нормално
0 до 18446744073709551615 НЕПОДПИСАНО .
ПЛАВА Малко приблизително число с плаваща десетична запетая.
ДВОЙНО (,) Голямо число с плаваща десетична точка.
ДЕЦИМАЛНА (,) ДВОЙНА, съхранена като низ, позволяваща фиксирана десетична точка. Избор за съхранение на валутни стойности.

Типове текстови данни

Както подсказва името на категорията данни, те се използват за съхраняване на текстови стойности. Винаги се уверете, че дължината на вашите текстови данни не надвишава максималната дължина.

CHAR () Фиксирана секция с дължина от 0 до 255 знака.
VARCHAR () Секция с променлива от 0 до 255 знака.
ТИНИТЕКСТ Низ с максимална дължина от 255 знака.
ТЕКСТ Низ с максимална дължина от 65535 знака.
BLOB Низ с максимална дължина от 65535 знака.
СРЕДЕН ТЕКСТ Низ с максимална дължина от 16777215 знака.
СРЕДЕН КРАН Низ с максимална дължина от 16777215 знака.
ДЪЛГОТЕКСТ Низ с максимална дължина от 4294967295 знака.
LONGBLOB Низ с максимална дължина от 4294967295 знака.

Време за среща

ДАТА ГГГГ-ММ-ДД
ВРЕМЕ ЗА СРЕЩА ГГГГ-ММ-ДД ЧЧ: ММ: СС
TIMESTAMP ГГГГММДДХХММСС
ВРЕМЕ HH: MM: SS

Освен горе, има и други типове данни в MySQL.

ENUM За съхраняване на текстова стойност, избрана от списък с предварително дефинирани текстови стойности
КОМПЛЕКТ Това се използва и за съхраняване на текстови стойности, избрани от списък с предварително дефинирани текстови стойности. Може да има множество стойности.
БУЛ Синоним на TINYINT (1), използван за съхраняване на булеви стойности
ДВОЙНИ Подобно на CHAR, разликата е, че текстовете се съхраняват в двоичен формат.
ВАРБИНАРНА Подобно на VARCHAR, разликата е, че текстовете се съхраняват в двоичен формат.

Сега нека видим заявка за създаване на таблица, която съдържа данни от всички типове данни. Проучете го и идентифицирайте как всеки тип данни е дефиниран в примера за създаване на таблица по-долу MySQL.

CREATE TABLE`all_data_types` (`varchar` VARCHAR( 20 ) ,`tinyint` TINYINT ,`text` TEXT ,`date` DATE ,`smallint` SMALLINT ,`mediumint` MEDIUMINT ,`int` INT ,`bigint` BIGINT ,`float` FLOAT( 10, 2 ) ,`double` DOUBLE ,`decimal` DECIMAL( 10, 2 ) ,`datetime` DATETIME ,`timestamp` TIMESTAMP ,`time` TIME ,`year` YEAR ,`char` CHAR( 10 ) ,`tinyblob` TINYBLOB ,`tinytext` TINYTEXT ,`blob` BLOB ,`mediumblob` MEDIUMBLOB ,`mediumtext` MEDIUMTEXT ,`longblob` LONGBLOB ,`longtext` LONGTEXT ,`enum` ENUM( '1', '2', '3' ) ,`set` SET( '1', '2', '3' ) ,`bool` BOOL ,`binary` BINARY( 20 ) ,`varbinary` VARBINARY( 20 )) ENGINE= MYISAM ;

Най-добри практики

  • Използвайте главни букви за ключови думи на SQL, т.е. "DROP SCHEMA IF EXISTS` MyFlixDB`; "
  • Завършете всичките си SQL команди с помощта на запетая.
  • Избягвайте да използвате интервали в имена на схеми, таблици и полета. Вместо това използвайте подчертавания, за да отделите имена на схеми, таблици или полета.

MySQL Workbench ER диаграма напред инженерство

MySQL Workbench има помощни програми, които поддържат напред инженеринг. Напред инженерингът е технически термин, който описва процеса на автоматично преобразуване на логически модел във физически инструмент .

Създадохме ER диаграма в нашия урок за моделиране на ER. Сега ще използваме този ER модел, за да генерираме SQL скриптове, които ще създадат нашата база данни.

Създаване на базата данни MyFlix от модела MyFlix ER

1. Отворете ER модела на базата данни MyFlix, който сте създали в предишния урок.

2. Щракнете върху менюто на базата данни. Изберете преден инженер

3. Следващият прозорец ви позволява да се свържете с екземпляр на MySQL сървър. Щракнете върху падащия списък на съхранената връзка и изберете локален хост. Щракнете върху Изпълнение

4. Изберете опциите, показани по-долу в съветника, който се появява. Щракнете върху следващия

5. Следващият екран показва обобщението на обектите в нашата EER диаграма. Нашата MyFlix DB има 5 таблици. Запазете селекциите по подразбиране и щракнете върху Напред.

6 ... Появява се прозорецът, показан по-долу. Този прозорец ви позволява да прегледате SQL скрипта, за да създадете нашата база данни. Можем да запазим скриптовете във файл * .sql "или да копираме скриптовете в клипборда. Кликнете върху следващия бутон

7. Прозорецът, показан по-долу, се появява след успешно създаване на базата данни на избрания екземпляр на MySQL сървър.

Обобщение

  • Създаването на база данни включва преобразуване на логическия модел за проектиране на база данни във физическата база данни.
  • MySQL поддържа редица типове данни за числови, дати и низови стойности.
  • Командата CREATE DATABASE се използва за създаване на база данни
  • Командата CREATE TABLE се използва за създаване на таблици в база данни
  • MySQL workbench поддържа напред инженеринг, който включва автоматично генериране на SQL скриптове от логическия модел на база данни, който може да бъде изпълнен за създаване на физическата база данни

Базата данни заедно с фиктивни данни е приложена. Ще използваме тази DB за всички наши следващи уроци. Просто импортирайте DB в MySQL Workbench, за да започнете

Щракнете тук, за да изтеглите MyFlixDB