3
respostas

[Dúvida] Necessidade de SQL

Em a formação que estou fazendo na Alura tem HMLT, CSS E JS. Acredito que quando começar com Java vou precisar SQL, é isso?

3 respostas

Oi, Rafael! Como vai?

Com o que você descreveu, é importante separar bem as coisas: JavaScript e Java são linguagens diferentes, mesmo com nomes parecidos.

Se você está aprendendo HTML, CSS e JavaScript, não precisa necessariamente usar SQL. JavaScript é mais voltado para o lado do navegador (front-end), manipulando o que o usuário vê e interage. Embora seja possível usar JavaScript também no back-end (com Node.js, por exemplo), o uso de SQL só acontece se o projeto envolver um banco de dados.

Agora, se você for começar com Java (a linguagem usada, por exemplo, em desenvolvimento de APIs, aplicativos Android, sistemas corporativos), aí sim, é bem comum integrar com bancos de dados, e o SQL entra como uma ferramenta importante para lidar com esses dados.

Ou seja:

  • Se for JavaScript puro no front-end, SQL não é necessário.
  • Se for Java, conhecer SQL pode ser um diferencial e vai ajudar bastante.

Espero ter ajudado. Conte com o apoio do Fórum na sua jornada. Fico à disposição.

Abraços e bons estudos!

  Caso este post tenha lhe ajudado, por favor, marcar como solucionado

Gostei da explicação, mas acho que minha pergunta foi imcompleta, o que quero saber é o seguin, por exemplo, se eu fizer um formulário de cadastro no Front-end, as informações preenchidas precisaram ir para algum lugar que lugar seria esse, não seria um banco de dados, portanto preciso saber SQL, no caso de Mongólia DB preciso saber SQL também? pode me dar um exemplo, caso preciso de um banco de dados para armazenar as informações, sobre como ficaria o código?

Oi, Rafael!

Obrigada por trazer mais contexto.

Se você cria um formulário de cadastro no front-end (HTML + JS), os dados digitados pelo usuário precisam ser enviados para algum lugar, e esse lugar é normalmente um banco de dados. Mas o front-end não salva dados diretamente no banco, quem faz isso é o back-end.

Sobre SQL e MongoDB:

  • SQL (Structured Query Language) é usado com bancos como MySQL e PostgreSQL.
  • MongoDB é um banco NoSQL, ou seja, ele não usa SQL. Em vez de tabelas, ele usa documentos JSON.

Você só precisa saber SQL se o banco for do tipo relacional. Se usar MongoDB, aprender como interagir com ele em JavaScript já é suficiente, não precisa aprender SQL.

Exemplo de cadastro de usuário com front-end + back-end + banco de dados MongoDB

1. HTML (formulário do front-end):


<form id="cadastro">
  <input type="text" id="nome" placeholder="Digite seu nome" required />
  <input type="email" id="email" placeholder="Digite seu email" required />
  <button type="submit">Cadastrar</button>
</form>

<script>
  const form = document.getElementById('cadastro');

  form.addEventListener('submit', async (e) => {
    e.preventDefault();

    const nome = document.getElementById('nome').value;
    const email = document.getElementById('email').value;

    await fetch('http://localhost:3000/usuarios', {
      method: 'POST',
      headers: { 'Content-Type': 'application/json' },
      body: JSON.stringify({ nome, email })
    });
  });
</script>

2. Back-end em Node.js + Express + MongoDB:


const express = require('express');
const mongoose = require('mongoose');
const cors = require('cors');

const app = express();
app.use(express.json());
app.use(cors()); // permite acesso do front-end

mongoose.connect('mongodb://localhost:27017/usuariosDB');

const Usuario = mongoose.model('Usuario', {
  nome: String,
  email: String
});

app.post('/usuarios', async (req, res) => {
  const novoUsuario = new Usuario(req.body);
  await novoUsuario.save();
  res.status(201).send('Usuário salvo com sucesso!');
});

app.listen(3000, () => {
  console.log('Servidor rodando em http://localhost:3000');
});

Os conteúdos abaixo podem te auxiliar a entender melhor como se constrói uma palicação completa:

Fico à disposição. Abraços e bons estudos!