MySQL е често срещана и широко избрана система за управление на релационни бази данни с отворен код (RDBMS). В тази статия обсъждаме командите на MySQL и предлагаме измамник с често срещани MySQL заявки, за да помогнем на потребителите да работят с MySQL по-ефективно и ефективно.
Какво е MySQL база данни?
MySQL е RDBMS с отворен код, разработена от Oracle Corporation. Първоначално е разработен и пуснат от шведската компания MySQL AB на 23 май 1995 г.
MySQL работи добре и е надежден с приложения за бизнес разузнаване (BI), особено приложения за бизнес интелигентност, особено тежки за четене. MySQL и InnoDB заедно осигуряват страхотни скорости на четене/запис за OLTP сценарии и работят добре със сценарии с висок паралелизъм. Освен това MySQL предлага две различни издания, MySQL Community Server с отворен код и Proprietary Enterprise Server.
MySQL работи на много системни платформи, включително Linux, Windows, macOS и така нататък. Освен това е една от най-стабилните системи за управление на бази данни и някои облачни платформи я предлагат „като услуга“. Базираните в облак MySQL услуги включват Oracle MySQL Cloud Service, Amazon Relational Database Service и Azure Database за MySQL.
Команди на MySQL
MySQL използва команди за комуникация с базата данни MySQL чрез създаване на заявки с данни и изпълнение на специфични задачи и функции. Командите са инструкции, кодирани в SQL (структуриран език за заявки) изрази. За да напишете заявка, е необходим набор от предварително дефиниран код, който е разбираем за базата данни.
MySQL поддържа всички стандартни за SQL типове данни в няколко категории, включително Числови , Дата и час , Стринг и Пространствени типове данни. Типовете данни низ включват Символен низ и Байтов низ . MySQL също така внедрява пространствени разширения като подмножество на SQL с Типове на геометрията среда след Отворения геопространствен консорциум (OGC) спецификация.
Чайт лист за MySQL
По-долу са някои от най-често използваните MySQL команди и изрази, които помагат на потребителите да работят с MySQL по-лесно и ефективно. В тази статия представяме накратко най-често използваните команди – включително клиентските команди от командния ред на MySQL – и командите за работа с бази данни, таблици, индекси, изгледи, тригери, процедури и функции.
Команди на клиента от командния ред на MySQL
По-долу е даден списък с клиентски команди от командния ред на MySQL:
mysql -u [username] -p; # Connect to MySQL server mysql -u [username] -p [database]; # Connect to MySQL Server exit; # Exit mysql command-line client mysqldump -u [username] -p [database] > data_backup.sql; # Export data using mysqldump tool mysql> system clear; # Clear MySQL screen console for Linux
Клиентските команди на MySQL от командния ред са налични в Linux за изчистване на прозореца на екранната конзола на MySQL и няма клиентска команда, налична в Windows OS.
Команди на MySQL за работа с бази данни
По-долу са командите на MySQL, използвани за работа с бази данни:
CREATE DATABASE [IF NOT EXISTS] database_name; # Create a database in the server SHOW DATABASE; # Show all available databases USE database_name; # Use a database with a specified name DROP DATABASE [IF EXISTS] database_name; # Drop a database with a specified name
MySQL команди за работа с таблици
Ето MySQL команди за работа с таблици в база данни:
CREATE TABLE [IF NOT EXISTS] table_name(column_list,...); # Create a new table SHOW TABLES; # Show all tables in the database DROP TABLE [IF EXISTS] table_name; # Drop a table from the database
Често използвани MySQL команди
По-долу е даден списък на най-често използваните MySQL команди за разработчици на бази данни и администратори на бази данни, използващи MySQL бази данни:
ALTER
ALTER TABLE table_name ADD [COLUMN] column_name; ALTER TABLE table_name DROP [COLUMN] column_name; ALTER TABLE table_name MODIFY column_name type; ALTER TABLE table_name MODIFY column_name type NOT NULL ...; ALTER TABLE table_name CHANGE old_column_name new_column_name type; ALTER TABLE table_name CHANGE old_column_name new_column_name type NOT NULL ...; ALTER TABLE table_name MODIFY column_name type FIRST; ALTER TABLE table_name MODIFY column_name type AFTER another_column; ALTER TABLE table_name CHANGE old_column_name new_column_name type FIRST; ALTER TABLE table_name CHANGE old_column_name new_column_name type AFTER another_column; ALTER TABLE table_name ALTER column_name SET DEFAULT ...; ALTER TABLE table_name ALTER column_name DROP DEFAULT; ALTER TABLE table_name ADD new_column_name type; ALTER TABLE table_name ADD new_column_name type FIRST; ALTER TABLE table_name ADD new_column_name type AFTER another_column; ALTER TABLE table_name ADD INDEX [name](column, ...); ALTER TABLE table_name ADD PRIMARY KEY (column_name,...); ALTER TABLE table_name DROP PRIMARY KEY;
ИЗБЕРЕТЕ
SELECT * FROM table_name; SELECT * FROM table1, table2, …; SELECT column_name FROM table_name; SELECT column1, column2, ... FROM table_name; SELECT column1, column2, ... FROM table1, table2, …; SELECT select_list FROM table_name WHERE condition; SELECT select_list FROM table GROUP BY column1, column2, ...; SELECT select_list FROM table GROUP BY column_name HAVING condition; SELECT COUNT(*) FROM table_name; SELECT DISTINCT (column_name) FROM table_name; SELECT select_list FROM table ORDER BY column_name; SELECT select_list FROM table ORDER BY column1 ASC [DESC], column2 ASC [DESC]; SELECT column_name AS alias_name, expression AS alias, ... FROM table_name; SELECT select_list FROM table_name WHERE column LIKE '%pattern%'; SELECT select_list FROM table_name WHERE column RLIKE 'regular_expression';
ИЗБЕРЕТЕ – ПРИСЪЕДИНЕТЕ СЕ
SELECT select_list FROM table1 INNER JOIN table2 ON condition; SELECT select_list FROM table1 LEFT JOIN table2 ON condition; SELECT select_list FROM table1 RIGHT JOIN table2 ON condition; SELECT select_list FROM table1 CROSS JOIN table2;
ОПИСАЙТЕ
DESCRIBE table_name; DESCRIBE table_name column_name;
ВМЕСЕТЕ В
INSERT INTO table (column_list) VALUES(value_list); INSERT INTO table (column_list) VALUES(list1), (list2), ...;
АКТУАЛИЗИРАНЕ
UPDATE table_name SET column1 = value1, ...; UPDATE table_name SET column_1 = value_1, ... WHERE condition; UPDATE table1, table2 INNER JOIN table1 ON table1.column1 = table2.column2 SET column1 = value1, WHERE condition;
ИЗТРИВАНЕ
DELETE FROM table_name; DELETE FROM table_name WHERE condition; DELETE table1, table2 FROM table1 INNER JOIN table2 ON table1.column1= table2.column2 WHERE condition;
ИНДЕКС
CREATE INDEX index_name ON table_name (column,...); DROP INDEX index_name; CREATE UNIQUE INDEX index_name ON table_name (column,...);
ПРЕГЛЕД
CREATE VIEW [IF NOT EXISTS] view_name AS select_statement; CREATE VIEW [IF NOT EXISTS] view_name AS select_statement WITH CHECK OPTION; CREATE OR REPLACE view_name AS select_statement; DROP VIEW [IF EXISTS] view_name; DROP VIEW [IF EXISTS] view1, view2, ...; RENAME TABLE view_name TO new_view_name; SHOW FULL TABLES [{FROM | IN } database_name] WHERE table_type = 'VIEW';
ЗАПУСКАНЕ
CREATE TRIGGER trigger_name {BEFORE | AFTER} {INSERT | UPDATE| DELETE } ON table_name FOR EACH ROW trigger_body; SHOW TRIGGERS [{FROM | IN} database_name] [LIKE 'pattern' | WHERE search_condition]; DROP TRIGGER [IF EXISTS] trigger_name;
ПРОЦЕДУРА
DELIMITER $$ CREATE PROCEDURE procedure_name (parameter_list) BEGIN body; END $$ DELIMITER; DROP PROCEDURE [IF EXISTS] procedure_name; SHOW PROCEDURE STATUS [LIKE 'pattern' | WHERE search_condition];
ФУНКЦИЯ
DELIMITER $$ CREATE FUNCTION function_name(parameter_list) RETURNS datatype [NOT] DETERMINISTIC BEGIN -- statements END $$ DELIMITER; DROP FUNCTION [IF EXISTS] function_name; SHOW FUNCTION STATUS [LIKE 'pattern' | WHERE search_condition];
Потребители и привилегии
CREATE USER 'user'@'localhost'; GRANT ALL PRIVILEGES ON base.* TO 'user'@'localhost' IDENTIFIED BY 'password'; GRANT SELECT, INSERT, DELETE ON base.* TO 'user'@'localhost' IDENTIFIED BY 'password'; REVOKE ALL PRIVILEGES ON base.* FROM 'user'@'host'; REVOKE ALL PRIVILEGES, GRANT OPTION FROM 'user'@'host'; FLUSH PRIVILEGES; SET PASSWORD = PASSWORD('new_pass'); SET PASSWORD FOR 'user'@'host' = PASSWORD('new_pass'); SET PASSWORD = OLD_PASSWORD('new_pass'); DROP USER 'user'@'host';
Заключение на MySQL Cheat Sheet
MySQL има репутацията на изключително бърза база данни за тежки натоварвания с четене и е страхотна при процеси, натоварени с четене. MySQL cheat sheet включва най-често използваните команди и изрази, за да помогне на потребителите на MySQL база данни да я управляват по-ефективно и лесно.