Pregunta
· 22 abr, 2021

Ejecutar "Crear tabla" en el Portal de Administración

¿Es posible ejecutar "Crear tabla" desde el Portal de Administración?

Intenté esto:

CREATE TABLE SQLUser.Teste (ID INT NOT NULL, coluna1 VARCHAR (255), coluna2 VARCHAR (255), coluna3 VARCHAR (255), coluna4 VARCHAR (255) CONSTRAINT TestePK PRIMARY KEY (ID))

Mensaje de error:

Comentarios (1)0
Inicie sesión o regístrese para continuar

La sentencia tiene un error sintáctico, constraint debe ir precedido por una coma.

Por otro lado, si lo que se quiere es tener un identificador de fila autoincremental creciente, basta con no indicar la columna ID (y por tanto eliminar la constraint por innecesaria), ya que IRIS creará por defecto una columna ID que mantendrá un valor único numérico creciente por cada nueva fila. Quedaría:

CREATE TABLE SQLUser.Teste (coluna1 VARCHAR (255), coluna2 VARCHAR (255), coluna3 VARCHAR (255), coluna4 VARCHAR (255))

En este caso no tendríamos Primary Key, tendríamos sólo un IDKEY, proyectado en SQL como la columna ID, cuyos valores identifican unívocamente cada fila.

Si lo que queremos es tener una primary key que podamos insertar explícitamente nosotros, pues esa sentencia valdría, añadiendo la coma que falta claro:

CREATE TABLE SQLUser.Teste (ID INT NOT NULL, coluna1 VARCHAR (255), coluna2 VARCHAR (255), coluna3 VARCHAR (255), coluna4 VARCHAR (255), CONSTRAINT TestePK PRIMARY KEY (ID))

En ese caso, al existir ya una columna con nombre ID, IRIS generaría una columna de nombre ID1 donde igualmente nos daría un valor numérico creciente único por fila. Este ID1 sería el IDKEY (no confundir con Primary Key) e ID la Primary Key.

Si quisiéramos tener una Primary Key que coincidiera con el IDKEY, haríamos:

CREATE TABLE SQLUser.Teste (ID INT IDENTITY, coluna1 VARCHAR (255), coluna2 VARCHAR (255), coluna3 VARCHAR (255), coluna4 VARCHAR (255), CONSTRAINT TestePK PRIMARY KEY (ID))