我在oracle数据库的employee表中插入了一行。现在我正在尝试从该employee表中检索数据;但它给了我不同于我输入的价值。
employee table (ID,Name,UniqueCode,Department)
insert into employee values('emp1','John','TEST05897','PAYROLL');
select ID,Name,UniqueCode,Department from employee where ID='emp1';
以上查询返回"TEST05897"
列的UniqueCode
;但我希望它是TEST05897
。我想知道我的数据中是如何得到双引号的。我可以应用REPLACE()
方法删除这些双引号;但我仍然需要知道结果集中的那些双引号是什么。
答案 0 :(得分:3)
我猜您使用的是sql devloper,除非您向我们提供所有详细信息,否则您可能修改了我们不知道的内容。此外,请尝试在sqlplus(命令提示符)中运行命令,看看是否正在进行。我已经在sqlplus中执行了所有操作并且工作得很好。请在下面找到详细信息。
SQL> create table employee(id varchar2(10),name varchar2(20),uniquecode varchar2(20),department varchar2(20))
2 /
Table created.
SQL> desc employee
Name Null? Type
----------------------------------------- -------- ----------------------------
ID VARCHAR2(10)
NAME VARCHAR2(20)
UNIQUECODE VARCHAR2(20)
DEPARTMENT VARCHAR2(20)
SQL> insert into employee values('emp1','John','TEST05897','PAYROLL');
1 row created.
SQL> commit;
Commit complete.
SQL> select * from employee;
ID NAME UNIQUECODE DEPARTMENT
---------- -------------------- -------------------- --------------------
emp1 John TEST05897 PAYROLL
SQL> update employee set Department='ACCOUNT' where UniqueCode='TEST05897';
1 row updated.
SQL> select * from employee;
ID NAME UNIQUECODE DEPARTMENT
---------- -------------------- -------------------- --------------------
emp1 John TEST05897 ACCOUNT