[转]关于oracle sql语句查询时表名和字段名要加双引号的问题
- oracle初学者一般会遇到这个问题。
-
用navicat可视化创建了表,可是就是不能查到!后来发现②语句可以查询到
①select * from user;
但是,我们如果给user加上双引号就可以查到了!
②select * from "user";
难道oracle跟mysql等不同,查询时候一定要加双引号?那这样不是很麻烦!于是经过查找资料得出如下结论:
1、oracle表和字段是有大小写的区别。oracle默认是大写,如果我们用双引号括起来的就区分大小写,如果没有,系统会自动转成大写。
2、我们在使用navicat使用可视化创建数据库时候,navicat自动给我们加上了“”。这样我们在创建数据库时实际的代码是这样的:(通过到处sql语句的文件,这样就不难理解我们为什么找不到表了。)
12345DROPTABLE"ROOT"."user";CREATETABLE"ROOT"."user"("userid"NUMBER(2)NOTNULL)-------到这里,我想那些总是用可视化来创建表和字段的人该吐槽navicat了。3、我用sql语句进行创建表和字段呢?
①不加双引号创建变:12345678910111213141516CREATETABLE"ROOT".personal_user_table (personal_id NUMBER(10)NOTNULL,login_name VARCHAR2(20 BYTE)NOTNULL,login_password VARCHAR2(20 BYTE)NOTNULL,register_timeDATENOTNULL,fullname VARCHAR2(20 BYTE)NOTNULL,sexCHAR(1 BYTE)NULL,id_cardCHAR(18 BYTE)NULL,email VARCHAR2(30 BYTE)NULL,telCHAR(11 BYTE)NULL,address VARCHAR2(64 BYTE)NULL,work_units VARCHAR2(64 BYTE)NULL,monthly_income NUMBER(8,2)NULL,bank_accountCHAR(20 BYTE)NULL,credit_rating NUMBER(1)NULL)结果是查询正常:

②加双引号,跟我们使用navicat可视化操作的结果一样:
12345678910111213141516CREATETABLE"ROOT"."personal_user_table"("personal_id"NUMBER(10)NOTNULL,"login_name"VARCHAR2(20 BYTE)NOTNULL,"login_password"VARCHAR2(20 BYTE)NOTNULL,"register_time"DATENOTNULL,"fullname"VARCHAR2(20 BYTE)NOTNULL,"sex"CHAR(1 BYTE)NULL,"id_card"CHAR(18 BYTE)NULL,"email"VARCHAR2(30 BYTE)NULL,"tel"CHAR(11 BYTE)NULL,"address"VARCHAR2(64 BYTE)NULL,"work_units"VARCHAR2(64 BYTE)NULL,"monthly_income"NUMBER(8,2)NULL,"bank_account"CHAR(20 BYTE)NULL,"credit_rating"NUMBER(1)NULL)结果如下:

