PHP使用query方法插入主键重复值,不会提示出错!!!
<?php
error_reporting(1); $db=new mysqli('localhost','root','xxxx','zjjfz');
$db->query('SET CHARACTER SET utf8');
echo mysql_error();
$query="insert into tab_room (room_id,room_name,software) value (1,'qw12','12qwee');";
if($db->query($query)){
echo '插入完成'.'<br>';
}else{
echo mysql_errno().'<br>';
echo mysql_error().'<br>';
}
$db->close();
?>
--
-- 表的结构 `tab_room`
--CREATE TABLE `tab_room` (
`room_id` int(11) NOT NULL auto_increment COMMENT '机房编号',
`room_name` varchar(20) NOT NULL COMMENT '机房名称',
`software` varchar(1500) default NULL COMMENT '软件表',
`rows` char(20) NOT NULL default '12,14,14,14,14' COMMENT '排及排机数',
`staff_id` int(4) default NULL COMMENT '负责人工号',
PRIMARY KEY (`room_id`),
UNIQUE KEY `room_name` (`room_name`),
KEY `staff_id` (`staff_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=6 ;--
-- 导出表中的数据 `tab_room`
--INSERT INTO `tab_room` (`room_id`, `room_name`, `software`, `rows`, `staff_id`) VALUES
(1, 'werfwhfgh', '很多软件', '12,14,14,14,14', NULL),
在我调试平台上,以上代码没有提示出错。
是不是我的PHP或MYSQL设置有问题!!!
<?php
error_reporting(1); $db=new mysqli('localhost','root','xxxx','zjjfz');
$db->query('SET CHARACTER SET utf8');
echo mysql_error();
$query="insert into tab_room (room_id,room_name,software) value (1,'qw12','12qwee');";
if($db->query($query)){
echo '插入完成'.'<br>';
}else{
echo mysql_errno().'<br>';
echo mysql_error().'<br>';
}
$db->close();
?>
--
-- 表的结构 `tab_room`
--CREATE TABLE `tab_room` (
`room_id` int(11) NOT NULL auto_increment COMMENT '机房编号',
`room_name` varchar(20) NOT NULL COMMENT '机房名称',
`software` varchar(1500) default NULL COMMENT '软件表',
`rows` char(20) NOT NULL default '12,14,14,14,14' COMMENT '排及排机数',
`staff_id` int(4) default NULL COMMENT '负责人工号',
PRIMARY KEY (`room_id`),
UNIQUE KEY `room_name` (`room_name`),
KEY `staff_id` (`staff_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=6 ;--
-- 导出表中的数据 `tab_room`
--INSERT INTO `tab_room` (`room_id`, `room_name`, `software`, `rows`, `staff_id`) VALUES
(1, 'werfwhfgh', '很多软件', '12,14,14,14,14', NULL),
在我调试平台上,以上代码没有提示出错。
是不是我的PHP或MYSQL设置有问题!!!
解决方案 »
- PEAR中的HTML_QuickForm类
- 关于二级域名外文件夹写权限
- 请问这个是什么PHP加密????
- SMARTY问题,
- 学习php所遇到的问题?
- 招聘php人员
- Internet Explorer 无法打开Internet站点http://www.abc...com 已终止操作
- 急 一个搜索中文的问题(解决可散全部分 640)
- 请问各位大侠有谁知道润年的算法,
- PHP安装文件的两种形式(PHP 4.3.0 installer、PHP 4.3.0 zip package)哪种更好?应该在什么情况下选择什么?不明白PHP 4.3.0 installer
- 请问,有什么方法能够更好的展示include层次吗?
- jqeury ajax 返回数据,如何写进一个XML文件里?
$db=mysql_connect('localhost','root','xxxx');
mysql_select_db("zjjfz",$db);
mysql_query("set names 'utf8'");
$sql="insert into tab_room (room_id,room_name,software) value (1,'qw12','12qwee')";
$result=mysql_query($sql,$db);
if(mysql_errno()){
echo mysql_errno().'<br>';
echo mysql_error().'<br>';
}
如果我用上面的代码就会正常提示出错!!
1062
Duplicate entry '1' for key 1
是不是我面向对无象的获取错误信息的 函数 用错了!!!
面向对象的获取错误信息跟错误编号是使用mysqli对象的属性echo $db->errno; //$db为mysqli对象
echo $db->error;