9

这是我在 postgreSQL 中编码的学生表(摘录):

CREATE TABLE "Student"
(
  ucas_no integer NOT NULL,
  student_name character(30) NOT NULL,
  current_qualification character(30),
  degree_of_interest character(30),
  date_of_birth date NOT NULL,
  street_address character(30) NOT NULL,
  city character(30) NOT NULL,
  post_code character(10) NOT NULL,
  country character(20) NOT NULL,
  phone_no character(15) NOT NULL,
  gender character(6) NOT NULL,
  user_name character(15) NOT NULL,
  "password" character(30) NOT NULL,
  CONSTRAINT pk_ucas_no PRIMARY KEY (ucas_no),
  CONSTRAINT ten_digits_only CHECK (length(ucas_no::character(1)) >= 10 OR length(ucas_no::character(1)) <= 10)
)

现在我正在使用 pgAdmin 的查询工具功能将数据插入到表中。这是 INSERT INTO 代码...

INSERT INTO Student
VALUES
('912463857', 'Jon Smith', 'A-Level', 'BSc(Hons) Computer Science', '10/06/1990', '50 Denchworth Road', 'LONDON', 'OBN 244', 'England', '02077334444', 'Male', 'jonsmi', '123456');

我遇到的问题是,我收到一条错误消息,指出 Student 表不存在,而它显然在我的数据库中。这是错误消息:

ERROR:  relation "student" does not exist
LINE 1: INSERT INTO Student (ucas_no, student_name, current_qualific...
                    ^

********** Error **********

ERROR: relation "student" does not exist
SQL state: 42P01
Character: 13

有人知道出了什么问题吗?

4

2 回答 2

11

您已经创建了一个表"Student",并且您正在尝试插入一个名为Student不同的表

试试这个

INSERT INTO "Student" VALUES('912463857', 'Jon Smith', 'A-Level', 'BSc(Hons) Computer Science', '10/06/1990', '50 Denchworth Road', 'LONDON', 'OBN 244', 'England', '02077334444', 'Male', 'jonsmi', '123456');

这将起作用

请通过这个关于 qoutes omitting -the-double-quote-to-do-query-on-postgresql

于 2012-03-22T05:21:43.083 回答
3

在“4.1.1. Identifiers and Key Words”中查找“quoted identifier” 。

至于您的第二个问题(不要评论您的问题,如果相关则编辑它们,如果没有则创建新问题)-阅读手册的整个“第 4 章。SQL 语法”,但最低限度是“4.1.2. 常量”

于 2012-03-22T00:19:55.853 回答