【问题标题】:select sql statement... error with from clause选择 sql 语句... from 子句出错
【发布时间】:2014-05-22 07:37:39
【问题描述】:

表 1:学生

Name   Class PK
John   Mike  1
Andrei Tom   2

表 2:成绩

Disciplne Grade PK_student
math       2    1
math      10    1
math       8    2
math       5    2

从学生的PK删除表2成绩中的行的正确说法是什么。我的观点是从数据库和他的成绩中删除一个学生。谢谢

我尝试在 C# 中删除学生的成绩。我读了名字和第二个名字,它应该从表中删除他的成绩

OleDbCommand comanda1 = new OleDbCommand("DELETE FROM GRADES WHERE PK_student=SELECT PK from Students WHERE Name=@p0 AND Class=@p1 ;", conex);

comanda1.Parameters.Add(new OleDbParameter("p0", v[0]));
omanda1.Parameters.Add(new OleDbParameter("p1", v[1]));

它在 FROM 子句中给我一个错误。

【问题讨论】:

  • 您要根据给定的学生 ID 从两个表中删除学生及其成绩吗?
  • 在另一个表上连接的删除语句可能因您的 dbms 而异。顺便说一句,这个问题在SO上有几十个答案......
  • 您的问题标题表明您在尝试查询时收到错误消息?你应该在你的问题中包含(查询和你收到的错误),人们喜欢在这里看到你自己做了什么;)

标签: sql


【解决方案1】:

如果要删除表 1 中的数据 rfom 表 2,则可以使用以下查询:

DELETE FROM GRADES WHERE PK_student IN (SELECT PK FROM STUDENTS);

希望这是您想要实现的理想查询。

【讨论】:

    猜你喜欢
    • 2018-04-03
    • 2015-07-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-09
    • 1970-01-01
    相关资源
    最近更新 更多