Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 从连接在一起的两个sql表中删除行_C#_Sql_Sql Server_Wpf_Inner Join - Fatal编程技术网

C# 从连接在一起的两个sql表中删除行

C# 从连接在一起的两个sql表中删除行,c#,sql,sql-server,wpf,inner-join,C#,Sql,Sql Server,Wpf,Inner Join,有两个表格: Table1 : UserID Name Job Table2 : BookID Book Car UserID 我将这两个表加载到一个wpf数据网格中: da.SelectCommand = new SqlCommand("select Table1.UserID, Table1.Name, Table1.Job, Table2.Book, Table2.Car from Table1 inner join Table2 on Table1.UserID = Table2.Us

有两个表格:

Table1 : UserID Name Job
Table2 : BookID Book Car UserID
我将这两个表加载到一个wpf数据网格中:

da.SelectCommand = new SqlCommand("select Table1.UserID, Table1.Name, Table1.Job, Table2.Book, Table2.Car from Table1 inner join Table2 on Table1.UserID = Table2.UserID");
我想通过DataGrid从表2中删除一行:

 SqlCommand com = new SqlCommand("delete from Table2 where BookID=@BookID)",con);
但不管用,


我该怎么做?

您必须使用以下方法删除行

DELETE FROM table2
WHERE  userid = (SELECT userid
                 FROM   table1);  

你在期待这样的事情吗

DELETE FROM B WHERE BOOKID IN (SELECT BOOKID FROM B,A WHERE B.USERID=A.USERID AND B.BOOK='ABCD'); 

你说它必须删除某个用户的一本书,而不是所有的书。。 您必须知道必须删除其书籍的用户id

如果要删除用户书籍,请执行以下操作:

从表2中删除,其中user_id1、user_id1等中的userid。。。。。; 但要删除的行太大,请使用批量删除机制

如果您没有用户ID和书籍ID,则必须执行以下操作:

从表2中删除book_id1、book_id2等中的bookid。。;
或从表2中删除,其中bookid=//根据您的开发语言,您设置了什么?参数我不知道C语法。

我想根据BookID删除记录。一个用户可能有一些书,如果我删除用户,所有的书都会被删除。我想从用户中删除某本书。它有错误:子查询返回的值超过1。当子查询在=、!=、=或者当子查询用作表达式时,我使用了以下命令:SqlCommand com=new SqlCommanddelete from Table2,其中UserID=select UserID from Table1,con;但它有错误:子查询返回的值超过1。当子查询在=、!=、=或者当子查询用作表达式时。该语句已终止。我使用了它,但从用户删除了所有书籍。它必须从某个用户删除一本书,而不是所有书籍。如何首先获取用户ID?您应该提供更多详细信息。您是否可以调试并看到收到预期的BookID?您的SQL非常简单,没有错误。你真的收到错误了吗?如果不存在,则很可能您的BookID不存在,因此没有要删除的内容。我使用了Dileep spinet:accept R U EXPECTING这样。。从B中删除,其中BOOKID在从B中选择BOOKID,A其中B.USERID=A.USERID,但是,某个用户的所有书籍都将被删除。可能是您从代码中发送了一个USERID,并将其用作SQL中的BOOKID?验证您发送到数据库的内容…是的,我做得正确,