sql >> Database teknologi >  >> RDS >> Mysql

Hvordan sender man data til to tabeller med samme bruger-id som primærnøgle?

Før noget , bør du ikke bruge mysql_*-udvidelsen længere. Gå til PDO eller mysqli

Din teknik genererer to forskellige unikke id'er. Pointen er kun at have én , så det kan være unikt, og linke oplysninger om det unikke id.

Brugertabellen er den med det unikke id, user_id , som er din auto_increment-kolonne. Kundeinfo-tabellen kan også have et info_id unik kolonne, men skal indeholde et user_id kolonne, som vil indeholde brugerens user_id , der forbinder rækkerne sammen.

Det ville også være et godt øjeblik at tilføje en fremmednøgle til dine tabeller, så integriteten af ​​dataene ikke bliver kompromitteret.

så efter denne forespørgsel:

$result = mysql_query(
    "INSERT INTO `users`(username, password, email) VALUES ('$value1', '$value2','$value3')"
);

få indsættelses-id'et:

$id = mysql_insert_id();

kør derefter din anden forespørgsel med den:

$result = mysql_query(
    "INSERT INTO `customer_info`(user_id,firstname, lastname, b_add_num, b_add_road, b_add_town, b_add_pc, p_add_num, p_add_road, p_add_town, p_add_pc) VALUES ('$id','$value4','$value5','$value6','$value7','$value8','$value9','$value10','$value11','$value12','$value13')"
);


  1. Opret felt med standard som epoketid

  2. Hvordan laver man Import og Require sammen?

  3. hibernate, mysql, glassfish v3 og JTA datakilde

  4. Går java.net.Inet6Address.getByName bogstaveligt talt ud og se, om adressen eksisterer