因此建议:
1.建议我们的可视化操作者还是养成手写sql语句的习惯,我们在创建的时候就不要使用了双引号!这样我们就可以到达像mysql等一样不区分大小写了。
3、比较笨的方法是数据表名字大写,这样也可以避免此问题
原文链接
关于oracle sql语句查询时表名和字段名要加双引号的问题
[转]关于oracle sql语句查询时表名和字段名要加双引号的问题的更多相关文章
- 关于oracle sql语句查询时 表名和字段名要加双引號的问题具体解释
作为oracle的刚開始学习的人相信大家一定会遇到这个问题.如图: 明明就是navicat可视化创建了表,但是就是不能查到!这个为什么呢? select * ...
- 关于oracle sql语句查询时表名和字段名要加双引号的问题详解
转自:http://www.2cto.com/database/201504/387184.html 作为oracle的初学者相信大家一定会遇到这个问题,如图: 明明就是navicat可视化创建了表, ...
- SQL语句查询某表的所有字段及数据类型
SQL语句查询某表的所有字段及数据类型 SELECT name AS column_name , TYPE_NAME(system_type_id) AS column_type , max_leng ...
- Oracle中如何查询一个表的所有字段名和数据类型
Oracle中如何查询一个表的所有字段名和数据类型 查询语法 select A.COLUMN_NAME,A.DATA_TYPE from user_tab_columns A where TABLE_ ...
- Navicat查询哪些表有指定字段名
通常需要查询某个字段来自于哪张表,在navicat中没有直接查哪些表有指定字段名的功能,只能用sql来查. 1.(按字段名查表)查询哪些表有指定字段名(比如查字段名article_id)的SQL: S ...
- sql语句查询数据库表结构信息
开发中经常用到查询指定表及其字段的信息,以下是我整理的SQL语句查询方法,供自己平时使用也提供给大家参考! 1.适用MS SQL SERVER: SELECT 表名 = then d.name els ...
- 在oracle中操作表及字段注释,查询一个表的所有字段名以及属性和约束
1.查询表注释 SELECT * FROM USER_TAB_COMMENTS; 三列:TABLE_NAME,TABLE_TYPE,COMMENTS 2.查询字段注释 SELECT * FROM US ...
- 使用一条sql语句查询多表的总数
SELECT sum(列名1) 列名1,sum(列名2) 列名2,sum(列名3) 列名3 FROM ( SELECT count(*) 列名1, 列名2, 列名3 FROM 表1 -- WHERE ...
- SQL语句查询时防止SQL语句注入的方法之一
1.传参时有可能出现SQL语句注入 StringBuffer sb = new StringBuffer(); if(StringUtils.isNotBlank(areaCode)) { sb.ap ...
随机推荐
- vue 构建项目 文件引入
1.vue引用依赖文件. 举例:axios 先安装 axios.如果直接安装 vue-axios 会报错 npm install axios npm install --save axios vue ...
- Android 底部导航栏实现一 Fragment-replace
[效果](这里下载的软件收费的试用有水印) [推荐]这里推荐一个图标网http://iconfont.cn/.以上图标来自此图标网 [项目结构] [步骤] ①创建布局文件,写底部导航栏 <?xm ...
- NoHttp封装--06 NoHttp之队列、队列优先级
public class Main { /** * 程序入口 */ public void start() { // 第一种,先进先出的队列 // YolandaLinkedQueue queue = ...
- 喜闻乐见-Android LaunchMode
launchMode,通俗点说,就是定义了Activity应该如何被launch的.那么这几种模式的区别以及应用场景,会有何不同呢?谷歌是基于什么原因设计这几种模式的呢?这几种模式背后的工作原理是什么 ...
- MySQL状态变量Aborted_connects与Aborted_clients浅析
关于MySQL的状态变量Aborted_clients & Aborted_connects分别代表的意义,以及哪些情况或因素会导致这些状态变量变化呢?下文通过实验测试来验证一下,首先我们来看 ...
- RHEL下SendMail修改发邮箱地址
RHEL(Oracle Linxu/CentOS)系统下,如果使用sendmail发送邮件,如果不特殊设置,一般发件箱地址为user@hostname,例如,hostname为DB-Server.lo ...
- Django之--网页展示Hello World!
上一篇:Django的安装启动完毕后,本文来试下hello world的效果~ 好吧,又开始了喜闻乐见的Hello World环节,本文使用Linux环境演示(Windows太麻烦). [root@p ...
- c#qq发邮件
// SMTP(Simple Mail Transport Protocol)简单邮件传输协议.在.NET Frameword类库中提供SmtpClient类(System.Net.Mail),她提供 ...
- JavaScript -- 时光流逝(十二):DOM -- Element 对象
JavaScript -- 知识点回顾篇(十二):DOM -- Element 对象 (1) element.accessKey: 设置或返回accesskey一个元素,使用 Alt + 指定快捷键 ...
- LeetCode算法题-Happy Number(Java实现)
这是悦乐书的第188次更新,第190篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第47题(顺位题号是202).编写算法以确定数字是否"幸福". 幸福 ...