C# And MySQL Search Data Between 2 Dates

How To Search Data In MySQL Database Between Two Dates Using C#

C# And MySQL Search Records Between Two Date

In This C# Tutorial  We Will See How To Get Records Between Two Date From MySQL Database Table Using Two DateTimePicker And Display The Selected Records Into A DataGridView Rows Using Csharp Programming Language And Visual Studio Editor.


Project Source Code:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using MySql.Data.MySqlClient;

namespace Csharp_Tutorials
{
    public partial class Search_Data_In_MySQL_Between_2_Date : Form
    {
        public Search_Data_In_MySQL_Between_2_Date()
        {
            InitializeComponent();
        }

        // mysql connection
        MySqlConnection connection = new MySqlConnection("datasource=localhost;port=3306;Initial Catalog='mydb';username=root;password=");
        
        private void Search_Data_In_MySQL_Between_2_Date_Load(object sender, EventArgs e)
        {
            // populate datagridview from database using mysql data adapter
            MySqlDataAdapter adapter = new MySqlDataAdapter("SELECT * FROM student", connection);
            DataTable table = new DataTable();

            adapter.Fill(table);

            dataGridView1.DataSource = table;
        }

        // button search
        private void BTN_Search_Click(object sender, EventArgs e)
        {

            // create a command with 2 parameters [ d1, d2 ]
            // mean the first date and second one 
            MySqlCommand command = new MySqlCommand("SELECT `id`, `first_name`, `last_name`, `birthdate`, `address` FROM `student` WHERE `birthdate` BETWEEN @d1 AND @d2", connection);

            // add values to the parameters form dateTimePickers
            command.Parameters.Add("@d1", MySqlDbType.Date).Value = dateTimePicker1.Value;
            command.Parameters.Add("@d2", MySqlDbType.Date).Value = dateTimePicker2.Value;

            MySqlDataAdapter adapter = new MySqlDataAdapter("SELECT * FROM student", connection);
            DataTable table = new DataTable();

            adapter.Fill(table);

            dataGridView1.DataSource = table;

        }
    }
}

      
///////////////OUTPUT:

Search Records Between Two Dates Using Database And C#



Java Populate JTable From LinkedList

How To Fill A JTable With Data From LinkedList Using Java NetBeans

Populate JTable From  LinkedList Using Java


In this Java Tutorial we will see How To Populate A JTable With A Linked List Of Object By Creating A User Class Using For Loop And DefaultTableModel In Java NetBeans .



Project Source Code:


// create a class to use with the linkedList
    class User{
        
        private String firstName;
        private String lastName;
        private int age;
        
        public User(String fn, String ln, int ag){
            this.firstName = fn;
            this.lastName = ln;
            this.age = ag;
        }
        
    }
    
    
    
    public void populateTableWithLinkedList(){
        
        // create a user linkedList
        LinkedList<User> list = new LinkedList<>();
        
        // create users
        User u1 = new User("AA","BB",10);
        User u2 = new User("BB","CC",20);
        User u3 = new User("CC","DD",30);
        User u4 = new User("DD","EE",40);
        User u5 = new User("EE","FF",50);
        User u6 = new User("LL","MM",80);
        User u7 = new User("NN","TT",100);
        
        // add the users to the list
        list.add(u1);
        list.add(u2);
        list.add(u3);
        list.add(u4);
        list.add(u5);
        list.add(u6);
        list.add(u7);
        
        // get jtable default model
        DefaultTableModel model = (DefaultTableModel) jTable1.getModel();
        
        // populate the jtable with the list
        Object[] row;
        for(int i = 0; i < list.size(); i++){
            row = new Object[3];
            row[0] = list.get(i).firstName;
            row[1] = list.get(i).lastName;
            row[2] = list.get(i).age;
            
            model.addRow(row);
        }
    }

OutPut:

Fill JTable From LinkedList In Java



Java - Create Glass Bridge Game In Java

How To Make The Glass Bridge Game From Squid Game In Java NetBeans

Java - Create Glass Bridge Game In Java


In this Java Tutorial we will see How to Make The Glass Stepping Stones Game or the glass bridge game From Squid Game Using JPanels and Jlabels In Java NetBeans .

The Game Rules:
the player have to hop across a bridge of glasses with some glasses that breack easily.






