English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
La cláusula INSERT INTO de PostgreSQL se utiliza para insertar nuevos registros en la tabla.
Podemos insertar una fila o múltiples filas al mismo tiempo.
El formato de sintaxis de la cláusula INSERT INTO es el siguiente:
INSERT INTO TABLE_NAME (column1, column2, column3,...columnN) VALUES (value1, value2, value3,...valueN);
column1, column2,...columnN son los nombres de los campos de la tabla.
value1, value2, value3,...valueN son los valores correspondientes a los campos.
Al usar la cláusula INSERT INTO, las columnas deben coincidir en número y orden con los valores de datos.
Si se insertan valores en todos los campos de la tabla, no es necesario especificar los campos, solo se debe especificar los valores de inserción:
INSERT INTO TABLE_NAME VALUES (value1,value2,value3,...valueN);
La siguiente tabla enumera las explicaciones de los resultados devueltos después de la inserción:
Número de serie | Información de salida y descripción |
---|---|
1 | INSERT oid 1 Si se inserta una fila y la tabla de destino tiene OID, la información de OID devuelta es la OID asignada a la fila insertada. |
2 | INSERT 0 # 插入多行返回的信息, # 为插入的行数。 |
在 w3codeboxdb 数据库中创建 COMPANY 表:
w3codeboxdb=# CREATE TABLE COMPANY( ID INT PRIMARY KEY NOT NULL, NAME TEXT NOT NULL, AGE INT NOT NULL, ADDRESS CHAR(50), SALARY REAL, JOIN_DATE DATE );
在 COMPANY 表中插入以下数据:
w3codeboxdb=# INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY,JOIN_DATE) VALUES (1, 'Paul', 32, 'California', 20000.00,'2001-07-13'); INSERT 0 1
以下插入语句忽略 SALARY 字段:
w3codeboxdb=# INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,JOIN_DATE) VALUES (2, 'Allen', 25, 'Texas', '2007-12-13'); INSERT 0 1
以下插入语句 JOIN_DATE 字段使用 DEFAULT 子句来设置默认值,而不是指定值:
w3codeboxdb=# INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY,JOIN_DATE) VALUES (3, 'Teddy', 23, 'Norway', 20000.00, DEFAULT ); INSERT 0 1
以下示例插入多行:
w3codeboxdb=# INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY,JOIN_DATE) VALUES (4, 'Mark', 25, 'Rich-Mond ', 65000.00, '2007-12-13' ), (5, 'David', 27, 'Texas', 85000.00, '2007-12-13'); INSERT 0 2
使用 SELECT 语句查询表格数据:
w3codeboxdb=# SELECT * FROM company; ID NAME AGE ADDRESS SALARY JOIN_DATE ---- ---------- ----- ---------- ------- -------- 1 Paul 32 California 20000.0 2001-07-13 2 Allen 25 Texas 2007-12-13 3 Teddy 23 Norway 20000.0 4 Mark 25 Rich-Mond 65000.0 2007-12-13 5 David 27 Texas 85000.0 2007-12-13