我这个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";
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的作用
--主键的值改变后,引用它的外键的值也随之改变
--最后顺便一提,童川是我的室友,恶搞一下他,嘿嘿···
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