You can download this code by clicking the button below.
This code is now available for download.
The code defines a function create_random_user that first randomly selects a column name, then generates random user data, and inserts these data into the database.
Technology Stack : psycopg2
Code Type : Database operation
Code Difficulty : Intermediate
import psycopg2
import random
def fetch_random_column_name(cursor):
cursor.execute("SELECT column_name FROM information_schema.columns WHERE table_name='users'")
columns = cursor.fetchall()
return random.choice(columns[0])[0] if columns else None
def generate_random_user_data(column_name):
if column_name is None:
return None
data = {
'id': random.randint(1, 100),
'name': f'User{random.randint(1, 1000)}',
'email': f'user{random.randint(1, 1000)}@example.com',
column_name: f'Value{random.randint(1, 100)}'
}
return data
def insert_random_user_data(conn, data):
cursor = conn.cursor()
columns = ', '.join(data.keys())
placeholders = ', '.join(['%s'] * len(data))
query = f"INSERT INTO users ({columns}) VALUES ({placeholders})"
cursor.execute(query, list(data.values()))
conn.commit()
cursor.close()
def create_random_user(conn):
column_name = fetch_random_column_name(cursor=conn.cursor())
data = generate_random_user_data(column_name=column_name)
if data:
insert_random_user_data(conn=conn, data=data)