Project Source Code:

   
    // create a black border (it's actually yellow)
    Border black_border = BorderFactory.createMatteBorder(1, 1, 1, 1, Color.yellow);
    
    // get the images paths
    String footsteps = "\\/images/foot-steps.png";
    String nosteps = "\\/images/no-steps.png";
    String cracks = "\\/images/cracks.png";
    
    // jpanel component
    Component[] comp1;
    Component[] comp2;
    
    Random random = new Random();
    String randomImage;
    
    JLabel[][] labels;
    String[][] imagesOrder = new String[6][2];
    ArrayList<String> list = new ArrayList<>();
    
    int counter = 0;
    boolean won = true;


    
        // center this form
        this.setLocationRelativeTo(null);
        
        // set borders
        jPanel_Start.setBorder(black_border);
        jPanel_Finish.setBorder(black_border);
        jLabel_PlayerStart.setBorder(black_border);
        jLabel_PlayerFinish.setBorder(black_border);
        
        // set image
        displayImage(footsteps, jLabel_PlayerStart);
        
        // add jlabels to the labels table
        labels = new JLabel[][]{{jLabel_1_1,jLabel_1_2},{jLabel_2_1,jLabel_2_2},
                                {jLabel_3_1,jLabel_3_2},{jLabel_4_1,jLabel_4_2},
                                {jLabel_5_1,jLabel_5_2},{jLabel_6_1,jLabel_6_2}};
        
        // disable all labels
        for(JLabel[] lbls : labels )
        {
            lbls[0].setEnabled(false);
            lbls[1].setEnabled(false);
        }
        
        // add images to the list
        list.add(footsteps);
        list.add(cracks);
        
        // get component from jpanels
        comp1 = jPanel2.getComponents();
        comp2 = jPanel3.getComponents();
        
        // populate table with images in random order
        randomImages();
        
        // add action to jlabels
        addAction();


    // functions we are gonna use
    
    // create a function to enable jlabels
    public void enableLabels(int index)
    {
        if(index <= labels.length-1 )
        {
            JLabel[] lbls = labels[index];
            lbls[0].setEnabled(true);
            lbls[1].setEnabled(true);
        }
    }
    
    // create a function to get random images
    public void randomImages()
    {
        for(int i = 0; i < labels.length; i++)
        {
            // get random images
            randomImage = list.get(random.nextInt(list.size()));
            imagesOrder[i][0] = randomImage;
            
            // get a different image
            if(randomImage.equals(footsteps))
            {
              imagesOrder[i][1] = cracks;
            }
            else
            {
                imagesOrder[i][1] = footsteps;
            }
            
            System.out.println(imagesOrder[i][1]);
            System.out.println(imagesOrder[i][0]);
            System.out.println("--------------");
        }
    }


    // a function to add action to jlabels when we click
    public void addAction()
    {
        enableLabels(counter);
        // jpanel2
        for(Component comp : comp1)
        {
            if(comp instanceof JLabel)
            {
                JLabel label = (JLabel) comp;
                label.addMouseListener(new java.awt.event.MouseAdapter() {
                    @Override
                    public void mouseClicked(java.awt.event.MouseEvent evt)
                    {
                        if(label.isEnabled())
                        {
                           displayImage(imagesOrder[counter][1], label);
                           if(imagesOrder[counter][1].equals(cracks))
                           {
                               won = false;
                           }
                           // disable jlabel 
                           label.setEnabled(false);
                           JLabel label = (JLabel) comp2[counter];
                           label.setEnabled(false);
                           if(counter == imagesOrder.length-1 && won == true)
                           {
                               displayImage(footsteps, jLabel_PlayerFinish);
                               jLabel_message.setText("You've Won :)");
                           }
                           else if(won == false)
                           {
                               jLabel_message.setText("You've Lost :(");
                           }
                           counter++; 
                           enableLabels(counter);
                        }
                        
                    }
                    
                });
                
            }
        }
        
        // jpanel3
        for(Component comp : comp2)
        {
            if(comp instanceof JLabel)
            {
                JLabel label = (JLabel) comp;
                label.addMouseListener(new java.awt.event.MouseAdapter() {
                    @Override
                    public void mouseClicked(java.awt.event.MouseEvent evt)
                    {
                        if(label.isEnabled())
                        {
                           displayImage(imagesOrder[counter][0], label);
                           if(imagesOrder[counter][0].equals(cracks))
                           {
                               won = false;
                           }
                           // disable jlabel 
                           label.setEnabled(false);
                           JLabel label = (JLabel) comp1[counter];
                           label.setEnabled(false);
                           
                           if(counter == imagesOrder.length-1 && won == true)
                           {
                               displayImage(footsteps, jLabel_PlayerFinish);
                                jLabel_message.setText("You've Won :)");
                           }
                           else if(won == false)
                           {
                               jLabel_message.setText("You've Lost :(");
                           }
                           counter++;
                           enableLabels(counter);
                        }
                        
                    }
                });
                
            }
        }
        
    }
    
    // a function to dispaly image in jlabel
    public void displayImage(String imgPath, JLabel label)
    {
        // get the image
        ImageIcon imgIco = new ImageIcon(getClass().getResource(imgPath));
        
        // make the image fit the given jlabel
        Image image = imgIco.getImage().getScaledInstance(label.getWidth(), label.getHeight(), Image.SCALE_SMOOTH);
        
       // set the image into the jlabel
       label.setIcon(new ImageIcon(image));
    }


   // button play again
    private void jButton_PlayAgain_ActionPerformed(java.awt.event.ActionEvent evt) {                                                   
        // reset everything
        // populate table with images in random order
        randomImages();
        // remove images from the jlabels
        for(JLabel[] lbls : labels)
        {
            lbls[0].setIcon(null);
            lbls[1].setIcon(null);
        }
        jLabel_PlayerFinish.setIcon(null);
        counter = 0;
        won = true;
        jLabel_message.setText("");
        enableLabels(counter);
    } 

    


