大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
MySQL Update Set 更新数据
创新互联网站建设公司是一家服务多年做网站建设策划设计制作的公司,为广大用户提供了成都网站设计、成都网站建设,成都网站设计,1元广告,成都做网站选创新互联,贴合企业需求,高性价比,满足客户不同层次的需求一站式服务欢迎致电。
UPDATE 更新
UPDATE SET 语法用于修改更新数据表中的数据。
语法:
UPDATE tb_name SET column1 = new_value1,column2 = new_value2,… WHERE definition
该语法将数据表中符合 WHERE 条件的记录中的 column1 的值更新为 new_value1,column2 的值更新为 new_value2 ,以此类推。如果省略 WHERE 条件,则会将表中所有记录的 column 值进行更新。
例子:
?php
$conn = @mysql_connect("localhost","root","root123");
if (!$conn){
die("连接数据库失败:" . mysql_error());
}
mysql_select_db("test", $conn);
mysql_query("set names 'gbk'");
$sql = "UPDATE user SET email = 'xiaoming@163点抗 ' WHERE username = '小明'";
if(mysql_query($sql,$conn)){
echo "更新数据成功!";
} else {
echo "更新数据失败:".mysql_error();
}
?
更新前数据:
uid username password email regdate
1 admin b7e591c246d010bb2ccd77d52490c85e admin@5idev点抗 1277992339
2 小明 a193686a53e4de85ee3f2ff0576adf01 xiao@163点抗 1278063917
3 Jack 0193686a35e4de85ee3f2ff0567adf49 jack@gmail点抗 1278061380
4 小王 e10adc3949ba59abbe56e057f20f883e 12345@163点抗 1289632955
例子将 user 表中 username 为 小明 的 email 修改为 xiaoming@163点抗 。
更新后数据:
uid username password email regdate
1 admin b7e591c246d010bb2ccd77d52490c85e admin@5idev点抗 1277992339
2 小明 a193686a53e4de85ee3f2ff0576adf01 xiaoming@163点抗 1278063917
3 Jack 0193686a35e4de85ee3f2ff0567adf49 jack@gmail点抗 1278061380
4 小王 e10adc3949ba59abbe56e057f20f883e 12345@163点抗 1289632955
UPDATE 表达式
UPDATE 语法允许 SET 后面跟表达式。
例子 1 :
UPDATE article SET pv = pv+1 WHERE id = 123
该例子让 id 为 123 的文章在被点击阅读的时候点击量加 1 。
例子 2 :
UPDATE persondata SET age = age*2, age = age+1
该例子 SET 后面跟了两个表达式:age = age*2(年龄加倍),age = age+1(再加 1 )。这种多个表达式的情况,是按照从左往右顺序执行的。
楼主贴出的代码是主要代码不是完整代码,以下是对你贴出代码的修改,接收数组并批量更新
接收数据格式形如:
array(
0=array(
'id' = 1,
'title'= '标题1'
'url'= '...'
),
1=array(
'id' = 1,
'title'= '标题1'
'url'= '...'
),
)
注意在原来的基础上加了更新条件id,不加的话是会更新全部的。
A页面代码:
?php
$exec="select * from focusimg";
$result = mysql_query($exec,$link);
$i=0;
while($pt=mysql_fetch_array($result)){
?
tr onmouseover="this.className='admTr'" onmouseout="this.className=''"
td width="17%" align="right"标题?php echo $pt['id']; ?:input name="?php echo "focusimg[$i][id]"; ?" value="?php echo $pt['id']; ?" type="hidden"//td
tdinput name="?php echo "focusimg[$i][title]"; ?" type="text" id="textfield" value="?php echo $pt['title'];?" size="30" //td
td width="17%" align="right"链接?php echo $pt['id']; ?:/td
tdinput name="?php echo "focusimg[$i][url]"; ?" type="text" id="textfield" value="?php echo $pt['url'];?" size="30" / /td
/tr
?php
$i++;
};
?
B页面代码:
?php
include 'conn.php';
$focusimg=$_POST['focusimg'];
foreach($focusimg as $k=$v) {
$exec="update chips set title='{$v[title]}',url='{$v[url]}' where id='{$v[id]}'";
mysql_query($exec, $link);
}
mysql_close($link);
echo "edit OK!";
?
1、先给你原来的数据表增加一个字段,字段名为md5,类型int,然后运行一个sql语句:
sql语句:update xxx set md5=0 将md5这个字段值变成0,即表示该数据未MD5保存。
2、把这段代码保存为rewrite.php并把数据库名修改成你对应的数据库,然后运行。最好先把你的数据库导出到本地的数据库,然后在本地亲自测试以下这段代码的效果,之后再进行替换。
?php
/*读取md5为0的前30条数据,由于考虑到PHP有个30秒超时的内置,所以一次更新30条,也可以大大降低对数据库的负担。*/
$sql=mysql_query("select id,password from XXX where md5=0 order by id desc limit 0,30");
$num=mysql_num_rows($sql);
if($num==0){
echo "所有MD5密码替换完毕。"; //如果数据库里面所有md5=0的记录都变成了md5=1,则为修改完毕。
exit();
}else{
while($row=mysql_fetch_array($sql)){
$md5_pwd=md5($row['password']); //获取原密码,进行MD5化。
$query=mysql_query("update XXX set md5=1,password='".$md5_pwd."' where id=".$row['id'].""); //将该条数据进行更改,把原密码改成MD5加密后的,并把md5值变成1,表示已经该条数据已经MD5加密
unset($query);
}
mysql_free_result($sql);
unset($sql,$row);
echo "meta http-equiv=\"refresh\" content=\"0;url=rewrite.php\""; //该30条记录转化完毕,继续跳到这个页面执行,一直循环到替换结束。
exit();
}
mysql_close();
?
//完成你的问题需要先假设几个变量//传值的id$aId = $_GET['id'] //要修改的新check内容$newCheck = "aaa";//要在表B中加的数值$addContent = "20";//第一个SQL更新表A中的check内容$sql1 = "UPDATE `A` SET `check`='".$check."' WHERE `aid`=".$_GET['id'];//第二个SQL获取表B中的相关信息$sql2 = "SELECT `B`.`bid`,`b`.`score` FROM `A`,`B` WHERE `A`.`name`=`B`.`name` AND `A`.`aid`=".$_GET['id'];//通过sql2可以得到所要修改的B表中的bid=$bid 和B表中该条记录的score内容=$score。$newScore = $score.$addContent;//更新表B中数据$sql3 = "UPDATE `B` SET `score`='".$newScore."' WHERE `bid`=".$bid;