今天写了一个小的SQL语句类似下面的这句:

UPDATE A
SET ID=B.ID
FROM A,B
WHERE A.NAME=B.NAME

在执行时居然报了“ORA-00933: SQL command not properly ended”这个错误提示信息,SQL语句如此简单,不应该出现错误的!但是事实上确实报错了,仔细看了下没发现那里有问题,百度了一下,出现这个错误的情况还是挺多的,当抛出此错误提示信息,代表着SQL语句本身就是有问题的!(ORA-00933:SQL命令没有正确的结束)比如:

1:可能SQL语句中关键字前后缺少空格

2:Oracle 给表起别名时,直接在表名的后面空格别名就可以,不需要AS

3:SQL 语句中缺少关键字或者多了某个关键字,比如:AND

4:SQL 语句中缺少关键字或者多了某个标点符号,比如:,

5:数据库不同的版本或不同的数据库支持的SQL的语法规则是不一样的,一句SQL语句在一个数据中是正确的在另一个数据库中未必也正确

后来发现,这个错误是很低级的,为了加深印象,在这里特记录一下!在ORACLE数据库中不支持我上面的这种修改的写法,不能如此使用FROM这个关键字,应该这样来写才对(如下所示:)!

UPDATE A
SET ID=(
SELECT ID
FROM B
WHERE A.NAME=B.NAME
)

参考:

1:http://stackoverflow.com/questions/8940471/sql-error-ora-00933-sql-command-not-properly-ended

2:http://docs.oracle.com/cd/E11882_01/server.112/e26088/statements_10008.htm#SQLRF01708

ORA-00933: SQL command not properly ended的更多相关文章

  1. SQL[Err] ORA-00933: SQL command not properly ended

    原文链接:https://www.cnblogs.com/godtrue/p/3784526.html 1:可能SQL语句中关键字前后缺少空格 2:Oracle 给表起别名时,直接在表名的后面空格别名 ...

  2. 【转】Win7 64bit Oracle 11g 使用PL/SQL Developer 连接时提示“SQL*Net not properly installed”

    转载:http://www.cnblogs.com/xihuaodc/p/3189257.html  因为之前的Oracle不能用了,所以重新安装了64位的Oracle,安装一路正常 完了之后安装了P ...

  3. pl/sql command window 初步接触

    pl/sql command window基本操作 PL/SQL Developer应用两年了,今天第一次应用command window. command window类似于sqlplus窗口: 1 ...

  4. Yii2 三层设计模式:SQL Command、Query builder、Active Record(ORM)

    用Yii2也有一段时间了,发现Yii2 Framework对Database的操作有非常良好的结构和弹性. 接下来介绍三种数据库操作方式. SQL Command Level: // Get DB c ...

  5. [Ora]-1309. OCI is not properly installed on this machine (NOE1/INIT)

    When the Oracle client software has not been properly installed, you will get an exception when tryi ...

  6. Oracle 在64位机器上使用plSQL连接Oracle的问题(SQL*Net not properly installed)

    问题: 在64位机器上了64位的oracle客户端. 然后装上PL/SQL Developer,但是连接oracle老报这个错: Initialization error      SQL*Net n ...

  7. Oracle SQL command slash

    We know that there is "commit" in oracle to submit all data in the session and used very c ...

  8. Sql/Plus连接Oracle时候出现sql*net not properly installed 解决办法

    在PLSQL Developer选择Tools > Preferences > options > 下的如图所示:"Oracle Home" and " ...

  9. PL/SQL无法连接,提示:pl/sql initialization error sql*net not properly installed

    各种找资料都不行,最后还是在公司的线上环境中去找不同点配置好的.不多说了,就做了如下配置: 服务器环境是:windows server 2008 64位操作系统 1.电脑系统环境变量PATH增加:x: ...

随机推荐

  1. c++中字符串处理函数

    c++11中提供了to_string函数,定义在string中, 重载了一大片, std::string to_string( int value ); () (since C++) std::str ...

  2. MappedByteBuffer读写文件

    一. MappedByteBuffer java把文件映射到内存中,避免堆内存产生大对象引起full gc.mappedByteBuffer的读写速度都要超过堆内读写文件的速度 public clas ...

  3. Maven工程JAR包关联源码

    注意看上面的图,勾选了"Download Artifact Sources"和“Download Artifact JavaDoc”以后,Maven便会自动将Manven工程中的所 ...

  4. Blockchain概述--转

    编者按:著名投资人 Fred Wilson 的同事 Joel Monegro 近日参加了纽约比特币 workshop HackBit聚会,其间他们讨论了比特币式的思维方式对未来十年世界的影响,而这种影 ...

  5. ARM NEON 编程系列2 - 基本指令集

    ARM NEON 编程系列2 - 基本指令集 前言 本系列博文用于介绍ARM CPU下NEON指令优化. 博文github地址:github 相关代码github地址:github NEON指令集 主 ...

  6. hibernate级联与反向

    cascade:设置本表与关联表之间的级联操作,如:设置为save-update,则插入或更新对象时同时保存或更新另一端的表,但不会产生关联关系数据,除非inverse为false. inverse: ...

  7. Report_客制化Excel报表中的XLS标记(案例)

    2014-06-06 Created By BaoXinjian

  8. NeHe OpenGL教程 第十三课:图像字体

    转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...

  9. java版的YUI3 combine服务-Combo Handler

    YUI3中,为了避免js文件过大,各个功能模块是拆分的.它有一个“种子”的概念:先下载一个小的核心的js文件到浏览器端,再通过这个小的js文件去加载其它所需的模块. 这种按需加载虽然解决了单个js过大 ...

  10. 图片--android 图片占用内存与什么有关

    原文链接:http://blog.csdn.net/zjl5211314/article/details/7041813 在开发手机应用的时候,内存是有限的,那使用的时候,就要合理的运用和释放. 那么 ...