Oracle中的双引号与单引号
Oracle中的双引号与单引号
- 场景一:数据库对象名称
- Example 1:创建表空间
- Example 2:创建用户及授权
- Example 3:用户登录
- 场景二:用户密码
- 场景三:字段(列)名称
- 场景四:字段(列)的值
场景一:数据库对象名称
创建对象时,对象名称可以加双引号,不能加单引号。加双引号表示区分大小写,不加双引号表示默认大写。
Example 1:创建表空间
SQL> create tablespace omf_tbs1;
Tablespace created.SQL> create tablespace "omf_tbs2";
Tablespace created.SQL> select tablespace_name from dba_tablespaces;TABLESPACE_NAME
------------------------------
SYSTEM
SYSAUX
UNDOTBS1
TEMP
USERS
OMF_TBS1
omf_tbs2SQL> create tablespace 'omf_tbs3';
create tablespace 'omf_tbs3'*
ERROR at line 1:
ORA-02216: tablespace name expected
Example 2:创建用户及授权
SQL> create user miguel identified by "Xqc$689" default tablespace omf_tbs1;
User created.SQL> create user "pablo" identified by Milf377 default tablespace omf_tbs2;
create user "pablo" identified by Milf377 default tablespace omf_tbs2
*
ERROR at line 1:
ORA-00959: tablespace 'OMF_TBS2' does not existSQL> create user "pablo" identified by Milf377 default tablespace "omf_tbs2";
User created.SQL> select username from dba_users where username like 'MIGUEL';
USERNAME
--------------------------------------------------------------------------------
MIGUELSQL> select username from dba_users where username like 'pablo';
USERNAME
--------------------------------------------------------------------------------
pabloSQL> create user 'Phoebe' identified by "Pwd3457";
create user 'Phoebe' identified by "Pwd3457"*
ERROR at line 1:
ORA-01935: missing user or role name
给用户授权的情况与上面类似,大写的用户名可以加也可以不加双引号,小写的用户名要加双引号。但是不能给用户名加单引号。
SQL> grant create session to miguel;
Grant succeeded.SQL> grant resource,connect to "MIGUEL";
Grant succeeded.SQL> grant create session to pablo;
grant create session to pablo*
ERROR at line 1:
ORA-01917: user or role 'PABLO' does not existSQL> grant create session to "pablo";
Grant succeeded.SQL> grant resource,connect to 'pablo';
grant resource,connect to 'pablo'*
ERROR at line 1:
ORA-00987: missing or invalid username(s)
Example 3:用户登录
对于小写的用户名,登录时要加双引号。
SQL> conn miguel/Xqc$689
Connected.SQL> conn MIGUEL/Xqc$689
Connected.SQL> conn pablo/Milf377
ERROR:
ORA-01017: invalid username/password; logon deniedWarning: You are no longer connected to ORACLE.
SQL> conn "pablo"/Milf377
Connected.
使用SQLPlus在终端登录时,注意对用户名和密码中的特殊字符进行转义(比如引号、$
等)。
[oracle@oracledb ~]$ sqlplus miguel/Xqc$689ERROR:
ORA-01017: invalid username/password; logon denied[oracle@oracledb ~]$ sqlplus miguel/Xqc\$689 -- 这里$前有一个转义符\
Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0[oracle@oracledb ~]$ sqlplus "pablo"/Milf377ERROR:
ORA-01017: invalid username/password; logon denied[oracle@oracledb ~]$ sqlplus \"pablo\"/Milf377
Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.3.0.0.0
场景二:用户密码
创建用户时,密码可以也可以不加双引号。不管加不加双引号,密码都区分大小写。密码不能加单引号。
SQL> create user miguel identified by "Xqc$689" default tablespace omf_tbs1;
User created.SQL> create user "pablo" identified by Milf377 default tablespace "omf_tbs2";
User created.SQL> create user phoebe identified by 'Jojo666';
create user phoebe identified by 'Jojo666'*
ERROR at line 1:
ORA-00988: missing or invalid password(s)
场景三:字段(列)名称
对于列名称,不能加双引号;如果加了单引号,字段名称会被转化成纯字符串。
SQL> select tablespace_name from dba_tablespaces;
TABLESPACE_NAME
------------------------------
SYSTEM
SYSAUX
UNDOTBS1
TEMP
USERS
OMF_TBS1
omf_tbs27 rows selected.SQL> select "TBALESPACE_NAME" from dba_tablespaces;
select "TBALESPACE_NAME" from dba_tablespaces*
ERROR at line 1:
ORA-00904: "TBALESPACE_NAME": invalid identifierSQL> select 'TBALESAPCE_NAME' from dba_tablespaces;
'TBALESAPCE_NAME'
----------------
TBALESAPCE_NAME
TBALESAPCE_NAME
TBALESAPCE_NAME
TBALESAPCE_NAME
TBALESAPCE_NAME
TBALESAPCE_NAME
TBALESAPCE_NAME7 rows selected.SQL> select sysdate from dual;
SYSDATE
---------
12-JAN-23SQL> select "SYSDATE" from dual;
ERROR:
ORA-01741: illegal zero-length identifierSQL> select 'sysdate' from dual;
'SYSDATE'
---------
sysdate
场景四:字段(列)的值
对于字段的值,必须加单引号,并且区分大小写。
示例1
SQL> select username from dba_users where username like "MIGUEL";
select username from dba_users where username like "MIGUEL"*
ERROR at line 1:
ORA-00904: "MIGUEL": invalid identifierSQL> select username from dba_users where username like MIGUEL;
select username from dba_users where username like MIGUEL*
ERROR at line 1:
ORA-00904: "MIGUEL": invalid identifierSQL> select username from dba_users where username like 'MIGUEL';
USERNAME
--------------------------------------------------------------------------------
MIGUELSQL> select username from dba_users where username like 'pablo';
USERNAME
--------------------------------------------------------------------------------
pablo
示例2
SQL> select username from dba_users where username="pablo";
select username from dba_users where username="pablo"*
ERROR at line 1:
ORA-00904: "pablo": invalid identifierSQL> select username from dba_users where username=pablo;
select username from dba_users where username=pablo*
ERROR at line 1:
ORA-00904: "PABLO": invalid identifierSQL> select username from dba_users where username='pablo';
USERNAME
--------------------------------------------------------------------------------
pabloSQL> select username from dba_users where username='PABLO';
no rows selected
Oracle中的双引号与单引号相关推荐
- python打印转义双引号和单引号
项目场景: 字符将难以键入的字符编码为字符串.有各种"转义字符"可用于不同字符打印转义双引号和单引号. print("转义双引号") print("I ...
- python怎么输出双引号_Python如何实现在字符串里嵌入双引号或者单引号
两种方法实现: 1.在双引号前面加个转义符 \ ,即反斜杠.如"Hello \"W \"orld",会输出 Hello "W"orld 2. ...
- shell 编程中空格的使用,双引号,单引号,反引号
http://blog.csdn.net/panda19881/article/details/6626727 1.定义变量时, =号的两边不可以留空格. eg: gender=femal----ri ...
- Linux--Linux Shell 中的反引号,单引号,双引号
反引号位 (`) 位于键盘的Tab键的上方.1键的左方.注意与单引号(')位于Enter键的左方的区别. 在Linux中起着命令替换的作用.命令替换是指shell能够将一个命令的标准输出插在一个命令行 ...
- java中双引号和单引号_Java中的单引号和双引号之间有区别吗?
问题 Java中的单引号和双引号之间有区别吗? #1 热门回答(126 赞) 对于literalchar使用单引号,对于literalString使用双引号,如下所示: char c = 'a'; S ...
- 关于SQL语句中的双引号、单引号和
http://hi.baidu.com/snowkylin/blog/item/bf5316a94db802b7cb130cc6.html 同时在此文的基础上我在补充几个常用的方法: sql=&quo ...
- java中的双引号和单引号
在js中,单双引号不作区分,这导致我在java中产生了混淆. 在写一段判断某字符是否为空格的代码时,编译器报错,我才意识到是单引号用成了双引号. 关于java中的单双引号,需要注意以下几点: 1.ja ...
- Linux中反引号(` `)、单引号(‘ ‘)、双引号(“ “)、花括号({ })的解释
反引号(` `) 反引号里面的内容必须要是能执行的命令并且有输出信息,变量和命令都识别,并且会将反向单引号的内容当作命令执行后,再交给调用反向单引号命令继续. 一个命令cmd1想调用另一个命令cmd2 ...
- java单引号 python_单引号与Python中的双引号
我喜欢在用于插值的字符串或自然语言消息中使用双引号,对于小符号类型的字符串使用单引号,但是如果字符串包含引号,或者如果我忘记,则会打破规则. 对于正则表达式,我使用三重双引号作为docstrings和 ...
最新文章
- pta两个有序链表的合并_21. 合并两个有序链表
- Python numpy生成矩阵、串联矩阵
- Ubuntu 安装 Qt 开发环境 简单实现
- undefined reference to “boost” in Qt—Ubuntu
- How to deal with error message No item category could be determined
- 人生133个规则,能领悟多少算多少!!!看自己的造化!!!
- 详解Ubuntu Server下启动/停止/重启MySQL数据库的三种方式(ubuntu 16.04)
- JAVA逆向反混淆-追查Burpsuite的破解原理
- ArcGIS Engine代码共享-可以直接移植到你的工程中
- python钓鱼网站_学习笔记6.0 Django入门创建一个钓鱼网站
- 看陈广老师c#参考视频总结(第三篇)
- 汇编语言上机考试三星题——加密的key和明文字符串
- js离开页面执行函数 onbeforeunload与onunload事件
- 爬虫:python爬虫学习笔记之网站保持登录机制及简单验证码处理
- B2C电商产品系统分析
- lisp 阿基米德螺旋_用Auto CAD怎样画椭圆螺旋
- 腾讯云Centos8.0 CPU使用率100%,top查询为kthreaddk占用异常
- kali 安装netspeed 网络流量监视器
- python二元一次方程组用鸡兔同笼的思路来写编程_python二元一次方程组用鸡兔同笼的思路来写编程_《应用二元一次方程组——鸡兔同笼》......
- markdown 入门 - 这样就够用了
热门文章
- 雷鸟Thunderbird邮件客户端的几个实用配置技巧
- 御龙在天手游服务器满怎么注册,御龙在天手游新开服务器 御龙在天手游最新服务器一览...
- 静态HTML网页设计作品 女装服装商城(11页) HTML+CSS+JavaScript 学生DW网页设计作业成品 web课程设计网页
- 基于Windows下的Vivado编译Powerlink(命令行版)
- 华为云是如何暗中为你的网站保驾护航
- 城市视觉技术在智慧城市中的应用
- python基于mask检测人体并输出黑白剪影
- 黑马程序员C++ 第一阶段 C++基础语法入门
- 在win10运行DOS环境与debug
- python 安装 ffmpeg包