Användbara och vanliga exempel på MySQL-frågor med svar för utvecklaren och DBA:er
Hur man skapar en MySQL-databas
mysql> create database techdb;
mysql> use techdb;
Hur skapar jag en tabell i mysql-databasen?
Här är exemplet för att skapa tabeller i MySQL-databasen
(1) Vi måste först komma in i databasen
use techdb;
(2) Skapa en tabell med syntaxen nedan
CREATE TABLE test ( test_id bigint(20) unsigned NOT NULL AUTO_INCREMENT, test_desp varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '', test_name varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '', test_updated datetime NOT NULL DEFAULT '0000-00-00 00:00:00', PRIMARY KEY (test_id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
Förklaring av de olika detaljerna i synta för tabellskapande x
test -> Tabellnamn
test_id,test_description -> Tabellkolumn
bigint(20,varchar -> Datatyp för kolumn
Inte null-> kolumn kan inte vara null
utf8mb4_unicode_ci -> Sortering
AUTO_INCREMENT -> Värden inkrementeras automatiskt vid infogning
Motor -> Ange motorn för tabellen
Hur man visar tabellens struktur efter att den skapats
När tabellen väl har skapats kan tabellstrukturen visas med
Desc test
Hur får man tabellskapandesatsen för tabellen i MySQL?
det kan hittas med kommandot
mysql> show create table <table name>
Hur utför man nedanstående vanliga DML-operation på bordet?
(a) Infoga uttalande
insert into test (test_desctiption,test_name,test_updated) values ('this is mysql test','mysql-test-1',current_date);
Här angav vi inte test_id eftersom det är auto-inkrement och det kommer att ha ett värde när rader infogas i tabellen
(b) Välj uttalande
select * from test where test_id=1;
(c) Ta bort uttalande
delete from test where test_id=1;
Hur inaktiverar man autocommit för sessionen?
SET autocommit=0;
Hur ändrar eller släpper man tabellen i MySQL?
Ändra tabell
alter table test add (test_description varchar(255) not null default '');
Släpp tabell
drop table test2;
Hur skapar man en tabell från en annan tabell i MySQL?
create table test4 select * from test3;
Hur skapar man ett index och släpper ett index på tabellen i MySQL?
(a) skapa index
create index test3_idx on test3(table_name);
(b) visa index
show index from test3;
(c) droppindex
drop index test3_idx on test3
Hur får man exekveringsplanen för mysql-frågan?
explain <query>
Hur väljer man data från flera tabeller med join i Mysql?
Mysql stöder inner join, left join och Right join för att hämta data från flera tabeller samtidigt
Inre Join
select test_name,student_name,test_marks from test,student_test where test.test_id=student_test.test_id; or select test_name,student_name,test_marks from test join student_test on test.test_id=student_test.test_id
Vänster Gå med
select test_name,student_name,test_marks from test left join student_test on test.test_id=student_test.test_id;
Rätt gå med
select test_name,student_name,test_marks from test right join student_test on test.test_id=student_test.test_id;
Automatisk ökning av kolumn i MySQL-databas
Vi kan ha ett automatiskt inkrement-attribut för kolumnen i Mysql
CREATE TABLE test ( test_id bigint(20) unsigned NOT NULL AUTO_INCREMENT, test_desp varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '', test_name varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '', test_updated datetime NOT NULL DEFAULT '0000-00-00 00:00:00', PRIMARY KEY (test_id) )
Hoppas du gillar dessa MySQL-frågor med svar
Relaterade artiklar
Steg-för-steg-guide för installation av MySQL på Windows
Automatisk ökningskolumn – Sekvens som standardvärde i Oracle och mysql
Topp 51 vanliga frågor och svar på MySQL-intervjuer
Steg-för-steg-guide för att bygga lokal Apache PHP MySQL-utvecklingsmiljö i Windows
Hur återställer du MySQL root-lösenord