In real-world applications, data isn't just stored. It must often be controlled.
Whether you're building a free-tier signup system, a logging table with bounded storage, or a resource-limited IoT backend, there are scenarios where a table should never grow beyond a set size. Instead of relying on application code to enforce limits, SQL provides mechanisms such as triggers that let the database itself enforce rules at the moment data is inserted.
For example, a before insert trigger can inspect the current row count and reject new inserts once a threshold (like 5,000 users) is reached, keeping your dataset within defined bounds and preventing unexpected growth or performance issues.
Imagine you're building a beta release of a web app that's limited to 5,000 active users.
You could enforce this limit in your application code, but that approach risks inconsistency if multiple services interact with the database. A database-level restriction such as a trigger that checks the current count before allowing more inserts, ensures the limit is enforced everywhere, regardless of how inserts are made.
This is especially useful for shared databases accessed by multiple APIs, ETL pipelines, or admin scripts, where application logic alone may not be sufficient to protect business rules.

- drop table if exists users;
- create table users (
- user_id int not null auto_increment,
- user_name varchar(30) not null,
- password_hash varchar(100) null, /* allow null for now will be implementing auth soon */
- user_email varchar(250) not null,
- created timestamp not null default now(),
- modified timestamp null,
-
- primary key (user_id)
- );
- create unique index uq_users_user_name on users (user_name);

