插入语句中的&符号的含义是什么?

3
假设我有一个名为employee的表格,其中包含两列emp_ID和e_name,我通常使用"insert into employee values('some_value', 'some_vale')"向表格中插入行,但是在某个地方我看到了这样的插入语句:"insert into employee(&emp_ID, '&e_name')",其中emp_ID是数字类型,e_name是varchar类型。我的问题是:该插入语句中的&有什么用处?
3个回答

9
这很可能是一个sqlplus脚本,&符号是变量替换字符。
请参考这里

我们在Oracle 10g中使用的SQL与SQLPlus脚本不同吗? - Rameshwar.S.Soni
sqlplus是连接到Oracle的命令行工具,它与您编写的应用程序不同。在命令行中键入sqlplus即可启动。 - daven11
谢谢daven11,我以前不知道这个......但是在sqlplus中完成所有与SQL相关的工作是否比直接使用Oracle 10g软件有任何好处? - Rameshwar.S.Soni
不确定你的意思?sqlplus是一个命令行工具,用于自由查询和脚本编写。我经常在Unix上使用它来批量运行SQL脚本。Oracle 10g是一个数据库服务器 - 没有直接与其交互的方式 - 所有通信都是通过应用程序进行,无论是服务器端还是客户端。sqlplus就是其中之一。如果这回答了你的问题? - daven11
我的意思是我已经安装了Oracle 10g Xpress版,可以轻松地在Oracle 10g中编写和执行查询,只需进入数据库主页,填写用户名和密码,然后选择使用对象浏览器或SQL下拉框来选择SQL命令,最后输入命令。简而言之,不需要使用命令提示符。希望我表达清楚了。 - Rameshwar.S.Soni
好的,那是一个Web界面(如果我想的是对的话),在后台有一个Web服务器,它接收你输入的SQL并在数据库服务器上运行它并返回结果。sqlplus是一个命令行版本,也可以做同样的事情。两者都是访问数据库的不同方式。需要记住的一件事是Oracle是一个服务器,这意味着所有应用程序都通过Oracle API与服务器通信。如果有些东西看起来很明显,请原谅,因为我不确定你的背景。服务器分叉进程并执行大量操作以支持多用户。 - daven11

4

2

& 是一个特殊字符,它会导致语句等待输入。


创建表 emp(e_id 整数,e_name varchar(50))从 emp 中选择 *插入到 emp 中的值为(&e_id,'&e_name');我收到一个错误消息:“服务器:Msg 170,级别 15,状态 1,行 1 第 1 行:'&' 附近语法不正确。” - Rameshwar.S.Soni

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接