易截截图软件、单文件、免安装、纯绿色、仅160KB

MySQL replace into 用法


在向表中插入数据的时候,经常遇到这样的情况:1. 首先判断数据是否存在; 2. 如果不存在,则插入;3.如果存在,则更新。
在 SQL Server 中可以这样处理:
if not exists (select 1 from t where id = 1) insert into t(id, update_time) values(1, getdate()) else update t set update_time = getdate() where id = 1
那么 MySQL 中如何实现这样的逻辑呢?别着急!MySQL 中有更简单的方法: replace into
replace into t(id, update_time) values(1, now());

replace into t(id, update_time) select 1, now();
replace into 跟 insert 功能类似,不同点在于:replace into 首先尝试插入数据到表中, 1. 如果发现表中已经有此行数据(根据主键或者唯一索引判断)则先删除此行数据,然后插入新的数据。 2. 否则,直接插入新数据。
要注意的是:插入数据的表必须有主键或者是唯一索引!否则的话,replace into 会直接插入数据,这将导致表中出现重复的数据。
MySQL replace into 有三种形式:
1. replace into tbl_name(col_name, ...) values(...) 2. replace into tbl_name(col_name, ...) select ... 3. replace into tbl_name set col_name=value, ...
前两种形式用的多些。其中 “into” 关键字可以省略,不过最好加上 “into”,这样意思更加直观。另外,对于那些没有给予值的列,MySQL 将自动为这些列赋上默认值。


相关文档:

升级mysql数据库的方法

升级mysql数据库的方法:
1.         下载安装介质mysql-essential-5.1.46-win32.msi
可以到官网http://www.mysql.com/click.php?e=35166或其他网站去下载;
2.         备份mysql的数据;
运行cmd打开命令提示符,进入到mysql软件的 ......

通过SAS fastload Mysql table 到 Teradata

/*clear fastload tables*/
%let gdw_dir =( user="XXXXX" password="XXXXX" database="XXXXX" tdpid="XXXXX");
proc sql;
connect to teradata as TD &gdw_dir;
execute (drop table STG_MYSQL_lkp_verticals)
by TD;
execute (commit) ......

MySql命令大全

1. 连接mysql:
mysqlbinmysql -h主机地址 -u 用户名 -p 用户密码
2.退出mysql:exit
3. 修改密码:
mysqlbinmysqladmin -uroot -p(oldpassword) password newpassword
4.增加用户:
添加一个用户test1 密码为ABC;让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入
mysq ......

Apache+Mysql+Php安装文档(rpm版本)

  1.mysql
  在如下页面下载mysql的for linux rpm包
   http://www.mysql.com/downloads/down...3.52-1.i386.rpm ;
   http://www.mysql.com/downloads/down...3.52-1.i386.rpm ;
  存至/home/tmp目录
  命令列表: 
  cd /home/tmp
  rpm -ivh MySQL-3.23.52-1.i386.rpm #安装mysql serv ......

JDBC 简单的Mysql连接

/*演示一个JDBC程序,从Mysql的LMD数据库中读出表admin的一个信息*/
import java.sql.*;
public class TestMysqlConnection {
    public static void main(String[] args) {
        Connection conn = null;
        Statement stmt = ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号