- DELIMITER $$
- create trigger before_users_insert
- before insert
- on users for each row
- begin
- if (select count(user_id) from users) >= (select 5000) then
- SIGNAL SQLSTATE '45000'
- SET MESSAGE_TEXT = 'Maximum users reached';
- end if;
- end$$
- DELIMITER ;
I create a temporary table holding 1,000 names from Aarev to Zion.
- insert example_names(name)
- values
- ('Aarav'),
- ('Aaron'),
- ('Abdiel'),
- ('Abdullah'),
- ('Abel'),
- ('Abner'),
- ('Abraham'),
- ('Abram'),
- ('Ace'),
- ('Adam'),
- ('Adan'),
- ('Aden'),
- ('Adler'),
- ('Adonis'),
- ('Adrian'),
- ('Adriel'),
- ('Ahmad'),
- ('Ahmed'),
- ('Ahmir'),
- ('Aidan'),
- ('Aiden'),
- ('Alan'),
- ('Albert'),
- ('Alberto'),
- ('Alden'),
- ('Aldo'),
- ('Alec'),
- ('Alejandro'),
- ('Alessandro'),
- ('Alex'),
- ('Alexander'),
- ('Alexis'),
- ('Alfonso'),
- ('Alfred'),
- ('Alfredo'),
- ('Ali'),
- ('Alijah'),
- ('Alistair'),
- ('Allan'),
- ('Allen'),
- ('Alonso'),
- ('Alonzo'),
- ('Alvaro'),
- ('Alvin'),
- ('Amari'),
- ('Ambrose'),
- ('Ameer'),
- ('Amias'),
- ('Amir'),
- ('Amiri'),
- ('Amos'),
- ('Anakin'),
- ('Ander'),
- ('Anders'),
- ('Anderson'),
- ('Andre'),
- ('Andres'),
- ('Andrew'),
- ('Andy'),
- ('Angel'),
- ('Angelo'),
- ('Anthony'),
- ('Antonio'),
- ('Apollo'),
- ('Archer'),
- ('Archie'),
- ('Ares'),
- ('Ari'),
- ('Arian'),
- ('Ariel'),
- ('Aries'),
- ('Arjun'),
- ('Arlo'),
- ('Armando'),
- ('Armani'),
- ('Aron'),
- ('Arthur'),
- ('Arturo'),
- ('Aryan'),
- ('Asa'),
- ('Asaiah'),
- ('Asher'),
- ('Ashton'),
- ('Atharv'),
- ('Atlas'),
- ('Atreus'),
- ('Atticus'),
- ('August'),
- ('Augustine'),
- ('Augustus'),
- ('Aurelio'),
- ('Austin'),
- ('Avery'),
- ('Avi'),
- ('Avyaan'),
- ('Axel'),
- ('Axl'),
- ('Axton'),
- ('Ayaan'),
- ('Ayan'),
- ('Ayden'),
- ('Azael'),
- ('Azariah'),
- ('Aziel'),
- ('Azrael'),
- ('Azriel'),
- ('Baker'),
- ('Banks'),
- ('Barrett'),
- ('Baylor'),
- ('Bear'),
- ('Beau'),
- ('Beckett'),
- ('Beckham'),
- ('Bellamy'),
- ('Ben'),
- ('Benedict'),
- ('Benicio'),
- ('Benjamin'),
- ('Bennett'),
- ('Benson'),
- ('Bentley'),
- ('Bjorn'),
- ('Blake'),
- ('Blaze'),
- ('Bo'),
- ('Boaz'),
- ('Boden'),
- ('Bodhi'),
- ('Bodie'),
- ('Boone'),
- ('Boston'),
- ('Bowen'),
- ('Bradley'),
- ('Brady'),
- ('Brandon'),
- ('Brantley'),
- ('Braxton'),
- ('Brayan'),
- ('Brayden'),
- ('Braylen'),
- ('Braylon'),
- ('Brendan'),
- ('Brian'),
- ('Briar'),
- ('Bridger'),
- ('Briggs'),
- ('Brixton'),
- ('Brock'),
- ('Brodie'),
- ('Brody'),
- ('Brooks'),
- ('Bruce'),
- ('Bruno'),
- ('Bryan'),
- ('Bryce'),
- ('Brycen'),
- ('Bryson'),
- ('Byron'),
- ('Cade'),
- ('Caden'),
- ('Caiden'),
- ('Cain'),
- ('Cairo'),
- ('Cal'),
- ('Caleb'),
- ('Callahan'),
- ('Callan'),
- ('Callen'),
- ('Callum'),
- ('Calum'),
- ('Calvin'),
- ('Camden'),
- ('Cameron'),
- ('Camilo'),
- ('Cannon'),
- ('Carl'),
- ('Carlos'),
- ('Carmelo'),
- ('Carson'),
- ('Carter'),
- ('Case'),
- ('Casen'),
- ('Casey'),
- ('Cash'),
- ('Cason'),
- ('Caspian'),
- ('Cassian'),
- ('Cassius'),
- ('Castiel'),
- ('Cayden'),
- ('Cayson'),
- ('Cesar'),
- ('Chaim'),
- ('Chance'),
- ('Chandler'),
- ('Charles'),
- ('Charlie'),
- ('Chase'),
- ('Chosen'),
- ('Chozen'),
- ('Chris'),
- ('Christian'),
- ('Christopher'),
- ('Cillian'),
- ('Clark'),
- ('Clay'),
- ('Clayton'),
- ('Clyde'),
- ('Cody'),
- ('Cohen'),
- ('Colby'),
- ('Cole'),
- ('Coleson'),
- ('Colin'),
- ('Collin'),
- ('Colson'),
- ('Colt'),
- ('Colten'),
- ('Colter'),
- ('Colton'),
- ('Conner'),
- ('Connor'),
- ('Conor'),
- ('Conrad'),
- ('Cooper'),
- ('Corbin'),
- ('Corey'),
- ('Creed'),
- ('Crew'),
- ('Cristian'),
- ('Crue'),
- ('Cruz'),
- ('Cullen'),
- ('Curtis'),
- ('Cyrus'),
- ('Dakari'),
- ('Dakota'),
- ('Dallas'),
- ('Dalton'),
- ('Damari'),
- ('Damian'),
- ('Damien'),
- ('Damir'),
- ('Damon'),
- ('Dane'),
- ('Daniel'),
- ('Danny'),
- ('Dante'),
- ('Dariel'),
- ('Dario'),
- ('Darius'),
- ('Darren'),
- ('Darwin'),
- ('Dash'),
- ('David'),
- ('Davis'),
- ('Dawson'),
- ('Dax'),
- ('Daxton'),
- ('Deacon'),
- ('Dean'),
- ('Deandre'),
- ('Declan'),
- ('Demetrius'),
- ('Dennis'),
- ('Denver'),
- ('Dereck'),
- ('Derek'),
- ('Derrick'),
- ('Desmond'),
- ('Devin'),
- ('Devon'),
- ('Dexter'),
- ('Diego'),
- ('Dilan'),
- ('Dillon'),
- ('Dominic'),
- ('Dominick'),
- ('Donald'),
- ('Donovan'),
- ('Dorian'),
- ('Douglas'),
- ('Drake'),
- ('Drew'),
- ('Duke'),
- ('Duncan'),
- ('Dustin'),
- ('Dutton'),
- ('Dylan'),
- ('Easton'),
- ('Eddie'),
- ('Eden'),
- ('Edgar'),
- ('Edison'),
- ('Eduardo'),
- ('Edward'),
- ('Edwin'),
- ('Eiden'),
- ('Eithan'),
- ('Eli'),
- ('Eliam'),
- ('Elian'),
- ('Elias'),
- ('Eliel'),
- ('Eliezer'),
- ('Elijah'),
- ('Elio'),
- ('Eliseo'),
- ('Elisha'),
- ('Elliot'),
- ('Elliott'),
- ('Ellis'),
- ('Emanuel'),
- ('Emerson'),
- ('Emery'),
- ('Emiliano'),
- ('Emilio'),
- ('Emir'),
- ('Emmanuel'),
- ('Emmett'),
- ('Emmitt'),
- ('Emory'),
- ('Enoch'),
- ('Enrique'),
- ('Enzo'),
- ('Ephraim'),
- ('Eren'),
- ('Eric'),
- ('Erick'),
- ('Erik'),
- ('Ermias'),
- ('Ernesto'),
- ('Esteban'),
- ('Ethan'),
- ('Eugene'),
- ('Evan'),
- ('Evander'),
- ('Everest'),
- ('Everett'),
- ('Ezekiel'),
- ('Ezequiel'),
- ('Ezra'),
- ('Ezrah'),
- ('Fabian'),
- ('Felipe'),
- ('Felix'),
- ('Fernando'),
- ('Finley'),
- ('Finn'),
- ('Finnegan'),
- ('Finnley'),
- ('Fisher'),
- ('Fletcher'),
- ('Flynn'),
- ('Ford'),
- ('Forest'),
- ('Forrest'),
- ('Foster'),
- ('Francis'),
- ('Francisco'),
- ('Franco'),
- ('Frank'),
- ('Franklin'),
- ('Frederick'),
- ('Gabriel'),
- ('Gael'),
- ('Gage'),
- ('Garrett'),
- ('Gatlin'),
- ('Gavin'),
- ('George'),
- ('Gerardo'),
- ('Gian'),
- ('Gianni'),
- ('Gideon'),
- ('Giovanni'),
- ('Gordon'),
- ('Grady'),
- ('Graham'),
- ('Grant'),
- ('Grayson'),
- ('Gregory'),
- ('Grey'),
- ('Greyson'),
- ('Griffin'),
- ('Guillermo'),
- ('Gunnar'),
- ('Gunner'),
- ('Gustavo'),
- ('Hamza'),
- ('Hank'),
- ('Harlan'),
- ('Harlem'),
- ('Harold'),
- ('Harrison'),
- ('Harry'),
- ('Harvey'),
- ('Hassan'),
- ('Hayden'),
- ('Hayes'),
- ('Hector'),
- ('Hendrix'),
- ('Henrik'),
- ('Henry'),
- ('Hezekiah'),
- ('Holden'),
- ('Hollis'),
- ('Houston'),
- ('Hudson'),
- ('Hugh'),
- ('Hugo'),
- ('Hunter'),
- ('Huxley'),
- ('Ian'),
- ('Ibrahim'),
- ('Idris'),
- ('Ignacio'),
- ('Iker'),
- ('Imran'),
- ('Ira'),
- ('Isaac'),
- ('Isaiah'),
- ('Isaias'),
- ('Ishaan'),
- ('Ismael'),
- ('Israel'),
- ('Issac'),
- ('Ivan'),
- ('Izael'),
- ('Izaiah'),
- ('Izan'),
- ('Jabari'),
- ('Jace'),
- ('Jack'),
- ('Jackson'),
- ('Jacob'),
- ('Jaden'),
- ('Jadiel'),
- ('Jagger'),
- ('Jahmir'),
- ('Jaiden'),
- ('Jaime'),
- ('Jairo'),
- ('Jakai'),
- ('Jakari'),
- ('Jake'),
- ('Jalen'),
- ('Jamari'),
- ('James'),
- ('Jameson'),
- ('Jamie'),
- ('Jamir'),
- ('Jamison'),
- ('Jared'),
- ('Jase'),
- ('Jasiah'),
- ('Jasiel'),
- ('Jason'),
- ('Jasper'),
- ('Javier'),
- ('Jax'),
- ('Jaxon'),
- ('Jaxson'),
- ('Jaxton'),
- ('Jaxxon'),
- ('Jay'),
- ('Jayce'),
- ('Jayceon'),
- ('Jayden'),
- ('Jaylen'),
- ('Jayson'),
- ('Jaziel'),
- ('Jedidiah'),
- ('Jefferson'),
- ('Jeffrey'),
- ('Jensen'),
- ('Jeremiah'),
- ('Jeremias'),
- ('Jeremy'),
- ('Jericho'),
- ('Jerry'),
- ('Jesiah'),
- ('Jesse'),
- ('Jesus'),
- ('Jett'),
- ('Jimmy'),
- ('Jiraiya'),
- ('Jireh'),
- ('Joaquin'),
- ('Joe'),
- ('Joel'),
- ('Joey'),
- ('Johan'),
- ('John'),
- ('Johnathan'),
- ('Johnny'),
- ('Jon'),
- ('Jonah'),
- ('Jonas'),
- ('Jonathan'),
- ('Jones'),
- ('Jordan'),
- ('Jorge'),
- ('Jose'),
- ('Joseph'),
- ('Joshua'),
- ('Josiah'),
- ('Josue'),
- ('Jovanni'),
- ('Joziah'),
- ('Jrue'),
- ('Juan'),
- ('Judah'),
- ('Jude'),
- ('Judson'),
- ('Julian'),
- ('Julien'),
- ('Julio'),
- ('Julius'),
- ('Junior'),
- ('Justice'),
- ('Justin'),
- ('Kade'),
- ('Kaden'),
- ('Kai'),
- ('Kaiden'),
- ('Kairo'),
- ('Kaisen'),
- ('Kaiser'),
- ('Kaison'),
- ('Kaizen'),
- ('Kaleb'),
- ('Kamari'),
- ('Kamden'),
- ('Kameron'),
- ('Kane'),
- ('Kannon'),
- ('Kareem'),
- ('Karim'),
- ('Karson'),
- ('Karsyn'),
- ('Karter'),
- ('Kartier'),
- ('Kasen'),
- ('Kash'),
- ('Kashton'),
- ('Kason'),
- ('Kayce'),
- ('Kayden'),
- ('Kaysen'),
- ('Kayson'),
- ('Keanu'),
- ('Keaton'),
- ('Keegan'),
- ('Keith'),
- ('Kellan'),
- ('Kellen'),
- ('Kelvin'),
- ('Kenai'),
- ('Kendrick'),
- ('Kenji'),
- ('Kenneth'),
- ('Kenzo'),
- ('Kevin'),
- ('Khai'),
- ('Khalil'),
- ('Khari'),
- ('Khaza'),
- ('Kiaan'),
- ('Kian'),
- ('Kieran'),
- ('Killian'),
- ('King'),
- ('Kingsley'),
- ('Kingston'),
- ('Knox'),
- ('Koa'),
- ('Kobe'),
- ('Kobi'),
- ('Koda'),
- ('Kody'),
- ('Koen'),
- ('Kohen'),
- ('Kole'),
- ('Kolson'),
- ('Kolton'),
- ('Krew'),
- ('Kyaire'),
- ('Kye'),
- ('Kylan'),
- ('Kyle'),
- ('Kylen'),
- ('Kyler'),
- ('Kylian'),
- ('Kylo'),
- ('Kyree'),
- ('Kyren'),
- ('Kyrie'),
- ('Kyro'),
- ('Kyson'),
- ('Lachlan'),
- ('Lance'),
- ('Landen'),
- ('Landon'),
- ('Landyn'),
- ('Lane'),
- ('Langston'),
- ('Lawrence'),
- ('Lawson'),
- ('Layne'),
- ('Layton'),
- ('Leandro'),
- ('Ledger'),
- ('Lee'),
- ('Legacy'),
- ('Legend'),
- ('Leif'),
- ('Leighton'),
- ('Leland'),
- ('Lennon'),
- ('Lennox'),
- ('Leo'),
- ('Leon'),
- ('Leonard'),
- ('Leonardo'),
- ('Leonel'),
- ('Leonidas'),
- ('Leroy'),
- ('Levi'),
- ('Lewis'),
- ('Lian'),
- ('Lincoln'),
- ('Lionel'),
- ('Lochlan'),
- ('Logan'),
- ('Lorenzo'),
- ('Louie'),
- ('Louis'),
- ('Loyal'),
- ('Luca'),
- ('Lucas'),
- ('Lucca'),
- ('Lucian'),
- ('Luciano'),
- ('Lucien'),
- ('Luis'),
- ('Luka'),
- ('Lukas'),
- ('Luke'),
- ('Mac'),
- ('Mack'),
- ('Madden'),
- ('Maddox'),
- ('Mael'),
- ('Magnus'),
- ('Major'),
- ('Makai'),
- ('Malachi'),
- ('Malakai'),
- ('Malcolm'),
- ('Malik'),
- ('Manuel'),
- ('Marcel'),
- ('Marcellus'),
- ('Marcelo'),
- ('Marco'),
- ('Marcos'),
- ('Marcus'),
- ('Mario'),
- ('Mark'),
- ('Marlon'),
- ('Marshall'),
- ('Martin'),
- ('Marvin'),
- ('Mason'),
- ('Massimo'),
- ('Mateo'),
- ('Matheo'),
- ('Mathew'),
- ('Mathias'),
- ('Matias'),
- ('Matteo'),
- ('Matthew'),
- ('Matthias'),
- ('Maurice'),
- ('Mauricio'),
- ('Maverick'),
- ('Max'),
- ('Maximilian'),
- ('Maximiliano'),
- ('Maximo'),
- ('Maximus'),
- ('Maxwell'),
- ('Mccoy'),
- ('Meir'),
- ('Mekhi'),
- ('Melvin'),
- ('Memphis'),
- ('Messiah'),
- ('Micah'),
- ('Michael'),
- ('Miguel'),
- ('Mikael'),
- ('Milan'),
- ('Miles'),
- ('Miller'),
- ('Milo'),
- ('Misael'),
- ('Mitchell'),
- ('Mohamed'),
- ('Mohammad'),
- ('Mohammed'),
- ('Moises'),
- ('Mordechai'),
- ('Morgan'),
- ('Moses'),
- ('Moshe'),
- ('Muhammad'),
- ('Murphy'),
- ('Musa'),
- ('Mustafa'),
- ('Myles'),
- ('Mylo'),
- ('Nash'),
- ('Nasir'),
- ('Nathan'),
- ('Nathanael'),
- ('Nathaniel'),
- ('Nehemiah'),
- ('Neil'),
- ('Nelson'),
- ('Neo'),
- ('Nicholas'),
- ('Nico'),
- ('Nicolas'),
- ('Niko'),
- ('Nikolai'),
- ('Nikolas'),
- ('Nixon'),
- ('Noe'),
- ('Noel'),
- ('Nolan'),
- ('Nova'),
- ('Oakley'),
- ('Ocean'),
- ('Odin'),
- ('Oliver'),
- ('Omar'),
- ('Omari'),
- ('Onyx'),
- ('Orion'),
- ('Orlando'),
- ('Oscar'),
- ('Osiris'),
- ('Osman'),
- ('Otis'),
- ('Otto'),
- ('Owen'),
- ('Ozzy'),
- ('Pablo'),
- ('Palmer'),
- ('Parker'),
- ('Patrick'),
- ('Paul'),
- ('Paxton'),
- ('Pedro'),
- ('Peter'),
- ('Peyton'),
- ('Philip'),
- ('Phillip'),
- ('Phoenix'),
- ('Pierce'),
- ('Porter'),
- ('Preston'),
- ('Prince'),
- ('Princeton'),
- ('Quentin'),
- ('Quincy'),
- ('Quinn'),
- ('Quinton'),
- ('Racer'),
- ('Rafael'),
- ('Raiden'),
- ('Ramon'),
- ('Randy'),
- ('Raphael'),
- ('Raul'),
- ('Ray'),
- ('Rayan'),
- ('Rayden'),
- ('Raylan'),
- ('Raymond'),
- ('Reece'),
- ('Reed'),
- ('Reese'),
- ('Reid'),
- ('Reign'),
- ('Remi'),
- ('Remington'),
- ('Remy'),
- ('Reuben'),
- ('Rex'),
- ('Rey'),
- ('Rhett'),
- ('Rhodes'),
- ('Rhys'),
- ('Ricardo'),
- ('Richard'),
- ('Ricky'),
- ('Ridge'),
- ('Riggs'),
- ('Riley'),
- ('Rio'),
- ('Rishi'),
- ('River'),
- ('Robert'),
- ('Roberto'),
- ('Robin'),
- ('Rocco'),
- ('Rocky'),
- ('Rodrigo'),
- ('Roger'),
- ('Rohan'),
- ('Roland'),
- ('Roman'),
- ('Rome'),
- ('Romeo'),
- ('Ronald'),
- ('Ronan'),
- ('Ronin'),
- ('Rory'),
- ('Rowan'),
- ('Rowen'),
- ('Roy'),
- ('Royal'),
- ('Royce'),
- ('Ruben'),
- ('Rudy'),
- ('Russell'),
- ('Ryan'),
- ('Ryatt'),
- ('Ryder'),
- ('Ryker'),
- ('Rylan'),
- ('Ryland'),
- ('Sage'),
- ('Saint'),
- ('Salem'),
- ('Salvador'),
- ('Salvatore'),
- ('Sam'),
- ('Samir'),
- ('Samson'),
- ('Samuel'),
- ('Santana'),
- ('Santiago'),
- ('Santino'),
- ('Santos'),
- ('Saul'),
- ('Sawyer'),
- ('Scott'),
- ('Sean'),
- ('Sebastian'),
- ('Semaj'),
- ('Sergio'),
- ('Seth'),
- ('Seven'),
- ('Sevyn'),
- ('Shane'),
- ('Shawn'),
- ('Shepard'),
- ('Shepherd'),
- ('Shiloh'),
- ('Shmuel'),
- ('Silas'),
- ('Simon'),
- ('Sincere'),
- ('Skyler'),
- ('Solomon'),
- ('Sonny'),
- ('Soren'),
- ('Spencer'),
- ('Stanley'),
- ('Stefan'),
- ('Stephen'),
- ('Sterling'),
- ('Stetson'),
- ('Steven'),
- ('Stone'),
- ('Sullivan'),
- ('Sutton'),
- ('Sylas'),
- ('Tadeo'),
- ('Talon'),
- ('Tanner'),
- ('Tate'),
- ('Tatum'),
- ('Taylor'),
- ('Teo'),
- ('Thaddeus'),
- ('Thatcher'),
- ('Theo'),
- ('Theodore'),
- ('Thiago'),
- ('Thomas'),
- ('Timothy'),
- ('Titan'),
- ('Titus'),
- ('Tobias'),
- ('Tomas'),
- ('Tommy'),
- ('Tony'),
- ('Trace'),
- ('Travis'),
- ('Trenton'),
- ('Trevor'),
- ('Trey'),
- ('Tripp'),
- ('Tristan'),
- ('Troy'),
- ('Tru'),
- ('True'),
- ('Truett'),
- ('Tucker'),
- ('Ty'),
- ('Tyler'),
- ('Tyson'),
- ('Ulises'),
- ('Uriah'),
- ('Uriel'),
- ('Valentin'),
- ('Valentino'),
- ('Van'),
- ('Vance'),
- ('Veer'),
- ('Vicente'),
- ('Victor'),
- ('Vihaan'),
- ('Vincent'),
- ('Vincenzo'),
- ('Wade'),
- ('Walker'),
- ('Walter'),
- ('Warren'),
- ('Watson'),
- ('Waylen'),
- ('Waylon'),
- ('Wayne'),
- ('Wells'),
- ('Wes'),
- ('Wesley'),
- ('Wesson'),
- ('Westin'),
- ('Westley'),
- ('Weston'),
- ('Westyn'),
- ('Wilder'),
- ('William'),
- ('Wilson'),
- ('Winston'),
- ('Wren'),
- ('Wyatt'),
- ('Wylder'),
- ('Xander'),
- ('Xavier'),
- ('Yaakov'),
- ('Yadiel'),
- ('Yael'),
- ('Yahir'),
- ('Yahya'),
- ('Yehuda'),
- ('Yisroel'),
- ('Yosef'),
- ('Yousef'),
- ('Yusuf'),
- ('Zachariah'),
- ('Zachary'),
- ('Zahir'),
- ('Zaid'),
- ('Zaiden'),
- ('Zain'),
- ('Zaire'),
- ('Zakai'),
- ('Zamir'),
- ('Zander'),
- ('Zane'),
- ('Zavier'),
- ('Zayd'),
- ('Zayden'),
- ('Zayn'),
- ('Zayne'),
- ('Zechariah'),
- ('Zeke'),
- ('Zen'),
- ('Zev'),
- ('Zion'),
- ('Zyair'),
- ('Zyaire'),
- ('Zyon');
Don't forget the ladies!
- drop temporary table if exists girls_names;
- create temporary table girls_names
- (
- name_id int not null auto_increment primary key,
- name varchar(50) not null unique
- );
- insert girls_names(name)
- values
- ('Aadhya'),
- ('Aaliyah'),
- ('Abby'),
- ('Abigail'),
- ('Ada'),
- ('Adalee'),
- ('Adaline'),
- ('Adalyn'),
- ('Adalynn'),
- ('Addilyn'),
- ('Addison'),
- ('Adelaide'),
- ('Adele'),
- ('Adelina'),
- ('Adeline'),
- ('Adelyn'),
- ('Adelynn'),
- ('Adhara'),
- ('Adley'),
- ('Adriana'),
- ('Adrianna'),
- ('Aila'),
- ('Ailani'),
- ('Ailany'),
- ('Aileen'),
- ('Ainara'),
- ('Ainhoa'),
- ('Ainsley'),
- ('Aisha'),
- ('Aitana'),
- ('Akira'),
- ('Alaia'),
- ('Alaina'),
- ('Alaiya'),
- ('Alana'),
- ('Alani'),
- ('Alanna'),
- ('Alaya'),
- ('Alayah'),
- ('Alayna'),
- ('Aleah'),
- ('Aleena'),
- ('Aleia'),
- ('Alejandra'),
- ('Alena'),
- ('Alessandra'),
- ('Alessia'),
- ('Alexa'),
- ('Alexandra'),
- ('Alexandria'),
- ('Alexia'),
- ('Alexis'),
- ('Alia'),
- ('Aliana'),
- ('Alianna'),
- ('Alice'),
- ('Alicia'),
- ('Alina'),
- ('Alison'),
- ('Alisson'),
- ('Alivia'),
- ('Aliya'),
- ('Aliyah'),
- ('Aliza'),
- ('Allie'),
- ('Allison'),
- ('Allyson'),
- ('Alma'),
- ('Alondra'),
- ('Alora'),
- ('Alyssa'),
- ('Amaia'),
- ('Amalia'),
- ('Amanda'),
- ('Amani'),
- ('Amara'),
- ('Amari'),
- ('Amaris'),
- ('Amaya'),
- ('Amayah'),
- ('Amber'),
- ('Amelia'),
- ('Amelie'),
- ('Amina'),
- ('Amira'),
- ('Amirah'),
- ('Amiri'),
- ('Amiyah'),
- ('Amora'),
- ('Amoura'),
- ('Amy'),
- ('Amyra'),
- ('Ana'),
- ('Anahi'),
- ('Anaiah'),
- ('Anais'),
- ('Analeia'),
- ('Analia'),
- ('Anastasia'),
- ('Anaya'),
- ('Andi'),
- ('Andie'),
- ('Andrea'),
- ('Angel'),
- ('Angela'),
- ('Angelica'),
- ('Angelina'),
- ('Angie'),
- ('Anika'),
- ('Aniyah'),
- ('Anna'),
- ('Annabelle'),
- ('Annalise'),
- ('Anne'),
- ('Annie'),
- ('Annika'),
- ('Antonella'),
- ('Anya'),
- ('April'),
- ('Arabella'),
- ('Araceli'),
- ('Arely'),
- ('Ari'),
- ('Aria'),
- ('Ariah'),
- ('Ariana'),
- ('Arianna'),
- ('Ariel'),
- ('Ariella'),
- ('Arielle'),
- ('Arisbeth'),
- ('Ariya'),
- ('Ariyah'),
- ('Arlet'),
- ('Arleth'),
- ('Arlette'),
- ('Armani'),
- ('Arya'),
- ('Ashley'),
- ('Ashlyn'),
- ('Aspen'),
- ('Aspyn'),
- ('Astrid'),
- ('Athena'),
- ('Aubree'),
- ('Aubrey'),
- ('Audrey'),
- ('August'),
- ('Aura'),
- ('Aurelia'),
- ('Aurora'),
- ('Autumn'),
- ('Ava'),
- ('Avani'),
- ('Averie'),
- ('Avery'),
- ('Aviana'),
- ('Avianna'),
- ('Aya'),
- ('Ayah'),
- ('Ayla'),
- ('Aylani'),
- ('Ayleen'),
- ('Aylin'),
- ('Ayra'),
- ('Azalea'),
- ('Azari'),
- ('Azaria'),
- ('Azariah'),
- ('Bailee'),
- ('Bailey'),
- ('Barbara'),
- ('Baylor'),
- ('Beatrice'),
- ('Belen'),
- ('Bella'),
- ('Bellamy'),
- ('Berkley'),
- ('Bethany'),
- ('Bianca'),
- ('Billie'),
- ('Birdie'),
- ('Blair'),
- ('Blaire'),
- ('Blake'),
- ('Blakely'),
- ('Bonnie'),
- ('Braelynn'),
- ('Briana'),
- ('Brianna'),
- ('Briar'),
- ('Bridget'),
- ('Briella'),
- ('Brielle'),
- ('Brinley'),
- ('Bristol'),
- ('Brittany'),
- ('Brooke'),
- ('Brooklyn'),
- ('Brooklynn'),
- ('Brynlee'),
- ('Brynleigh'),
- ('Brynn'),
- ('Cali'),
- ('Callie'),
- ('Calliope'),
- ('Cameron'),
- ('Camila'),
- ('Camilla'),
- ('Camille'),
- ('Campbell'),
- ('Camryn'),
- ('Capri'),
- ('Carly'),
- ('Carmen'),
- ('Carolina'),
- ('Caroline'),
- ('Carter'),
- ('Cassandra'),
- ('Cassidy'),
- ('Cataleya'),
- ('Catalina'),
- ('Catherine'),
- ('Cattleya'),
- ('Cecelia'),
- ('Cecilia'),
- ('Celeste'),
- ('Celia'),
- ('Celina'),
- ('Celine'),
- ('Chana'),
- ('Chandler'),
- ('Charlee'),
- ('Charleigh'),
- ('Charley'),
- ('Charli'),
- ('Charlie'),
- ('Charlotte'),
- ('Chaya'),
- ('Chelsea'),
- ('Cheyenne'),
- ('Chloe'),
- ('Christina'),
- ('Cielo'),
- ('Claire'),
- ('Clara'),
- ('Clare'),
- ('Clementine'),
- ('Cleo'),
- ('Clover'),
- ('Colette'),
- ('Collins'),
- ('Cora'),
- ('Coraline'),
- ('Cynthia'),
- ('Dafne'),
- ('Dahlia'),
- ('Daisy'),
- ('Dakota'),
- ('Daleyza'),
- ('Dalia'),
- ('Dallas'),
- ('Dani'),
- ('Daniela'),
- ('Daniella'),
- ('Danielle'),
- ('Danna'),
- ('Daphne'),
- ('Darcy'),
- ('Davina'),
- ('Dayana'),
- ('Deborah'),
- ('Delaney'),
- ('Delilah'),
- ('Della'),
- ('Demi'),
- ('Denver'),
- ('Destiny'),
- ('Diana'),
- ('Dior'),
- ('Dorothy'),
- ('Dream'),
- ('Drew'),
- ('Dulce'),
- ('Dylan'),
- ('Eden'),
- ('Edith'),
- ('Eileen'),
- ('Elaina'),
- ('Elaine'),
- ('Elani'),
- ('Eleanor'),
- ('Eleanora'),
- ('Elena'),
- ('Elia'),
- ('Eliana'),
- ('Elianna'),
- ('Elina'),
- ('Elisa'),
- ('Elisabeth'),
- ('Elise'),
- ('Eliza'),
- ('Elizabeth'),
- ('Ella'),
- ('Elle'),
- ('Elliana'),
- ('Ellianna'),
- ('Ellie'),
- ('Elliot'),
- ('Elliott'),
- ('Ellis'),
- ('Elodie'),
- ('Eloise'),
- ('Elora'),
- ('Elouise'),
- ('Elowen'),
- ('Elowyn'),
- ('Elsa'),
- ('Elsie'),
- ('Elyse'),
- ('Ember'),
- ('Emberly'),
- ('Emberlynn'),
- ('Emelia'),
- ('Emely'),
- ('Emerald'),
- ('Emerie'),
- ('Emerson'),
- ('Emersyn'),
- ('Emery'),
- ('Emi'),
- ('Emilia'),
- ('Emiliana'),
- ('Emily'),
- ('Emma'),
- ('Emmeline'),
- ('Emmie'),
- ('Emmy'),
- ('Emory'),
- ('Ensley'),
- ('Erin'),
- ('Esme'),
- ('Esmeralda'),
- ('Estella'),
- ('Estelle'),
- ('Esther'),
- ('Estrella'),
- ('Etta'),
- ('Eva'),
- ('Evangeline'),
- ('Eve'),
- ('Evelyn'),
- ('Evelynn'),
- ('Everlee'),
- ('Everleigh'),
- ('Everly'),
- ('Evie'),
- ('Ezra'),
- ('Faith'),
- ('Fallon'),
- ('Fatima'),
- ('Faye'),
- ('Felicity'),
- ('Fernanda'),
- ('Finley'),
- ('Fiona'),
- ('Flora'),
- ('Florence'),
- ('Frances'),
- ('Francesca'),
- ('Frankie'),
- ('Freya'),
- ('Freyja'),
- ('Gabriela'),
- ('Gabriella'),
- ('Gabrielle'),
- ('Galilea'),
- ('Gemma'),
- ('Genesis'),
- ('Genevieve'),
- ('Georgia'),
- ('Georgina'),
- ('Gia'),
- ('Giana'),
- ('Gianna'),
- ('Giovanna'),
- ('Giselle'),
- ('Giuliana'),
- ('Gloria'),
- ('Goldie'),
- ('Grace'),
- ('Gracelyn'),
- ('Gracelynn'),
- ('Gracie'),
- ('Greta'),
- ('Guinevere'),
- ('Gwen'),
- ('Gwendolyn'),
- ('Hadassah'),
- ('Hadlee'),
- ('Hadley'),
- ('Hailey'),
- ('Haisley'),
- ('Haley'),
- ('Halle'),
- ('Hallie'),
- ('Halo'),
- ('Hana'),
- ('Hanna'),
- ('Hannah'),
- ('Harlee'),
- ('Harley'),
- ('Harlow'),
- ('Harmoni'),
- ('Harmony'),
- ('Harper'),
- ('Hattie'),
- ('Haven'),
- ('Hayden'),
- ('Hazel'),
- ('Heaven'),
- ('Heidi'),
- ('Helen'),
- ('Helena'),
- ('Henley'),
- ('Holland'),
- ('Holly'),
- ('Honey'),
- ('Hope'),
- ('Hunter'),
- ('Icelynn'),
- ('Ila'),
- ('Iliana'),
- ('Imani'),
- ('Inaya'),
- ('Indie'),
- ('Indigo'),
- ('Indy'),
- ('Irene'),
- ('Iris'),
- ('Isabel'),
- ('Isabela'),
- ('Isabella'),
- ('Isabelle'),
- ('Isla'),
- ('Itzel'),
- ('Ivanna'),
- ('Ivey'),
- ('Ivory'),
- ('Ivy'),
- ('Iyla'),
- ('Izabella'),
- ('Jacqueline'),
- ('Jade'),
- ('Jaliyah'),
- ('Jamie'),
- ('Jane'),
- ('Janelle'),
- ('Janiyah'),
- ('Jasmine'),
- ('Jaycee'),
- ('Jayla'),
- ('Jaylani'),
- ('Jayleen'),
- ('Jazlyn'),
- ('Jazmin'),
- ('Jazmine'),
- ('Jemma'),
- ('Jenesis'),
- ('Jenna'),
- ('Jennifer'),
- ('Jessica'),
- ('Jessie'),
- ('Jianna'),
- ('Jimena'),
- ('Joanna'),
- ('Jocelyn'),
- ('Joelle'),
- ('Johanna'),
- ('Jolene'),
- ('Jolie'),
- ('Jordan'),
- ('Jordyn'),
- ('Josephine'),
- ('Josie'),
- ('Journee'),
- ('Journey'),
- ('Journi'),
- ('Jovie'),
- ('Joy'),
- ('Jream'),
- ('Judith'),
- ('Julia'),
- ('Juliana'),
- ('Julianna'),
- ('Julie'),
- ('Juliet'),
- ('Julieta'),
- ('Julietta'),
- ('Juliette'),
- ('June'),
- ('Juniper'),
- ('Kaeli'),
- ('Kahlani'),
- ('Kaia'),
- ('Kailani'),
- ('Kailany'),
- ('Kaitlyn'),
- ('Kaiya'),
- ('Kalani'),
- ('Kali'),
- ('Kaliyah'),
- ('Kallie'),
- ('Kamila'),
- ('Kamiyah'),
- ('Kamryn'),
- ('Kara'),
- ('Karina'),
- ('Karla'),
- ('Karsyn'),
- ('Karter'),
- ('Kassidy'),
- ('Kataleya'),
- ('Katalina'),
- ('Kate'),
- ('Katelyn'),
- ('Katherine'),
- ('Kathryn'),
- ('Katie'),
- ('Kaya'),
- ('Kayla'),
- ('Kaylani'),
- ('Kaylee'),
- ('Kayleigh'),
- ('Kehlani'),
- ('Keilani'),
- ('Keily'),
- ('Keira'),
- ('Kelly'),
- ('Kelsey'),
- ('Kendall'),
- ('Kendra'),
- ('Kenna'),
- ('Kennedi'),
- ('Kennedy'),
- ('Kensley'),
- ('Kenzie'),
- ('Keyla'),
- ('Keziah'),
- ('Khalani'),
- ('Khaleesi'),
- ('Khloe'),
- ('Kiana'),
- ('Kiara'),
- ('Kiera'),
- ('Kimber'),
- ('Kimberly'),
- ('Kinley'),
- ('Kinsley'),
- ('Kira'),
- ('Kora'),
- ('Kori'),
- ('Kyla'),
- ('Kylee'),
- ('Kylie'),
- ('Kyra'),
- ('Lacey'),
- ('Laila'),
- ('Lainey'),
- ('Lakelyn'),
- ('Lakelynn'),
- ('Lana'),
- ('Laney'),
- ('Lara'),
- ('Laura'),
- ('Laurel'),
- ('Lauren'),
- ('Lavender'),
- ('Layla'),
- ('Laylani'),
- ('Lea'),
- ('Leah'),
- ('Leanna'),
- ('Legacy'),
- ('Leia'),
- ('Leighton'),
- ('Leila'),
- ('Leilani'),
- ('Leilany'),
- ('Lena'),
- ('Lennon'),
- ('Lennox'),
- ('Lenora'),
- ('Leona'),
- ('Leslie'),
- ('Lettie'),
- ('Lexi'),
- ('Leyla'),
- ('Lia'),
- ('Liana'),
- ('Liberty'),
- ('Lila'),
- ('Lilah'),
- ('Lilia'),
- ('Lilian'),
- ('Liliana'),
- ('Lilianna'),
- ('Lilith'),
- ('Lillian'),
- ('Lilliana'),
- ('Lillie'),
- ('Lilly'),
- ('Lily'),
- ('Lilyana'),
- ('Lina'),
- ('Linda'),
- ('Lisa'),
- ('Liv'),
- ('Livia'),
- ('Logan'),
- ('Lola'),
- ('London'),
- ('Londyn'),
- ('Lorelai'),
- ('Lorelei'),
- ('Loretta'),
- ('Lottie'),
- ('Louisa'),
- ('Louise'),
- ('Love'),
- ('Lucia'),
- ('Luciana'),
- ('Lucille'),
- ('Lucy'),
- ('Luella'),
- ('Luisa'),
- ('Luna'),
- ('Luz'),
- ('Lyanna'),
- ('Lydia'),
- ('Lyla'),
- ('Lylah'),
- ('Lyra'),
- ('Lyric'),
- ('Mabel'),
- ('Maci'),
- ('Macie'),
- ('Mackenzie'),
- ('Macy'),
- ('Madalyn'),
- ('Maddie'),
- ('Maddison'),
- ('Madeleine'),
- ('Madeline'),
- ('Madelyn'),
- ('Madelynn'),
- ('Madilyn'),
- ('Madilynn'),
- ('Madison'),
- ('Mae'),
- ('Maelynn'),
- ('Maeve'),
- ('Magdalena'),
- ('Maggie'),
- ('Magnolia'),
- ('Maia'),
- ('Maisie'),
- ('Maisy'),
- ('Makayla'),
- ('Makenna'),
- ('Makenzie'),
- ('Malani'),
- ('Malaya'),
- ('Malaysia'),
- ('Malia'),
- ('Maliyah'),
- ('Malka'),
- ('Mallory'),
- ('Mara'),
- ('Marceline'),
- ('Maren'),
- ('Margaret'),
- ('Margo'),
- ('Margot'),
- ('Maria'),
- ('Mariah'),
- ('Mariam'),
- ('Mariana'),
- ('Marianna'),
- ('Marie'),
- ('Mariella'),
- ('Marigold'),
- ('Marilyn'),
- ('Marina'),
- ('Marisol'),
- ('Marjorie'),
- ('Marlee'),
- ('Marleigh'),
- ('Marley'),
- ('Marlowe'),
- ('Martha'),
- ('Mary'),
- ('Maryam'),
- ('Matilda'),
- ('Mavis'),
- ('Maxine'),
- ('Maya'),
- ('Mazie'),
- ('Mckenna'),
- ('Mckenzie'),
- ('Mckinley'),
- ('Meadow'),
- ('Megan'),
- ('Meilani'),
- ('Melanie'),
- ('Melany'),
- ('Melina'),
- ('Melissa'),
- ('Melody'),
- ('Mercy'),
- ('Meredith'),
- ('Mia'),
- ('Micah'),
- ('Michaela'),
- ('Michelle'),
- ('Mikaela'),
- ('Mikayla'),
- ('Mila'),
- ('Milan'),
- ('Milana'),
- ('Milani'),
- ('Milena'),
- ('Miley'),
- ('Miller'),
- ('Millie'),
- ('Mina'),
- ('Mira'),
- ('Miracle'),
- ('Miranda'),
- ('Miriam'),
- ('Molly'),
- ('Monica'),
- ('Monroe'),
- ('Morgan'),
- ('Murphy'),
- ('Mya'),
- ('Myla'),
- ('Mylah'),
- ('Myra'),
- ('Nadia'),
- ('Nala'),
- ('Nalani'),
- ('Nancy'),
- ('Naomi'),
- ('Natalia'),
- ('Natalie'),
- ('Nataly'),
- ('Natasha'),
- ('Navy'),
- ('Naya'),
- ('Nayeli'),
- ('Nellie'),
- ('Neriah'),
- ('Nevaeh'),
- ('Nia'),
- ('Nicole'),
- ('Nina'),
- ('Noa'),
- ('Noah'),
- ('Noelle'),
- ('Noemi'),
- ('Nola'),
- ('Noor'),
- ('Nora'),
- ('Norah'),
- ('Nova'),
- ('Novah'),
- ('Novalee'),
- ('Nyla'),
- ('Nylah'),
- ('Nyomi'),
- ('Oaklee'),
- ('Oakleigh'),
- ('Oakley'),
- ('Oaklyn'),
- ('Oaklynn'),
- ('Ocean'),
- ('Octavia'),
- ('Olive'),
- ('Olivia'),
- ('Opal'),
- ('Ophelia'),
- ('Paige'),
- ('Paislee'),
- ('Paisley'),
- ('Palmer'),
- ('Paloma'),
- ('Paris'),
- ('Parker'),
- ('Paula'),
- ('Paulina'),
- ('Payton'),
- ('Pearl'),
- ('Penelope'),
- ('Penny'),
- ('Persephone'),
- ('Peyton'),
- ('Phoebe'),
- ('Phoenix'),
- ('Piper'),
- ('Poppy'),
- ('Presley'),
- ('Priscilla'),
- ('Promise'),
- ('Quincy'),
- ('Quinn'),
- ('Rachel'),
- ('Raegan'),
- ('Raelyn'),
- ('Raelynn'),
- ('Raina'),
- ('Ramona'),
- ('Raven'),
- ('Raya'),
- ('Rayna'),
- ('Rayne'),
- ('Reagan'),
- ('Rebecca'),
- ('Rebekah'),
- ('Reese'),
- ('Regina'),
- ('Reign'),
- ('Reina'),
- ('Remi'),
- ('Remington'),
- ('Remy'),
- ('Renata'),
- ('Reya'),
- ('Reyna'),
- ('Rhea'),
- ('Riley'),
- ('River'),
- ('Rivka'),
- ('Robin'),
- ('Romina'),
- ('Romy'),
- ('Rory'),
- ('Rosa'),
- ('Rosalee'),
- ('Rosalia'),
- ('Rosalie'),
- ('Rosalina'),
- ('Rosalyn'),
- ('Rose'),
- ('Rosemary'),
- ('Rosie'),
- ('Rowan'),
- ('Rowyn'),
- ('Royalty'),
- ('Ruby'),
- ('Ruth'),
- ('Ruthie'),
- ('Ryan'),
- ('Rylee'),
- ('Ryleigh'),
- ('Rylie'),
- ('Saanvi'),
- ('Sabrina'),
- ('Sadie'),
- ('Sage'),
- ('Saige'),
- ('Salem'),
- ('Salma'),
- ('Salome'),
- ('Samantha'),
- ('Samara'),
- ('Samira'),
- ('Sara'),
- ('Sarah'),
- ('Sarahi'),
- ('Sarai'),
- ('Sariyah'),
- ('Sasha'),
- ('Savannah'),
- ('Sawyer'),
- ('Saylor'),
- ('Scarlet'),
- ('Scarlett'),
- ('Scottie'),
- ('Scout'),
- ('Selah'),
- ('Selena'),
- ('Selene'),
- ('Seraphina'),
- ('Serena'),
- ('Serenity'),
- ('Sevyn'),
- ('Shelby'),
- ('Shiloh'),
- ('Siena'),
- ('Sienna'),
- ('Sierra'),
- ('Siya'),
- ('Sky'),
- ('Skye'),
- ('Skyla'),
- ('Skylar'),
- ('Skyler'),
- ('Sloan'),
- ('Sloane'),
- ('Sofia'),
- ('Sol'),
- ('Solana'),
- ('Soleil'),
- ('Sophia'),
- ('Sophie'),
- ('Soraya'),
- ('Stella'),
- ('Stephanie'),
- ('Stevie'),
- ('Stormi'),
- ('Summer'),
- ('Sunny'),
- ('Sutton'),
- ('Sydney'),
- ('Sylvia'),
- ('Sylvie'),
- ('Talia'),
- ('Tallulah'),
- ('Tatum'),
- ('Taylor'),
- ('Taytum'),
- ('Teagan'),
- ('Teresa'),
- ('Tessa'),
- ('Thalia'),
- ('Thea'),
- ('Theodora'),
- ('Tiana'),
- ('Tiffany'),
- ('Tilly'),
- ('Treasure'),
- ('Trinity'),
- ('Tru'),
- ('Vada'),
- ('Valentina'),
- ('Valeria'),
- ('Valerie'),
- ('Valery'),
- ('Vanessa'),
- ('Veda'),
- ('Vera'),
- ('Veronica'),
- ('Victoria'),
- ('Vienna'),
- ('Violet'),
- ('Violeta'),
- ('Violette'),
- ('Virginia'),
- ('Vivian'),
- ('Viviana'),
- ('Vivienne'),
- ('Waverly'),
- ('Whitley'),
- ('Willa'),
- ('Willow'),
- ('Winnie'),
- ('Winona'),
- ('Winter'),
- ('Wren'),
- ('Wrenlee'),
- ('Wrenleigh'),
- ('Wrenley'),
- ('Wynter'),
- ('Ximena'),
- ('Xiomara'),
- ('Xyla'),
- ('Yamileth'),
- ('Yara'),
- ('Yareli'),
- ('Yaretzi'),
- ('Yasmin'),
- ('Yusra'),
- ('Zahra'),
- ('Zainab'),
- ('Zaniyah'),
- ('Zara'),
- ('Zaria'),
- ('Zariah'),
- ('Zariyah'),
- ('Zayla'),
- ('Zaylee'),
- ('Zelda'),
- ('Zendaya'),
- ('Zoe'),
- ('Zoey'),
- ('Zora'),
- ('Zoya'),
- ('Zuri'),
- ('Zyla');
- insert example_names (name)
- select name
- from girls_names as t1
- where not exists (select 1 from example_names as t2 where t2.name = t1.name);
This gives us a total of 1,921 random names. Now I'll create a stored procedure to insert users up to 1,000 at a time:
- use mydb;
- drop procedure if exists sp_insert_names;
- delimiter //
- create procedure sp_insert_names(name_count int, out output_message varchar(255))
- begin
- if (name_count > 1000) then
- SIGNAL SQLSTATE '45000'
- SET MESSAGE_TEXT = 'Maximum 1000 users at a time';
- end if;
- drop temporary table if exists temp_names_seed;
- create temporary table temp_names_seed as
- select name_id, name, floor(rand() * name_count) + 1 as rando1, floor(rand() * 10) + 1 as rando2
- from example_names
- limit name_count;
-
- drop temporary table if exists temp_names;
-
- create temporary table temp_names as
- select concat(t1.name, t2.name) as user_name,
- concat(lower(t1.name), '@', lower(t1.name), lower(t2.name), t3.tld) as user_email,
- now() as modified
- from temp_names_seed as t1
- join example_names as t2 on t2.name_id = t1.rando1
- join (select 1 as tld_id, '.com' as tld union all
- select 2, '.net' union all
- select 3, '.org' union all
- select 4, '.io' union all
- select 5, '.xyz' union all
- select 6, '.au' union all
- select 7, '.online' union all
- select 8, '.blog' union all
- select 9, '.live' union all
- select 10, '.tech') as t3 on t3.tld_id = t1.rando2;
- -- if rando1 is the same as the name_id it must be changed otherwise the name is joining to itself
- update temp_names_seed as t1
- set t1.rando1 = case t1.rando1 when name_count then 1 else t1.rando1 + 1 end
- where name_id = rando1;
- insert users (user_name, user_email, modified)
- select concat(t1.name, t2.name, '_', floor(rand() * 50) + 1) as user_name,
- concat(lower(t1.name), '@', lower(t1.name), lower(t2.name), t3.tld) as user_email,
- now() as modified
- from temp_names_seed as t1
- join example_names as t2 on t2.name_id = t1.rando1
- join (select 1 as tld_id, '.com' as tld union all
- select 2, '.net' union all
- select 3, '.org' union all
- select 4, '.io' union all
- select 5, '.xyz' union all
- select 6, '.au' union all
- select 7, '.online' union all
- select 8, '.blog' union all
- select 9, '.live' union all
- select 10, '.tech') as t3 on t3.tld_id = t1.rando2;
-
- set output_message = concat(row_count(), ' user row', case when row_count() > 1 then 's' else '' end, ' inserted.');
-
- drop temporary table temp_names;
- drop temporary table temp_names_seed;
- end; //
Now let's execute the following code. The final statement fails because that would be 5,001 users.
- call sp_insert_names(1000, @message);
- select @message as output_message;
- call sp_insert_names(1000, @message);
- select @message as output_message;
- call sp_insert_names(1000, @message);
- select @message as output_message;
- call sp_insert_names(1000, @message);
- select @message as output_message;
- call sp_insert_names(999, @message);
- select @message as output_message;
- call sp_insert_names(2, @message);
- select @message as output_message;