MySQLi tabeli loomine - Kuidas luua andmebaasi MySQL-is

Lang L: none (table-of-contents):

Anonim

Andmebaasi loomise sammud MySQL-is

Andmebaasi loomine kahel viisil

1) Lihtsa SQL-päringu käivitamine

2) MySQL Workbenchis edasiviiva inseneri abil

Selles SQL-õpetuses saate teada

  • Kuidas andmebaasi luua
  • Kuidas luua MySQL-is tabelit
  • Andmetüübid
  • MySQL tööpingi ER-diagramm edasi

SQL-i algajana uurime kõigepealt päringumeetodit.

Kuidas andmebaasi luua

MySQL-is andmebaasi loomiseks toimige järgmiselt.

CREATE DATABASE on SQL-käsk, mida kasutatakse MySQL-is andmebaasi loomiseks.

Kujutage ette, et peate looma andmebaasi nimega "filmid". MySQL-is saate andmebaasi luua, käivitades järgmise SQL-käsu.

CREATE DATABASE movies; 

Märkus. CREATE DATABASE asemel võite kasutada ka käsku CREATE SCHEMA

Nüüd parandame oma SQL-päringut, lisades rohkem parameetreid ja spetsifikatsioone.

KUI EI OLE

Ühel MySQL-serveril võib olla mitu andmebaasi. Kui te pole ainus, kes pääseb samale MySQL-i serverile või kui peate tegelema mitme andmebaasiga, on tõenäoline, et proovite luua uue andmebaasi olemasoleva andmebaasi nimega. KUI EI OLE, laseb teil enne andmebaasi loomist juhendada MySQL-i serverit kontrollima sarnase nimega andmebaasi olemasolu.

Kui kasutatakse KUI EI OLE, luuakse andmebaas ainult siis, kui eesnimi ei ole vastuolus olemasoleva andmebaasi nimega. Kui EI OLE OLEMA, kasutab MySQL vea.

CREATE DATABASE IF NOT EXISTS movies;

Sortimine ja märgistik

Collation on kogum eeskirju kasutatakse võrdlust. Paljud inimesed kasutavad MySQL-i muude andmete kui inglise keele salvestamiseks. Andmed salvestatakse MySQL-is kindla märgistiku abil. Märgistikku saab määratleda erinevatel tasanditel, nimelt server, andmebaas, tabel ja veerud.

Peate valima võrdlusreeglid, mis sõltuvad omakorda valitud märgistikust.

Näiteks kasutab Latin1 märgistik tähist

latin1_swedish_ci võrdlus, mis on Rootsi juhtumitundetu järjekord.
CREATE DATABASE IF NOT EXISTS movies CHARACTER SET latin1 COLLATE latin1_swedish_ci

Kohalike keelte, näiteks araabia, hiina jms kasutamisel on parim tava valida Unicode (utf-8) märgistik, millel on mitu võrdlust, või jääda lihtsalt vaikesortimise utf8-general-ci juurde.

Kõigi võrdluste ja märgistike loendi leiate siit

Olemasolevate andmebaaside loendit näete, käivitades SQL-i käsu.

SHOW DATABASES

Kuidas luua MySQL-is tabelit

CREATE TABLE käsku kasutatakse andmebaaside tabelite loomiseks

Tabeleid saab luua käsu CREATE TABLE abil ja sellel on tegelikult järgmine süntaks.

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

SIIN

  • "CREATE TABLE" vastutab andmebaasi tabeli loomise eest.
  • "[KUI EI OLE]" on valikuline ja looge tabel ainult siis, kui vastavat tabeli nime ei leitud.
  • "" fieldName "on välja nimi ja" data type "määratleb väljale salvestatavate andmete laadi.
  • "[valikulised parameetrid]" lisateave sellise välja kohta nagu "AUTO_INCREMENT", NOT NULL jne.

MySQLi tabeli loomise näide

Allpool on MySQL näide tabeli loomiseks andmebaasis:

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;

Vaatame nüüd, millised on MySQL-i andmetüübid. Võite kasutada ükskõik millist neist vastavalt vajadusele. Andmebaasi loomisel peaksite alati proovima mitte alahinnata ega ülehinnata potentsiaalset andmevahemikku.

ANDMETÜÜBID

Andmetüübid määratlevad andmete olemuse, mida saab salvestada tabeli konkreetsesse veergu

MySQL-l on 3 peamist tüüpi andmetüüpe

  1. Numbriline,
  2. Tekst
  3. Kuupäev Kellaaeg.

Numbrilised andmetüübid

Numbriliste andmete tüüpe kasutatakse arvväärtuste salvestamiseks. On väga oluline veenduda, et teie andmete vahemik oleks numbriliste andmetüüpide alumise ja ülemise piiri vahel.

TINYINT () -128 kuni 127 tavaline
0 kuni 255 MÄRKIMATA.
SMALLINT () -32768 kuni 32767 normaalne
0 kuni 65535 MÄRKimata.
KESKMINE () -8388608 kuni 8388607 normaalne
0 kuni 16777215 MITTEKIRJUTATUD.
INT () -2147483648 kuni 2147483647 normaalne
0 kuni 4294967295 MÄRKIMATA.
BIGINT () -9223372036854775808 kuni 9223372036854775807 kuni normaalne
0 kuni 18446744073709551615 MÄRKIMATA.
UJU Väike ligikaudne arv ujuva kümnendkohaga.
DOUBLE (,) Suur arv ujuva kümnendkohaga.
DECIMAL (,) KAHELIK, mis on salvestatud stringina, võimaldades fikseeritud koma. Valuuta väärtuste salvestamise valik.

