如何删除数据库中最后插入的记录? [英] How do i delete the last inserted record on database?

查看:115
本文介绍了如何删除数据库中最后插入的记录?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

你好,



我有这个SQL语法来删除最后一条记录,但似乎拒绝工作......





代码段:



Hello,

I have this SQL syntax to delete the last record, but it seems to refuse to work...


Code Snippet:

private void cmdAnular_Click(object sender, EventArgs e)
{
    string SQL = "DELETE FROM entradas WHERE id_entrada = @entrada ORDER BY id_entrada DESC LIMIT 1";

    using (var cn = new MySqlConnection("server = localhost; user id = root; password = 12345; persistsecurityinfo = True; database = portaria; allowuservariables = True"))
    {
        using (var cmd = new MySqlCommand(SQL, cn))
        {
            int i = 0;
          cmd.Parameters.Clear();
          cmd.Parameters.AddWithValue("@entrada", Grid1.Rows[i].Cells["#"].Value);
          MySqlDataAdapter sda = new MySqlDataAdapter();
          DataTable dt = new DataTable();
          sda.SelectCommand = cmd;
          sda.Fill(dt);
          Grid1.Update();
          Grid1.Refresh();

          cn.Open();
        }
        cn.Close();
        cmdAnular.Enabled = false;
    }
}





SQLyog日志:





SQLyog LOG:

1 queries executed, 1 success, 0 errors, 0 warnings

Query: DELETE FROM entradas WHERE id_entrada = @entrada ORDER BY id_entrada DESC LIMIT 1

0 row(s) affected

Execution Time : 0 sec
Transfer Time  : 0 sec
Total Time     : 0.001 sec





我尝试过:



尝试使用记录ID检查#上显示的最高编号,然后将其删除。但是这个查询在SQLyog上没问题,但在实际程序上没有做任何事情。



What I have tried:

Tried to use record id to check the highest number shown on "#" and then delete it. But this query is fine on SQLyog, but not doing anything on the actual program.

推荐答案

You can add an auto increment/IDENTITY column, it will keep the track of inserted data. You can use the IDENTITY column in where condition of DELETE
Example:
[ID]           INT           IDENTITY (1, 1) NOT NULL

DELETE FROM Employee WHERE ID in(SELECT MAX(ID) FROM Employee) 


这篇关于如何删除数据库中最后插入的记录?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