input: Write a function to insert a new user into a database.
  assert insert_user(('John', 'Doe', 'john.doe@example.com', 'password123', '2023-10-01')) == "User inserted successfully"
  assert insert_user(('Jane', 'Smith', 'jane.smith@example.com', 'securepassword', '2023-10-02')) == "User inserted successfully"
  assert insert_user(('Alice', 'Johnson', 'alice.j@example.com', 'mypassword', '2023-10-03')) == "User inserted successfully"
output: def insert_user(user_data):
      import sqlite3
      connection = sqlite3.connect('users.db')
      cursor = connection.cursor()
      
      cursor.execute('''
      CREATE TABLE IF NOT EXISTS users (
          id INTEGER PRIMARY KEY AUTOINCREMENT,
          first_name TEXT NOT NULL,
          last_name TEXT NOT NULL,
          email TEXT NOT NULL UNIQUE,
          password TEXT NOT NULL,
          date_joined TEXT NOT NULL
      )
      ''')
      
      cursor.execute('''
      INSERT INTO users (first_name, last_name, email, password, date_joined)
      VALUES (?, ?, ?, ?, ?)
      ''', user_data)
      
      connection.commit()
      connection.close()
      
      return "User inserted successfully"