Sólo quiero saber cómo solucionar este problema, o por qué servidor MariaDB me mantiene devolver un error. Acabo de instalar la base de datos, crear un usuario, un nuevo esquema, estoy apuntando a la base de datos con use database testing;
y estoy listo para crear una tabla simple en una base de datos con la siguiente consulta:
CREATE TABLE USERS
(
ID NUMBER(4) NOT NULL PRIMARY KEY,
NAME VARCHAR2(20) NOT NULL,
DEPTO VARCHAR2(20) NOT NULL
);
El usuario en la base de datos que estoy usando ha concedido todos los privilegios. Pero MariaDB regresa:
[42000][1064] (conn=14) You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'NUMBER(4) NOT NULL PRIMARY KEY
[42000][1064] You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'NUMBER(4) NOT NULL PRIMARY KEY
)' at line 2
Query is: CREATE TABLE USERS (
ID NUMBER(4) NOT NULL PRIMARY KEY
)
java thread: RMI TCP Connection(5)-127.0.0.1
¿Alguien me puede ayudar?
Los tipos de datos son de Oracle, y se puede ajustar la sql_mode a aceptar que la sintaxis:
En MariaDB 10.3 y posterior, la variable de sistema sql_mode a Oracle permite que el servidor entiende un subconjunto del lenguaje de Oracle PL / SQL. Por ejemplo:
SET SQL_MODE='ORACLE';
CREATE TABLE USERS
(
ID NUMBER(4) NOT NULL PRIMARY KEY,
NAME VARCHAR2(20) NOT NULL,
DEPTO VARCHAR2(20) NOT NULL
);
Tenga en cuenta que el número y VARCHAR2 son sinónimos:
+-------------+-----------------+
| Oracle type | MariaDB synonym |
+-------------+-----------------+
| VARCHAR2 | VARCHAR |
| NUMBER | DECIMAL |
+-------------+-----------------+