Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6722013
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 26, 20262026-05-26T09:23:49+00:00 2026-05-26T09:23:49+00:00

Let’s say I have a table named WORDS where there is just a primary

  • 0

Let’s say I have a table named WORDS where there is just a primary key (ID), and a column WORD. The WORD column should be unique varchar, and the ID is an auto-incrementing integer field.

In SQL Terms,

CREATE TABLE WORDS(
    ID INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
    WORD VARCHAR(35) NOT NULL,
    UNIQUE(WORD)
);

While going through a list of words in PHP, I’d like to insert a new word to the WORDS table. If it’s already present, I’d like nothing to happen – and if it isn’t present I’d like it to be inserted.

I found the best solution to this was using INSERT IGNORE. I have to go one step further now though… my PHP script needs to know the primary key of the word after its inserted into the table. If it wasn’t already present, this is easy – I can just use mysql_insert_id. If it was present though, I seem to have to do a query on the table to get what the primary key for that word already was.

Is there a neat way to do:

“Insert this into the table if it’s not already there, and give me the
primary key it’s in either way.”

by any chance?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-26T09:23:50+00:00Added an answer on May 26, 2026 at 9:23 am

    There is no easy way to do this. But you can cut it down to a function

    function wordDB($word) {
      $sql = "select * from WORDS where WORD = '".$word."'";
      $result = mysql_query($sql);
      if($result) { #if exists
        while($row = mysql_fetch_array($result)) {
          $id = $row['id'];
        }
      } else { # if doesn't exist
        $insertSQL = "insert into WORDS (WORD) values ('".$word."')";
        mysql_query($insertSQL);
        $id = mysql_insert_id();
      }
      return $id;
    }
    

    This is a short function to do everything that you basically asked.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Let's say I have table with column 'URL' whrere I store urls like this
Let's say I have the following text: (example) <table> <tr> <td> <span>col1</span> </td> <td>col2</td>
Let's say I have this MySQL table: OK.. see the type field? Type 0
Let's say we have the following table: CREATE TABLE T ( ID INT, String1
Let's say I'm building a data access layer for an application. Typically I have
Let's say you have a class called Customer, which contains the following fields: UserName
Let's say we have a simple function defined in a pseudo language. List<Numbers> SortNumbers(List<Numbers>
Let's say I have a drive such as C:\ , and I want to
Let's say that we have an ARGB color: Color argb = Color.FromARGB(127, 69, 12,
Let's say I have two tables orgs and states orgs is (o_ID, state_abbr) and

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.