首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何更新数据库中已插入后删除的值

问如何更新数据库中已插入后删除的值
EN

Stack Overflow用户
提问于 2014-04-28 13:37:21
回答 1查看 76关注 0票数 0

我在数据库中有一个表,其中只有一列,它存储了所有项目的名称。我有一个注册页面,其中显示所有这些项目,其中用户可以选择任何。对表格所做的任何更改都会反映在我的注册页面上。

当用户选择项目并注册时,用户的所有信息都存储在另一个表中,即数据库。我的问题是,如果我在带有项目名称的表中做了任何更改(删除或插入一个名称),它会反映在注册页面上,但不会反映在用户的数据库上。

例如,假设一个用户选择了p1、p2和注册,后来如果我从数据库中删除了p2,它确实会从用户的数据库中删除,只是从注册页面中删除。我希望这种变化在每个地方都能体现出来。我如何实现这一点?

代码语言:javascript
复制
    <?php
    include('connection2.php');
    if(isset($_POST['project'])) {
           $pro=implode(',', $_POST['project']);

    $fname=$_POST['fname'];
    $lname=$_POST['lname'];
    $age=$_POST['age'];
    $gender=$_POST['gender'];
    $username=$_POST['username'];
    $username=$_POST['username'];
    $password=$_POST['password'];

    mysql_query("INSERT INTO test(fname, lname, age, gender, username, password,projects)VALUES
    ('$fname', '$lname', '$age', '$gender', '$username', AES_ENCRYPT
    ('$password','.b.'), '$projects')");
    }
    header("location: registration2.php?remark=success");
    mysql_close($con);
?> 
EN

回答 1

Stack Overflow用户

发布于 2014-04-28 13:53:50

如果您使用的是同一数据库,则可以使用项目的id作为外键。这实际上取决于你的数据库结构。如果您存储的内容类似于

代码语言:javascript
复制
user_1, project_1
user_1, project_2

您可以使用项目表的id代替project_1,并在从project表中删除时使用cascade delete

代码语言:javascript
复制
userId, userName, project_id

其中project_id将是您的外键。

(您也可以按照注释部分中的建议使用触发器。不过,对于此操作,我建议使用级联删除。如果你的操作比这个复杂,你可以使用triggers,甚至stored procedure)

此SO POST包含有关级联删除工作方式的更多详细信息

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23333237

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档