在MySQL中,以下声明有效:
String temp=(String)m1.get(p1); // 11
在Oracle中,以下声明有效:
mysql>insert into emp1(empno,empname,empsal,empcity) values (100,'vinay',10000,'USA');**
mysql> select * from emp1;
+-------+---------+--------+---------+
| empno | empname | empsal | empcity |
+-------+---------+--------+---------+
| 100 | vinay | 10000 | USA |
+-------+---------+--------+---------+
但这在MySQL中不起作用 - 为什么mysql> insert into emp1 values(&empno,'&empname',&empsal,'&empcity');**
可以预先设定值?
答案 0 :(得分:6)
假设&符号为SQL*Plus substitution variables。
这些是Oracle支持的,但不是MySQL支持的。
答案 1 :(得分:5)
MySQL的类似代码是这样的:
SET @empno = 100, @empname = 'vinay', @empsal = 10000, @empcity = 'USA';
insert into emp1 values(@empno,@empname,@empsal,@empcity);
请注意@
,'
值中没有INSERT
等。
如果要在不同的DBMS系统之间进行转换,则应该计划进行重要的重写。这只是Oracle和MySQL之间数百个差异之一。
答案 2 :(得分:1)
'&安培;'在Oracle中受支持但在MySQL中不支持,这就是它在MySQL中出现编译错误的原因。