Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/284.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/8/mysql/58.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
从两个表中查找和删除一条记录?MySQL-PHP_Php_Mysql - Fatal编程技术网

从两个表中查找和删除一条记录?MySQL-PHP

从两个表中查找和删除一条记录?MySQL-PHP,php,mysql,Php,Mysql,我有两个MySQL表,一个是用户名,另一个是用户名,是否可以在其中一个表中找到一条记录并将其删除?我试过下面的方法,但没用 DELETE FROM JB_Employer, JB_Jobseeker WHERE Username='$userName' OR User_Name='$userName' 我觉得我好像错过了什么明显的东西 谢谢。 Kai在要删除行的表名之前或之后使用FROM时,语法会有所不同。从两个表中删除条目时,应使用以下方法: 在表名称后使用FROM: DELETE JB_E

我有两个MySQL表,一个是用户名,另一个是用户名,是否可以在其中一个表中找到一条记录并将其删除?我试过下面的方法,但没用

DELETE FROM JB_Employer, JB_Jobseeker WHERE Username='$userName' OR User_Name='$userName'
我觉得我好像错过了什么明显的东西

谢谢。
Kai

在要删除行的表名之前或之后使用FROM时,语法会有所不同。从两个表中删除条目时,应使用以下方法:

在表名称后使用FROM:

DELETE JB_Employer, JB_Jobseeker 
FROM JB_Employer INNER JOIN JB_Jobseeker ON JB_Employer.Username = JB_Jobseeker.User_Name
WHERE JB_Employer.Username= '$userName';
DELETE FROM JB_Employer, JB_Jobseeker 
USING JB_Employer INNER JOIN JB_Jobseeker ON JB_Employer.Username = JB_Jobseeker.User_Name
WHERE JB_Employer.Username= '$userName';
DELETE JB_Employer, JB_Jobseeker 
FROM JB_Employer
LEFT JOIN JB_Jobseeker ON JB_Employer.Username = JB_Jobseeker.User_Name
WHERE JB_Employer.Username= '$userName';
DELETE FROM JB_Employer, JB_Jobseeker 
USING JB_Employer
LEFT JOIN JB_Jobseeker ON JB_Employer.Username = JB_Jobseeker.User_Name
WHERE JB_Employer.Username= '$userName';
在表名称之前使用FROM:

DELETE JB_Employer, JB_Jobseeker 
FROM JB_Employer INNER JOIN JB_Jobseeker ON JB_Employer.Username = JB_Jobseeker.User_Name
WHERE JB_Employer.Username= '$userName';
DELETE FROM JB_Employer, JB_Jobseeker 
USING JB_Employer INNER JOIN JB_Jobseeker ON JB_Employer.Username = JB_Jobseeker.User_Name
WHERE JB_Employer.Username= '$userName';
DELETE JB_Employer, JB_Jobseeker 
FROM JB_Employer
LEFT JOIN JB_Jobseeker ON JB_Employer.Username = JB_Jobseeker.User_Name
WHERE JB_Employer.Username= '$userName';
DELETE FROM JB_Employer, JB_Jobseeker 
USING JB_Employer
LEFT JOIN JB_Jobseeker ON JB_Employer.Username = JB_Jobseeker.User_Name
WHERE JB_Employer.Username= '$userName';
编辑1

下一节解释了从两个表或其中一个表中删除条目的查询

在表名称后使用FROM:

DELETE JB_Employer, JB_Jobseeker 
FROM JB_Employer INNER JOIN JB_Jobseeker ON JB_Employer.Username = JB_Jobseeker.User_Name
WHERE JB_Employer.Username= '$userName';
DELETE FROM JB_Employer, JB_Jobseeker 
USING JB_Employer INNER JOIN JB_Jobseeker ON JB_Employer.Username = JB_Jobseeker.User_Name
WHERE JB_Employer.Username= '$userName';
DELETE JB_Employer, JB_Jobseeker 
FROM JB_Employer
LEFT JOIN JB_Jobseeker ON JB_Employer.Username = JB_Jobseeker.User_Name
WHERE JB_Employer.Username= '$userName';
DELETE FROM JB_Employer, JB_Jobseeker 
USING JB_Employer
LEFT JOIN JB_Jobseeker ON JB_Employer.Username = JB_Jobseeker.User_Name
WHERE JB_Employer.Username= '$userName';
在表名称之前使用FROM:

DELETE JB_Employer, JB_Jobseeker 
FROM JB_Employer INNER JOIN JB_Jobseeker ON JB_Employer.Username = JB_Jobseeker.User_Name
WHERE JB_Employer.Username= '$userName';
DELETE FROM JB_Employer, JB_Jobseeker 
USING JB_Employer INNER JOIN JB_Jobseeker ON JB_Employer.Username = JB_Jobseeker.User_Name
WHERE JB_Employer.Username= '$userName';
DELETE JB_Employer, JB_Jobseeker 
FROM JB_Employer
LEFT JOIN JB_Jobseeker ON JB_Employer.Username = JB_Jobseeker.User_Name
WHERE JB_Employer.Username= '$userName';
DELETE FROM JB_Employer, JB_Jobseeker 
USING JB_Employer
LEFT JOIN JB_Jobseeker ON JB_Employer.Username = JB_Jobseeker.User_Name
WHERE JB_Employer.Username= '$userName';

希望它能起作用

这不是一个错误吗?因为用户名字段在JB_Employer上不存在。也许您可以这样做:
WHERE JB_Employer.Username='$Username'或JB_jobseker.User_name='$Username'
您需要查看多表删除语法:尝试将表名放入WHERE子句中?试试@Kristian说的。我本来想回答的,但我不想抢克里斯蒂安的风头。它可能不起作用,但可能不起作用。恐怕它不起作用,我使用了一个我知道存在的记录(test)对它进行了测试,结果出现了以下错误:
您的SQL语法中有一个错误;检查与您的MySQL服务器版本对应的手册,了解在第1行“WHERE JB_Employer.Username=”test“附近使用的正确语法,分号位于错误的位置。你能修一下吗?请查看更新的查询。您好,我更改了查询并再次尝试,它运行时没有错误,但在使用我知道存在的记录后,它没有返回任何记录:\嗯,我没听懂。这是一个删除查询,它不应该返回任何记录,我的意思是它没有删除任何记录。这是它返回的内容:
0行已删除。(查询耗时0.0025秒)