Lista de Exercícios Resolvidos: Java | Python | VisuAlg | Portugol | C | C# | VB.NET | C++
Você está aqui: MySQL ::: Dicas & Truques ::: Atributos (Attributes)

Usando o atributo NULL na definição dos campos de suas tabelas MySQL

Quantidade de visualizações: 10740 vezes
O atributo NULL do MySQL é usado quando queremos criar campos que podem não conter nenhum valor em um determinado momento, ou seja, podem ser deixados em branco. Note que NULL significa ausência de valor. Desta forma, é importante ter em mente que o valor 0 (zero) e uma string vazia são diferentes de NULL.

Veja um comando DDL CREATE TABLE usado para criar uma tabela chamada usuarios:

CREATE TABLE  usuarios(
  id INT NOT NULL AUTO_INCREMENT,
  usuario VARCHAR(30) NOT NULL,
  senha VARCHAR(10) DEFAULT NULL,
......


Veja que aqui o campo id é do tipo INT, não aceita NULL e é auto-incremento. O campo usuario também não aceita NULL, enquanto os campos senha e email o permitem. Observe agora a seguinte instrução SQL INSERT INTO:

INSERT INTO usuarios VALUES(NULL, 'osmar', NULL, NULL);
......


Esta instrução é executada sem qualquer problema. Embora o campo id seja NOT NULL, ele é auto-incremento. Desta forma, ao fornecermos o valor NULL, o MySQL se encarrega de inserir o próximo valor de auto-incremento. Note como fornecemos NULL para os valores dos campos senha e email para indicar que o preenchimento de tais campos é opcional ou deverá ser realizado em etapas posteriores.

Link para compartilhar na Internet ou com seus amigos:

VB.NET ::: Desafios e Lista de Exercícios Resolvidos ::: Strings e Caracteres

Exercícios Resolvidos de VB.NET - Como retornar o código ASCII associado a um caractere em VB.NET - Ler um caractere e retornar o código ASCII correspondente

Quantidade de visualizações: 248 vezes
Pergunta/Tarefa:

Escreva um programa VB.NET que pede para o usuário informar um caractere (letra ou número) e mostre o código ASCII correspondente.

Sua saída deverá ser parecida com:

Informe um caractere: A
Você informou o caractere: A
O código ASCII correspondente é: 65
Resposta/Solução:

Veja a resolução comentada deste exercício em VB.NET:

Imports System

Module Program
  ' função principal do programa VB.NET
  Sub Main(args As String())
    ' vamos pedir para o usuário informar uma letra, símbolo ou pontuação
    Console.Write("Informe um caractere: ")

    ' vamos ler o caractere informado
    Dim caractere As Char = Console.ReadLine()(0)

    ' agora vamos obter o código ASCII correspondente
    Dim codigo As Integer = Asc(caractere)
......


O Código Padrão Americano para o Intercâmbio de Informação (do inglês American Standard Code for Information Interchange - ASCII, pronunciado [áski]) é um sistema de representação de letras, algarismos e sinais de pontuação e de controle, através de um sinal codificado em forma de código binário (cadeias de bits formada por vários 0 e 1), desenvolvido a partir de 1960, que representa um conjunto de 128 sinais: 95 sinais gráficos (letras do alfabeto latino, algarismos arábicos, sinais de pontuação e sinais matemáticos) e 33 sinais de controle, utilizando 7 bits para representar todos os seus símbolos.


Java ::: Dicas & Truques ::: Imagens e Processamento de Imagens

Manipulação de imagens em Java - Como converter uma imagem JPG colorida para uma imagem na escala cinza (gray scale)

Quantidade de visualizações: 11670 vezes
Uma das formas mais comuns de se converter uma imagem colorida para uma imagem na escala cinza (grayscale) é desenhar a imagem colorida em um BufferedImage do tipo TYPE_BYTE_GRAY. Veja o resultado na imagem abaixo:



E agora o código completo para o exemplo:

package arquivodecodigos;

import java.awt.*;
import java.io.*;
import java.awt.image.*;
import java.awt.event.*;
import javax.swing.*;
import javax.imageio.*;
 
public class Estudos extends JFrame{
  private BufferedImage imagem;
  private BufferedImage imagemCinza;
  AreaImagem areaImagem;  
 
  public Estudos(){
    super("Estudos Java");
     
    Container c = getContentPane();
    c.setLayout(new BorderLayout());
     
    JButton btn = new JButton("Carregar Imagem");
    btn.addActionListener(
      new ActionListener(){
        public void actionPerformed(ActionEvent e){
          JFileChooser fc = new JFileChooser();
 
          int res = fc.showOpenDialog(null);
          if(res == JFileChooser.APPROVE_OPTION){
        File arquivo = fc.getSelectedFile();  
           
            imagem = null;
           
            try{
              imagem = ImageIO.read(arquivo);
            }
            catch(IOException exc){
              JOptionPane.showMessageDialog(null, 
                "Erro ao carregar a imagem: " + 
                exc.getMessage());
            }
 
            if(imagem != null){
              areaImagem.imagem = imagem;
              areaImagem.repaint();  
            }
          }
        }
      }
    );
 
    JButton btn2 = 
......



Java ::: Fundamentos da Linguagem ::: Variáveis e Constantes

Curso Completo de Java - Como usar constantes em Java

Quantidade de visualizações: 15298 vezes
O valor de uma variável pode ser alterado durante a execução do programa. Mas, o valor de uma constante não é alterado jamais. Escritas sempre com letras maiúsculas, as constantes trazem algumas vantagens, entre elas o fato de que nomes descritivos para constantes podem tornar o programa mais fácil de ser lido. Além disso, o valor representado pela constante pode ser alterado em apenas um lugar do código fonte.

Veja abaixo como declarar e usar uma constante em Java:

// Este exemplo mostra como declarar e usar
// uma constante em Java

public class Estudos{
  final static int IDENT_PROGRAMA = 47; 
  
  public static void main(String args[]){
......


Observe que usamos o modificador final para marcar um identificador como constante. Veja agora o que acontece quando tentamos alterar o valor de uma constante em tempo de compilação:

// vamos tentar alterar o valor da constante
......


O compilador emitirá a seguinte mensagem de erro:

Estudos.java:9: cannot assign a value to final 
variable IDENT_PROGRAMA
  IDENT_PROGRAMA = 29;
  ^
1 error



C# ::: C# + MySQL ::: MySqlCommand

Como inserir dados em uma tabela MySQL usando INSERT INTO e consultas parametrizadas no C#

Quantidade de visualizações: 764 vezes
As consultas parametrizadas podem ser definidas para o método ExecuteNonQuery() da classe MySqlCommand por meio dos métodos Add() e AddWithValue() do objeto Parameters. Neste exemplo eu mostrarei como usar AddWithValue(), já que ele nos permite informar tanto o parâmetro quanto o seu valor.

Observe que a tabela usada nesta dica possui os campos id, titulo, autor, paginas e data_cadastro. O campo id é auto-incremento (recebendo o valor NULL) e o campo data_cadastro é do tipo DATETIME (e recebe o valor NOW()).

Veja o código completo para o exemplo (incluindo a conexão C# + MySQL usando a classe MySqlConnection):

using System;
using System.Data;
using System.Windows.Forms;
using MySql.Data.MySqlClient;

namespace EstudosMySQL {
  public partial class Form1 : Form {
    public Form1() {
      InitializeComponent();
    }

    private void button1_Click(object sender, EventArgs e) {
      // objeto de conexão
      MySqlConnection conn = null;

      // string de conexão
      string connStr = "server=localhost;user id=root; " +
        "password=osmar1234; database=estudos; pooling=false";

      try {
        conn = new MySqlConnection(connStr);
        conn.Open();

        if (conn.State == ConnectionState.Open) {
          // primeiro criamos um novo objeto MySqlCommand
          MySqlCommand comando = new MySqlCommand();
          // definimos a conexão para este comando
          comando.Connection = conn;

          // definimos o comando SQL a ser executado usando parâmetros
          comando.CommandText = "INSERT INTO livros (id, titulo, autor, paginas, data_cadastro) " +
......



Java ::: Desafios e Lista de Exercícios Resolvidos ::: Laços

Exercícios Resolvidos de Java - Usando laços for aninhados para desenhar uma pirâmide de números em Java (com o usuário informando a quantidade de linhas)

Quantidade de visualizações: 8280 vezes
Pergunta/Tarefa:

Escreva um programa Java que solicita ao usuário um número inteiro. Este número inteiro deverá estar entre 1 e 12 e será usado como a quantidade de linhas em uma pirâmide de números. Você deverá usar laços for aninhados para controlar as linhas e montar a estrutura desejada.

Sua saída deverá ser parecida com:

Informe a quantidade de linhas: 5

              1
           2  1  2
        3  2  1  2  3
     4  3  2  1  2  3  4
  5  4  3  2  1  2  3  4  5
Resposta/Solução:

Veja a resolução comentada deste exercício usando Java console:

package estudos;

import java.util.Scanner;

public class Estudos {
  public static void main(String[] args) {
    // vamos fazer a leitura usando a classe Scanner
    Scanner entrada = new Scanner(System.in);
      
    // vamos solicitar a quantidade de linhas
    System.out.print("Informe a quantidade de linhas: ");
    int numLinhas = Integer.parseInt(entrada.nextLine());
    
    // não queremos aceitar quantidades de linhas menores que 1 
    // ou maiores que 12
    if((numLinhas < 1) || (numLinhas > 12)){
      System.out.println("O número de linhas deve estar entre 1 e 12");
      System.exit(0);
    }
    
    // este laço externo controla as linhas
    System.out.println();
    for(int linha = 1; linha <= numLinhas; linha++){
      // este laço gera os espaços antes de cada número nas 
      // linhas da pirâmide
      for (int coluna = 1; coluna <= (numLinhas - linha); coluna++){
        System.out.print("   "); // três espaços aqui
      }
      
      // aqui nós exibimos os números de cada linha do lado
      // esquerdo da pirâmide, até o centro
......



Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de Java

Veja mais Dicas e truques de Java

Dicas e truques de outras linguagens

Quem Somos

Osmar J. Silva
Programador Freelancer
WhatsApp +55 (062) 98553-6711

Goiânia-GO
Programador Freelancer - Full Stack Developer, Professional Java Developer, PHP, C/C++, Python Programmer, wxWidgets Professional C++ Programmer, Freelance Programmer. Formado em Ciência da Computação pela UNIP (Universidade Paulista Campus Goiânia) e cursando Engenharia Civil pela PUC-Goiás. Possuo conhecimentos avançados de Java, Python, JavaScript, C, C++, PHP, C#, VB.NET, Delphi, Android, Perl, e várias tecnologias que envolvem o desenvolvimento web, desktop, front-end e back-end. Atuo há mais de 20 anos como programador freelancer, atendendo clientes no Brasil, Portugal, Argentina e vários outros paises.
Entre em contato comigo para, juntos, vermos em que posso contribuir para resolver ou agilizar o desenvolvimento de seus códigos.
José de Angelis
Programador Freelancer
WhatsApp +55 (062) 98243-1195

Goiânia-GO
Programador Freelancer - Formado em Sistemas de Informação pela Faculdade Delta, Pós graduado em Engenharia de Software (PUC MINAS), Pós graduado Marketing Digital (IGTI) com ênfase em Growth Hacking. Mais de 15 anos de experiência em programação Web. Marketing Digital focado em desempenho, desenvolvimento de estratégia competitiva, analise de concorrência, SEO, webvitals, e Adwords, Métricas de retorno. Especialista Google Certificado desde 2011 Possui domínio nas linguagens PHP, C#, JavaScript, MySQL e frameworks Laravel, jQuery, flutter. Atualmente aluno de mestrado em Ciência da Computação (UFG)
Não basta ter um site. É necessário ter um site que é localizado e converte usuários em clientes. Se sua página não faz isso, Fale comigo e vamos fazer uma analise e conseguir resultados mais satisfatórios..

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: Delphi
6º lugar: C
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2024 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 20 usuários muito felizes estudando em nosso site.