2013-02-10 150 views
0

好,所以我有这个脚本,要么更新或插入到MySQL的值,也自动增加一列,并设置枚举值从0到1.递减一个自动增量列?

现在即时试图找出我可能会扭转它,所以枚举值设置为0(我认为我知道该怎么做)我也需要弄清楚如何减少或增量的相反是什么,是否有可能-1在自动增量列?

值不必然需要花费很长时间来被删除,我可以递减自动递增列,并从1到0

昌醚:枚举值谁能告诉我怎么请我可能做到这一点?谢谢。

<?php 

    require_once('includes/session.php'); 
    require_once('includes/functions.php'); 
    require('includes/_config/connection.php'); 

    session_start(); 

     confirm_logged_in(); 

     if (isset ($_GET['to'])) { 
     $user_to_id = $_GET['to']; 


    } 


    if (!isset($_GET['to'])) 
     exit('No user specified.'); 

    $user_id = $_GET['to']; 


    $result = mysql_query("SELECT * FROM ptb_likes WHERE liked_id ='".$user_to_id."' "); 

    if(mysql_num_rows($result) > 0) { 
    mysql_query("UPDATE ptb_likes SET likes = likes +1 WHERE liked_id = '".$user_to_id."' "); 


     $user_to_id = mysql_query("ALTER TABLE likes AUTO_INCREMENT = $id"); 
    } 
    else 
    { 
     mysql_query("INSERT INTO ptb_likes (user_id, liked_id) VALUES (".$_SESSION['user_id'].", ".$user_to_id.")"); 

    } 



    if($result) 
    { 
    mysql_query("UPDATE ptb_likes SET user_id_has_liked='1' WHERE user_id=".$_SESSION['user_id']."") 
    or die(mysql_error()); 

    header("Location: {$_SERVER['HTTP_REFERER']}"); 

    } 
    ?> 
+2

建议你应该不希望* *递减的自动递增列。 – nickb 2013-02-10 05:22:56

+1

'ALTER TABLE some_table AUTO_INCREMENT = 12'但是如果你这样做,你做错了。 – Popnoodles 2013-02-10 05:23:52

回答

0

其他地方一样

create table b 
(
id int not null auto_increment primary key, 
foo boolean not null 
); 

insert into b (foo) values (true), (false), (false), (true), (true); 

update b set 
foo = not foo;