A conexão e execução de comandos no MySQL varia de acordo com a linguagem, mas o padrão do banco de dados (as queries SQL) permanece o mesmo. O que muda em cada linguagem é o driver / biblioteca de conexão.
1. SQL Universal (Estrutura do Banco)
Antes da conexão pelas linguagens, crie o banco e a tabela diretamente no MySQL:
SQL
CREATE DATABASE sistema;
USE sistema;
CREATE TABLE usuarios (
id INT AUTO_INCREMENT PRIMARY KEY,
nome VARCHAR(100) NOT NULL,
email VARCHAR(100) NOT NULL
);
2. Python (mysql-connector-python)
Instalação:
pip install mysql-connector-pythonPython
import mysql.connector
# Conexão
db = mysql.connector.connect(
host="localhost",
user="root",
password="sua_senha",
database="sistema"
)
cursor = db.cursor()
# Insert (Inserir)
sql = "INSERT INTO usuarios (nome, email) VALUES (%s, %s)"
val = ("Vinicius", "vinicius@email.com")
cursor.execute(sql, val)
db.commit()
# Select (Buscar)
cursor.execute("SELECT * FROM usuarios")
resultado = cursor.fetchall()
for usuario in resultado:
print(usuario)
cursor.close()
db.close()
3. JavaScript / Node.js (mysql2)
Instalação:
npm install mysql2JavaScript
const mysql = require('mysql2/promise');
async function executar() {
const connection = await mysql.createConnection({
host: 'localhost',
user: 'root',
password: 'sua_senha',
database: 'sistema'
});
// Insert
await connection.execute(
'INSERT INTO usuarios (nome, email) VALUES (?, ?)',
['Vinicius', 'vinicius@email.com']
);
// Select
const [rows] = await connection.execute('SELECT * FROM usuarios');
console.log(rows);
await connection.end();
}
executar();
4. PHP (PDO - Padrão Recomendado)
PHP
<?php
$host = 'localhost';
$db = 'sistema';
$user = 'root';
$pass = 'sua_senha';
try {
$pdo = new PDO("mysql:host=$host;dbname=$db;charset=utf8", $user, $pass);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// Insert
$stmt = $pdo->prepare('INSERT INTO usuarios (nome, email) VALUES (:nome, :email)');
$stmt->execute(['nome' => 'Vinicius', 'email' => 'vinicius@email.com']);
// Select
$stmt = $pdo->query('SELECT * FROM usuarios');
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
echo $row['nome'] . " - " . $row['email'] . "<br>";
}
} catch (PDOException $e) {
echo "Erro: " . $e->getMessage();
}
?>
5. TypeScript (Node.js com mysql2 Tipado)
Instalação:
npm install mysql2TypeScript
import mysql, { ResultSetHeader, RowDataPacket } from 'mysql2/promise';
interface Usuario extends RowDataPacket {
id: number;
nome: string;
email: string;
}
async function run(): Promise<void> {
const conn = await mysql.createConnection({
host: 'localhost',
user: 'root',
password: 'sua_senha',
database: 'sistema'
});
// Insert
await conn.execute<ResultSetHeader>(
'INSERT INTO usuarios (nome, email) VALUES (?, ?)',
['Vinicius', 'vinicius@email.com']
);
// Select
const [rows] = await conn.execute<Usuario[]>('SELECT * FROM usuarios');
rows.forEach(u => console.log(u.nome, u.email));
await conn.end();
}
run();
6. Java (JDBC)
Dependência: Incluir o JAR
mysql-connector-j no projeto.Java
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
public class Main {
public static void main(String[] args) {
String url = "jdbc:mysql://localhost:3306/sistema";
String user = "root";
String password = "sua_senha";
try (Connection conn = DriverManager.getConnection(url, user, password)) {
// Insert
String insertSql = "INSERT INTO usuarios (nome, email) VALUES (?, ?)";
PreparedStatement insertStmt = conn.prepareStatement(insertSql);
insertStmt.setString(1, "Vinicius");
insertStmt.setString(2, "vinicius@email.com");
insertStmt.executeUpdate();
// Select
String selectSql = "SELECT * FROM usuarios";
PreparedStatement selectStmt = conn.prepareStatement(selectSql);
ResultSet rs = selectStmt.executeQuery();
while (rs.next()) {
System.out.println(rs.getString("nome") + " - " + rs.getString("email"));
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
7. C# (.NET / MySqlConnector)
Instalação (NuGet):
dotnet add package MySqlConnectorC#
using MySqlConnector;
using var connection = new MySqlConnection("Server=localhost;Database=sistema;User--ID=root;Password=sua_senha;");
await connection.OpenAsync();
// Insert
using var insertCmd = new MySqlCommand("INSERT INTO usuarios (nome, email) VALUES (@nome, @email);", connection);
insertCmd.Parameters.AddWithValue("@nome", "Vinicius");
insertCmd.Parameters.AddWithValue("@email", "vinicius@email.com");
await insertCmd.ExecuteNonQueryAsync();
// Select
using var selectCmd = new MySqlCommand("SELECT * FROM usuarios;", connection);
using var reader = await selectCmd.ExecuteReaderAsync();
while (await reader.ReadAsync())
{
Console.WriteLine($"{reader["nome"]} - {reader["email"]}");
}
8. Go (Golang - go-sql-driver/mysql)
Instalação:
go get -u [github.com/go-sql-driver/mysql](https://github.com/go-sql-driver/mysql)Go
package main
import (
"database/sql"
"fmt"
_ "github.com/go-sql-driver/mysql"
)
func main() {
db, err := sql.Open("mysql", "root:sua_senha@tcp(127.0.0.1:3306)/sistema")
if err != nil {
panic(err)
}
defer db.Close()
// Insert
_, err = db.Exec("INSERT INTO usuarios (nome, email) VALUES (?, ?)", "Vinicius", "vinicius@email.com")
if err != nil {
panic(err)
}
// Select
rows, err := db.Query("SELECT id, nome, email FROM usuarios")
if err != nil {
panic(err)
}
defer rows.Close()
for rows.Next() {
var id int
var nome, email string
rows.Scan(&id, &nome, &email)
fmt.Printf("%d: %s - %s\n", id, nome, email)
}
}