////// OUTPUT : 

Glass Bridge Game

Glass Stepping Stones In Java

Glass Bridge Game In Java




download the source code



More Java Projects:





Java Update MySQL Data Using JTable

How To Update All MySQL DataBase Values Using JTable In Java NetBeans

update mysql data using jtable in java



In this Java Tutorial we will see How To UPDATE DataBase Data With JTable Rows Values Using For Loop And addBatch Function On Button Click In Java NetBeans .




Project Source Code:


// function to get the connection
    public Connection getConnection()
    {
         try {
            Class.forName("com.mysql.jdbc.Driver");
        } catch (ClassNotFoundException ex) {
             System.out.println(ex.getMessage());
        }
        
        Connection con = null;
        
        try {
            con = DriverManager.getConnection("jdbc:mysql://localhost/s_t_d", "root", "");
        } catch (SQLException ex) {
            System.out.println(ex.getMessage());
        }
        return con;
    }

// function to display data from mysql to Jtable 
    public void fillTable(){
        Connection con = getConnection();
        Statement ps;
        ResultSet rs;
        DefaultTableModel model = (DefaultTableModel) jTable1.getModel();
        try {
            ps = con.createStatement();
            rs = ps.executeQuery("SELECT * FROM `student`");

            while(rs.next()){// Id`, `FullName`, `Address`, `BirthDate
                Object[] row = new Object[jTable1.getColumnCount()];
                row[0] = rs.getInt("Id");
                row[1] = rs.getString("FullName");
                row[2] = rs.getString("Address");
                row[3] = rs.getString("BirthDate");
                model.addRow(row);
            }
        } catch (SQLException ex) {
            System.out.println(ex.getMessage());
        }
    }


// button update
private void jButtonUPdateAllActionPerformed(java.awt.event.ActionEvent evt) {                                                 
        Connection con = getConnection();
        Statement st;
        DefaultTableModel model = (DefaultTableModel) jTable1.getModel();
        
        try {
            st = con.createStatement();
            for(int i = 0; i < model.getRowCount(); i++){
                
                int id = Integer.valueOf(model.getValueAt(i, 0).toString());
                String fn = model.getValueAt(i,1).toString();
                String adr = model.getValueAt(i,2).toString();
                String bdate = model.getValueAt(i,3).toString();
                
                String updateQuery = "UPDATE `student` SET `FullName`='"+fn+"',`Address`='"+adr+"',`BirthDate`='"+bdate+"' WHERE `Id` = " +id;
              
                st.addBatch(updateQuery);
            }
            
            int[] updatedRow = st.executeBatch();
            System.out.println(updatedRow.length);
            
        } catch (SQLException ex) {
            Logger.getLogger(Update_All_MySQL_Data_Using_JTable.class.getName()).log(Level.SEVERE, null, ex);
        }
        
    }

OutPut:

Editing mysql data using jtable using java