zoukankan      html  css  js  c++  java
  • select into from 和 insert into select 的区别和用法及 SQL SELECT INTO 中Undeclared variable错误解决办法

        今天试了一下数据表中的数据备份到另一个空的数据表,然后使用了SQL SELECT INTO语句,然后提示Undeclared variable......错误,现在在这里做下总结并给出解决办法。

    应用程序在开发、测试过程中,经常会遇到需要表复制的情况,比如将一个表table1的数据的部分字段或全部字段复制到表table2中,这时候就是 SELECT INTO 或者 INSERT INTO SELECT 发挥奇妙无穷的作用的时候了。至于这两种方法的区别和用法,就请慢慢往下看吧!
     
    (1)INSERT INTO SELECT语句
     
    语句形式为: Insert into Table2(field1,field2,,field3,...) select key1,key2,,key3,... from Table1 
     
    这种用法要求被插入的表Table2必须存在,由于被插入的表Table2已经存在,所以我们除了插入源表Table1的字段外,还可以插入我们自定义的常量。

    (2)SELECT INTO FROM语句
     
    语句形式为: SELECT key1, key2, key3 into Table2 from Table1 
     
    这种用法要求被插入的表Table2不存在,因为在插入时会自动创建表Table2,并将Table1中指定字段数据复制到Table2中。

      然而今天在使用 SELECT INTO FROM 备份mysql数据表的时候,运行相关 sql 语句的时候却一直返回 [Err] 1327 - Undeclared variable: ...... 这种错误,实在不解,经过查询相关资料才知道,原来 mysql 数据库是不支持 SELECT INTO FROM 这种语句的,但是经过研究是可以通过另外一种变通的方法解决这个问题的,下面就来说说解决这个错误的办法吧!

      进过搜索相关资料以及实验结果证实,可以使用

    1 Create table Table2 (Select * from Table1);

      这种语句代替

    1 SELECT key1, key2, key3 into Table2 from Table1;
  • 相关阅读:
    Selenium中解决输入法导致sendKeys输入内容与预期不一致的问题
    java代码中启动exe程序最简单的方法
    安装node.js
    安装MongoDB流程。
    阿里云RocketMQ定时/延迟消息队列实现
    Camunda工作流引擎简单入门
    因是子静坐养生汇编PDF下载-蒋维乔
    倪海厦天纪系列之天机道
    倪海厦天纪系列之地脉道
    张志顺老道长八部金刚功长寿功PDF下载
  • 原文地址:https://www.cnblogs.com/jacson/p/4686273.html
Copyright © 2011-2022 走看看