永发信息网

我这个SQl出了什么问题,为什么更新不了

答案:2  悬赏:30  手机版
解决时间 2021-02-18 03:00
  • 提问者网友:战皆罪
  • 2021-02-17 16:34

$company_id= intval($_REQUEST['company_id']);
$company_name=$_REQUEST['company_name'];
$company_category=$_REQUEST['company_category'];
$company_url=$_REQUEST['company_url'];
$company_telephone=$_REQUEST['company_telephone'];
$company_address=$_REQUEST['company_address'];
$company_comments=$_REQUEST['company_comments'];

include 'conn.php';

$sql = "update myoa_company set
company_name='$company_name'
where company_id=$company_id";

@mysql_query($sql);
echo json_encode(array(
'company_id' => $company_id,
'company_name'=>$company_name,
'company_category' => $company_category,
'company_url'=>$company_url,
'company_telephone'=>$company_telephone,
'company_comments'=>$company_comments,
'company_address'=>$company_address
));
?>
最佳答案
  • 五星知识达人网友:不想翻身的咸鱼
  • 2021-02-17 17:40
$sql = "update myoa_company set
company_name='$company_name'
where company_id=$company_id";
$sql是一段字符串,里面要是想用变量,只能用连接符,不能直接包含在字符串里
$sql = "update myoa_company set
company_name=' ".$company_name." '
where company_id=$company_id";
全部回答
  • 1楼网友:迷人又混蛋
  • 2021-02-17 19:12
--我也是初学者,共同研究下,你最好一段一段执行,要不就没意义了 use school drop table teacher1 drop table student1 go create table teacher1 ( t_id int primary key, t_name nvarchar(10) not null ) go insert into teacher1 values(1347,'张三') insert into teacher1 values(2680,'李四') insert into teacher1 values(6379,'王五') go create table student1 ( s_id int primary key, t_id int ) go alter table student1 add constraint fk foreign key(t_id) references teacher1(t_id) on update cascade insert into student1 values(1,2680) insert into student1 values(2,6379) insert into student1 values(3,1347) insert into student1 values(4,6379) insert into student1 values(5,1347) --两个表建好了,大概按照你的意思,不知道是不是这种情况 go select * from student1; select * from teacher1; --查询所有数据 go --在student1表(外键表)中加入一组数据 insert into student1 values(6,1234) --失败了,因为外键表中外键的值必须是引用主键表中关联的主键的值 --也就是外键约束,或称参照完整性 --外键约束是约束外键的数据的取值的 insert into teacher1 values(1234,'童川') --然后在teacher1表(主键表)中加一组数据 --成功,外键约束对主键表被引用的主键无影响 insert into student1 values(6,1234) --成功,验证了失败的原因 go select * from student1; select * from teacher1; --再次查询所有数据 --on update cascade 这个东西我也没学过,百度了一下,大概明白了 go update teacher1 set t_id = t_id + 10000 where t_name in('童川') --成功 update student1 set t_id = t_id + 10000 --提示与外键约束发生冲突 go select * from student1; select * from teacher1; --看到了么?学生表中引用'童川'老师的数据的一列数据中t_id的值也随之改变 --我想这就是on update cascade的作用 --主键的值改变后,引用它的外键的值也随之改变 --最后顺便一提,童川是我的室友,恶搞一下他,嘿嘿···
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