Teksti andmetüübid

Kuna andmetüübi kategooria nimi tähendab, kasutatakse neid tekstiväärtuste salvestamiseks. Veenduge alati, et teie tekstiandmete pikkus ei ületaks maksimaalset pikkust.

CHAR () Fikseeritud osa pikkusega 0–255 tähemärki.
VARCHAR () Muutuv osa vahemikus 0 kuni 255 tähemärki.
TINYTEXT String maksimaalse pikkusega 255 tähemärki.
TEKST String maksimaalse pikkusega 65535 tähemärki.
MÄNG String maksimaalse pikkusega 65535 tähemärki.
KESKMINE String maksimaalse pikkusega 16777215 tähemärki.
KESKMÕÕN String maksimaalse pikkusega 16777215 tähemärki.
PIKATEKST String maksimaalse pikkusega 4294967295 tähemärki.
LONGBLOB String maksimaalse pikkusega 4294967295 tähemärki.

Kuupäev Kellaaeg

KUUPÄEV AAAA-KK-PP
KUUPÄEV KELLAAEG AAAA-KK-PP HH: KK: SS
AJAMÄNG YYYYMMDDHHMMSS
AEG HH: MM: SS

Lisaks ülaltoodule on MySQL-is veel mõned andmetüübid.

ENUM Eelmääratud tekstiväärtuste loendist valitud tekstiväärtuse salvestamiseks
SET Seda kasutatakse ka eelnevalt määratletud tekstiväärtuste loendist valitud tekstiväärtuste salvestamiseks. Sellel võib olla mitu väärtust.
BOOL Boolean väärtuste salvestamiseks kasutatava TINYINT (1) sünonüüm
Binaarne Sarnaselt CHAR-ile on erinevus ka tekstid salvestatud binaarses vormingus.
VARBAARNE Sarnaselt VARCHARile on erinevus ka tekstides binaarformaadis.

Nüüd vaatame päringut tabeli loomiseks, millel on kõigi andmetüüpide andmed. Uurige seda ja tehke kindlaks, kuidas alltoodud tabeli MySQL näide määratleb iga andmetüübi.

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 ;

Parimad tavad

  • SQL-i märksõnade jaoks kasutage suurtähti, st "DROP SCHEMA IF EXISIT" MyFlixDB ";"
  • Lõpeta kõik oma SQL-i käsud semikoolonite abil.
  • Vältige tühikute kasutamist skeemi, tabeli ja välja nimedes. Skeemi, tabeli või välja nimede eraldamiseks kasutage selle asemel alakriipsusid.

MySQL tööpingi ER-diagramm edasiarendus

MySQL-i töölaual on utiliite, mis toetavad edasiarendust. Edasine insener on tehniline termin, mis kirjeldab loogilise mudeli füüsiliseks töövahendiks tõlkimise protsessi .

Lõime oma ER-i modelleerimise õpetuse jaoks ER-skeemi. Selle andmebaasi loomiseks kasutame nüüd seda ER-i mudelit SQL-i skriptide loomiseks.

MyFlixi andmebaasi loomine MyFlix ER mudelist

1. Avage varasemas õpetuses loodud MyFlixi andmebaasi ER-mudel.

2. Klõpsake menüüd andmebaas. Valige edasiviiv insener

3. Järgmine aken võimaldab teil luua ühenduse MySQL-i serveri eksemplariga. Klõpsake salvestatud ühenduse rippmenüül ja valige kohalik host. Klõpsake nuppu Execute

4. Valige kuvatavas viisardis allpool näidatud suvandid. Klõpsake nuppu Järgmine

5. Järgmisel ekraanil kuvatakse objektide kokkuvõte meie EER-diagrammil. Meie MyFlix DB-l on 5 tabelit. Hoidke valikud vaikimisi ja klõpsake nuppu Edasi.

6 ... Ilmub allpool näidatud aken. See aken võimaldab teil andmebaasi loomiseks SQL-i skripti eelvaadet vaadata. Saame skriptid salvestada * .sql "faili või kopeerida skriptid lõikelauale. Klõpsake järgmisel nupul

7. Allpool näidatud aken kuvatakse pärast andmebaasi edukat loomist valitud MySQL-i serveri eksemplaris.

Kokkuvõte

  • Andmebaasi loomine hõlmab loogilise andmebaasi kujundusmudeli tõlkimist füüsilisse andmebaasi.
  • MySQL toetab arvude, kuupäevade ja stringide väärtuste jaoks mitut tüüpi andmet.
  • CREATE DATABASE käsku kasutatakse andmebaasi loomiseks
  • CREATE TABLE käsku kasutatakse andmebaaside tabelite loomiseks
  • MySQL-i tööpink toetab edasiarendust, mis hõlmab automaatselt SQL-skriptide loomist loogilisest andmebaasimudelist, mida saab käivitada füüsilise andmebaasi loomiseks

Andmebaas koos mannekeenidega on lisatud. Kasutame seda andmebaasi kõigi oma edasiste õpetuste jaoks. Alustamiseks lihtsalt importige DB MySQL Workbenchi

Klõpsake siin, et MyFlixDB alla laadida