Como criar banco de dados em MySQL (Criar MySQL Tabelas)
Etapas para criar banco de dados em MySQL
Crie banco de dados de duas maneiras
1) Executando uma consulta SQL simples
2) Usando engenharia avançada em MySQL Workbench
As SQL iniciante, vamos examinar primeiro o método de consulta.
Como criar banco de dados em MySQL
Veja como criar um banco de dados em MySQL:
CREATE DATABASE é o comando SQL usado para criar um banco de dados em MySQL.
Imagine que você precisa criar um banco de dados com o nome “filmes”. Você pode criar um banco de dados em MySQL executando o seguinte comando SQL.
CREATE DATABASE movies;
Nota: você também pode usar o comando CREATE SCHEMA em vez de CREATE DATABASE
Agora vamos melhorar nossa consulta SQL adicionando mais parâmetros e especificações.
SE NÃO EXISTE
Uma única MySQL o servidor pode ter vários bancos de dados. Se você não é o único acessando o mesmo MySQL servidor ou se você tiver que lidar com vários bancos de dados, existe a probabilidade de tentar criar um novo banco de dados com o nome de um banco de dados existente. SE NÃO EXISTE deixe você instruir MySQL servidor para verificar a existência de um banco de dados com nome semelhante antes de criar o banco de dados.
Quando SE NÃO EXISTE O banco de dados usado será criado somente se o nome fornecido não entrar em conflito com o nome de um banco de dados existente. Sem o uso de SE NÃO EXISTE MySQL lança um erro.
CREATE DATABASE IF NOT EXISTS movies;
Agrupamento e conjunto de caracteres
Colação é um conjunto de regras usadas na comparação.Muitas pessoas usam MySQL para armazenar dados diferentes do inglês. Os dados são armazenados em MySQL usando um conjunto de caracteres específico. O conjunto de caracteres pode ser definido em diferentes níveis, a saber, servidor, banco de dados, tabela e colunas.
Você precisa selecionar as regras de agrupamento que, por sua vez, dependem do conjunto de caracteres escolhido.
Por exemplo, o conjunto de caracteres Latin1 usa o latin1_swedish_ci
agrupamento que é a ordem sueca que não diferencia maiúsculas de minúsculas.
CREATE DATABASE IF NOT EXISTS movies CHARACTER SET latin1 COLLATE latin1_swedish_ci
A melhor prática ao usar idiomas locais como árabe, chinês etc. é selecionar o conjunto de caracteres Unicode (utf-8) que possui vários agrupamentos ou apenas manter o agrupamento padrão utf8-general-ci.
Você pode encontrar a lista de todos os agrupamentos e conjuntos de caracteres aqui
Você pode ver a lista de bancos de dados existentes executando o seguinte comando SQL.
SHOW DATABASES
Como criar uma tabela em MySQL
O comando CREATE TABLE é usado para criar tabelas em um banco de dados
As tabelas podem ser criadas usando CRIAR TABELA instrução e na verdade tem a seguinte sintaxe.
CREATE TABLE [IF NOT EXISTS] `TableName` (`fieldname` dataType [optional parameters]) ENGINE = storage Engine;
AQUI
- “CREATE TABLE” é o responsável pela criação da tabela no banco de dados.
- “[IF NOT EXISTS]” é opcional e só cria a tabela se nenhum nome de tabela correspondente for encontrado.
- “`fieldName`” é o nome do campo e “data Type” define a natureza dos dados a serem armazenados no campo.
- “[parâmetros opcionais]” informações adicionais sobre um campo como “AUTO_INCREMENT” , NOT NULL etc.
MySQL Exemplo de criação de tabela
Abaixo está uma MySQL exemplo para criar uma tabela no banco de dados:
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;
Agora vamos ver o que MySQLOs tipos de dados são. Você pode usar qualquer um deles dependendo da sua necessidade. Você deve sempre tentar não subestimar ou superestimar o alcance potencial de dados ao criar um banco de dados.
TIPOS DE DADOS
Os tipos de dados definem a natureza dos dados que podem ser armazenados em uma coluna específica de uma tabela
MySQL tem 3 principais categorias de tipos de dados, nomeadamente
- Numérico,
- Texto
- Data hora.
Tipos de dados numéricos
Os tipos de dados numéricos são usados para armazenar valores numéricos. É muito importante garantir que o intervalo dos seus dados esteja entre os limites inferior e superior dos tipos de dados numéricos.
TINYINT( ) | -128 a 127 normais 0 a 255 NÃO ASSINADO. |
PEQUENO( ) | -32768 a 32767 normais 0 a 65535 NÃO ASSINADO. |
MÉDIO( ) | -8388608 a 8388607 normais 0 a 16777215 NÃO ASSINADO. |
INT( ) | -2147483648 a 2147483647 normais 0 a 4294967295 NÃO ASSINADO. |
GRANDE( ) | -9223372036854775808 a 9223372036854775807 normais 0 a 18446744073709551615 NÃO ASSINADO. |
FLOAT | Um pequeno número aproximado com um ponto decimal flutuante. |
DOBRO( , ) | Um número grande com um ponto decimal flutuante. |
DECIMAL( , ) | Um DOUBLE armazenado como string , permitindo um ponto decimal fixo. Escolha para armazenar valores monetários. |
Tipos de dados de texto
Como o nome da categoria do tipo de dados indica, eles são usados para armazenar valores de texto. Sempre certifique-se de que o comprimento dos seus dados textuais não exceda o comprimento máximo.
CARACTERES( ) | Uma seção fixa de 0 a 255 caracteres. |
VARCHAR( ) | Uma seção variável de 0 a 255 caracteres. |
TEXTO MINÚSCULO | Uma string com comprimento máximo de 255 caracteres. |
TEXTO | Uma string com comprimento máximo de 65535 caracteres. |
BLOB | Uma string com comprimento máximo de 65535 caracteres. |
TEXTO MÉDIO | Uma string com comprimento máximo de 16777215 caracteres. |
MÉDIO BLOBO | Uma string com comprimento máximo de 16777215 caracteres. |
TEXTO LONGO | Uma string com comprimento máximo de 4294967295 caracteres. |
LOBO LONGO | Uma string com comprimento máximo de 4294967295 caracteres. |
Data hora
INFORMAÇÃO | AAAA-MM-DD |
DATETIME | AAAA-MM-DD HH: MM: SS |
TIMESTAMP | AAAAMMDDHHMMSS |
TIME | HH: MM: SS |
Além do acima, existem alguns outros tipos de dados em MySQL.
ENUM | Para armazenar o valor do texto escolhido em uma lista de valores de texto predefinidos |
SET | Isto também é usado para armazenar valores de texto escolhidos em uma lista de valores de texto predefinidos. Pode ter vários valores. |
BOOL | Sinônimo de TINYINT(1), usado para armazenar valores booleanos |
BINARY | Semelhante ao CHAR, a diferença é que os textos são armazenados em formato binário. |
VARBINÁRIO | Semelhante ao VARCHAR, a diferença é que os textos são armazenados em formato binário. |
Agora vamos ver uma consulta para criar uma tabela que contém dados de todos os tipos de dados. Estude-o e identifique como cada tipo de dados é definido na tabela de criação abaixo MySQL exemplo.
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 ;
Melhores práticas
- Use letras maiúsculas para palavras-chave SQL, ou seja, “DROP SCHEMA IF EXISTS `MyFlixDB`;”
- Termine todos os seus comandos SQL usando ponto e vírgula.
- Evite usar espaços em nomes de esquemas, tabelas e campos. Use sublinhados para separar nomes de esquemas, tabelas ou campos.
Como criar MySQL diagrama ER de bancada engenharia avançada
MySQL bancada tem utilitários que dão suporte à engenharia avançada. Engenharia avançada é um termo técnico que descreve o processo de traduzir automaticamente um modelo lógico em um implemento físico.
Nós criamos um Diagrama ER no nosso Tutorial de modelagem ER. Agora usaremos esse modelo ER para gerar os scripts SQL que criarão nosso banco de dados.
Criando o banco de dados MyFlix a partir do modelo MyFlix ER
Passo 1) Modelo ER aberto do banco de dados MyFlix
Abra o modelo ER do banco de dados MyFlix que você criou no tutorial anterior.
Passo 2) Selecione engenheiro avançado
Clique no menu do banco de dados. Selecione engenheiro avançado
Passo 3) Opções de conexão
A próxima janela permite que você se conecte a uma instância do MySQL servidor. Clique na lista suspensa de conexões armazenadas e selecione o host local. Clique em Executar
Passo 4) Selecione as opções mostradas abaixo
Selecione as opções mostradas abaixo no assistente que aparece. Clique em próximo
Passo 5) Mantenha as seleções padrão e clique em Avançar
A próxima tela mostra o resumo dos objetos em nosso diagrama EER. Nosso banco de dados MyFlix possui 5 tabelas. Mantenha as seleções padrão e clique em Avançar.
Passo 6) Revveja o script SQL
A janela mostrada abaixo aparece. Esta janela permite visualizar o script SQL para criar nosso banco de dados. Podemos salvar os scripts em um arquivo *.sql” ou copiar os scripts para a área de transferência. Clique no próximo botão
Passo 7) Comprometer o progresso
A janela mostrada abaixo aparece após a criação bem-sucedida do banco de dados no local selecionado MySQL instância do servidor.
- A criação de um banco de dados envolve a tradução do modelo de design do banco de dados lógico no banco de dados físico.
- MySQL suporta vários tipos de dados para valores numéricos, datas e strings.
- O comando CREATE DATABASE é usado para criar um banco de dados
- O comando CREATE TABLE é usado para criar tabelas em um banco de dados
- MySQL O ambiente de trabalho oferece suporte à engenharia direta, que envolve a geração automática de scripts SQL a partir do modelo de banco de dados lógico que pode ser executado para criar o banco de dados físico
O banco de dados junto com os dados fictícios estão anexados. Estaremos usando este banco de dados para todos os nossos tutoriais futuros. Importação simples do banco de dados em MySQL Bancada de trabalho para começar
Clique aqui para baixar MyFlixDB