insert into 语句的四种写法

insert into 语句的四种写法方式1、INSERTINTOt1(field1,field2)VALUE(v001,v002);明确只插入一条Value方式2、INSERTINTOt1(field1,field2)VALUES(v101,v102),(v201,v202),(v301,v302),(v401,v402);在插入批量数据时方式2优于方式1.方式3.1、…

大家好,又见面了,我是你们的朋友全栈君。

方式1、 INSERT INTO t1(field1,field2) VALUE(v001,v002);           

 明确只插入一条Value

方式2、 INSERT INTO t1(field1,field2) VALUES(v101,v102),(v201,v202),(v301,v302),(v401,v402);

在插入批量数据时 方式2 优于 方式1.

【特注】当 id 为自增,即  id INT PRIMARY KEY AUTO_INCREMENT 时,执行 insert into 语句,需要将除 id 外的所有 field 列举出来(有没有感觉,好不方便,期待 mysql 提供一个简便方法来标记这种情况,因为在早测试数据的时候,普遍会使用,而列举出除 id 外所有字段,真有麻烦感)。

方式3.1、  INSERT INTO t2(field1,field2) SELECT colm1,colm2 FROM t1 WHERE ……

这里简单说一下,由于可以指定插入到 talbe2 中的列,以及可以通过相对较复杂的查询语句进行数据源获取,可能使用起来会更加的灵活一些,但我们也必须注意,我们在指定目标表的列时,一定要将所有非空列都填上,否则将无法进行数据插入,还有一点比较容易出错的地方就是,当我们写成如下简写格式:

方式3.2、  INSERT INTO t2 SELECT colm1,colm2,…… FROM t1

此时,我们如果略掉了目标表的列的话,则默认会对目标表的全部列进行数据插入,且 SELECT 后面的列的顺序 必须和目标表中的列的定义顺序完全一致 才能完成正确的数据插入,这是一个很容易被忽略的地方,值得注意。

【特注】由于插入操作只粗略地对表 t1、t2 按顺序对所有字段进行 [数据类型] 检查,不对 [字段名] 核对。这是把双刃剑,既提供便利,又存在可能因粗心造成风险。在使用中,需确认顺序,使用中建议使用 [方式3.1] 或 [方式4].

方式4、INSERT INTO 表名 SET 列名1 = 列值1,列名2=列值2,…;(博友提供,感谢)

不过用INSERT INTO SET这种方式,不能批量增加数据。(参考:mysql数据库中插入数据INSERT INTO SET的优势

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/159651.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • ireport表达式判断是否为0_init函数

    ireport表达式判断是否为0_init函数求助大佬iReportException怎么写??表达式分别如下:Excel表中有转基因和过敏原两列如下图:要求:最后的效果图表达式分别如下:这个是用0、1表示,1则是,0则无,然后以打钩的形式放在方框中$F{转基因}.toString().compareTo(newString(“1”))0?“√”:””$F{过敏原}“1”?“√”:””Excel表中有转基因和过敏原…

  • windows远程桌面,停留在“请稍后”页面[通俗易懂]

    windows远程桌面,停留在“请稍后”页面[通俗易懂]最近登陆局域网远程桌面,输入账号密码,停留在“请稍后”页面,卡半天也进不去。我的解决方法:1.注销其他远程登陆帐户。2.重新连接远程桌面。

    2022年10月24日
  • android apk获取系统签名[通俗易懂]

    android apk获取系统签名[通俗易懂]android打包系统APK一准备材料1signapk包1)通常在源码环境的build\tools\signapk目录下,包含如下文件:拿到上述文件之后还不能直接签名,需要将signapk编译,生成一个signapk.jar包,步骤如下:把signapk放到E盘(E:\signapk),命令行cd到此目录下(signapk.java代码目录)下执行:E:\signapk>…

  • poe交换机和普通交换机区别_交换机可以接交换机吗

    poe交换机和普通交换机区别_交换机可以接交换机吗一个完整的POE系统包括供电端设备(PSE,PowerSourcingEquipment)和受电端设备(PD,PowerDevice)两部分,POE交换机为PSE设备的一种。PSE设备是为以太网客户端设备供电的设备,同时也是整个POE以太网供电过程的管理者。而PD设备是接受供电的PSE负载,即POE系统的客户端。POE交换机和普通交换机哪里不同?POE交换机和普通交换机有什么不同,P…

  • 智能小车设计方案_智能小车研究目的及意义

    智能小车设计方案_智能小车研究目的及意义简介智能循迹小车是基于自动引导机器人系统,用以实现小车自动识别路线,以及选择正确的路线。智能循迹小车是一个运用传感器、单片机、电机驱动及自动控制等技术来实现按照预先设定的模式下,不受人为管理时能够自动实现循迹导航的高新科技。方案论证系统总体方案一、小车控制系统的结构框图二、程序流程框图三、循迹原理的简单描述循迹是指小车在白色地板上,循黑线行走通常采取的方法是红外探测法,红外探测法即利用红外线光遇到白色物体表面具有不同的反射性质的特点,在小车行驶过程…

    2022年10月18日
  • Apache配置虚拟主机出现forbidden的问题

    Apache配置虚拟主机出现forbidden的问题1.httpd.conf中配置过网站根目录该配置文件的250行左右,修改了根目录①httpd.conf配置文件中这两处都要修改②httpd-vhosts.conf配置文件中检查DocumentRoot是不是有默认值,有的话要修改根目录③重启Apache服务,清空浏览器缓存2.httpd-vhosts.conf中配置过虚拟主机httpd.conf配置中文件中找到VirtualHost,…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号