千锋教育-做有情怀、有良心、有品质的职业教育机构

400-811-9990
手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

上海
  • 北京
  • 郑州
  • 武汉
  • 成都
  • 西安
  • 沈阳
  • 广州
  • 南京
  • 深圳
  • 大连
  • 青岛
  • 杭州
  • 重庆
当前位置:郑州千锋IT培训  >  技术干货  >  mysql中,replace into后怎么连接where子句?

mysql中,replace into后怎么连接where子句?

来源:千锋教育
发布人:xqq
时间: 2023-10-21 06:50:48

一、mysql中,replace into后怎么连接where子句

REPLACE INTO 语法完全 与 INSERT INTO 一样工作,只是在新行已插入。

这意味着您应该将主键添加到被替换的值中,而不是 WHERE 子句以限制更新。

REPLACE INTO myTable (

  myPrimaryKey,

  myColumn1,

  myColumn2

) VALUES (

  100,

  ‘value1’,

  ‘value2’

);

…将提供与…相同的结果

UPDATE myTable

SET myColumn1 = ‘value1’, myColumn2 = ‘value2’

WHERE myPrimaryKey = 100;

…或更准确地说:

DELETE FROM myTable WHERE myPrimaryKey = 100;

INSERT INTO myTable(

  myPrimaryKey,

  myColumn1,

  myColumn2

) VALUES (

  100,

  ‘value1’,

  ‘value2’

);

replace into语句会根据少数键/主键删除原有的一条记录, 并且插入一条新的记录来替换原记录。如果没有表不存在少数键/主键 或者 插入的数据少数键/主键没有重复的,那么会新增一条记录。

新建一个test表,三个字段,uid,name,mobile, id是自增的主键,mobile是少数索引;

create table test(

    uid int(11) NOT NULL AUTO_INCREMENT,

    name varchar(50),

    mobile varchar(11) unique,

    PRIMARY KEY (uid)

);

#插入两条数据进行演示

insert into  test(name,mobile) VALUES (‘张三’,’135′);

insert into  test(name,mobile) VALUES (‘李四’,’137′);

延伸阅读:

二、为什么要持久化连接

这和 web 服务器的工作方式有关。web 服务器可以通过三种方法来利用 PHP 生成 web 页面。

名列前茅种方法是将 PHP 自以为 CGI“包装器”用作一个单独运行的语言解释器(CGI Wapper)。当以这种方法运行时,PHP 会为向 web 服务器的每个 PHP 页面请求创建并销毁 PHP 解释器的时候实例。由于其会随每个请求的结束而销毁,因此其获取的任何资源(例如指向 SQL 数据库服务器的链接)都会在销毁时关闭。在这种情况下,不会从使用持久连接中获得任何好处——因为根本不会持久。

第二,也是最流行的方法是把 PHP 用作多进程 web 服务器的一个模块,这种方法目前只适用于 Apache。多进程的服务器通常有一个父进程和一组子进程协调运行,子进程负责提供网页的工作。每当接收达到客户端提出请求时,该请求会传递给尚未给其它客户端提供服务的某个子进程。这也就是说当相同的客户端第二次向服务端发出请求时,它将有可能由与名列前茅次不同的某个子进程提供服务。在开启了一个持久连接后,所有请求 SQL 服务的后继页面都能够重用与 SQL 服务器建立的相同连接。

最后一种方法是将 PHP 用作多线程 web 服务器的插件。目前 PHP 支持 WSAPI 和 NSAPI(在 Windows 上),允许 PHP 作为 Netscape FastTrack(iPlanet)、Microsoft 的 Internet Information Server (IIS) 和 O’Reilly 的 WebSite Pro 等多线程服务器的插件使用。该行为与前面描述的多过程模型相同。

声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。

猜你喜欢LIKE

忘记linux命令怎么办?

2023-10-21

史上最牛linux命令?

2023-10-21

NoteExpress数据库怎么重命名?

2023-10-21

最新文章NEW

linux命令内容导出?

2023-10-21

关于linux命令语句?

2023-10-21

linux配置全局命令?

2023-10-21

相关推荐HOT

更多>>

快速通道 更多>>

最新开班信息 更多>>

网友热搜 更多>>