mysql - 2个任务-创建表

标签 mysql sql oracle-sqldeveloper

我正在努力进行两项练习

1. 创建“月份”表,其中包含 2 个数据:员工的雇用日期和他开始工作的月份名称

这是我的想法:

    CREATE TABLE month (
      hire date VARCHAR(25) NOT NULL,
      name of month VARCHAR(25) NOT NULL,
    );

我收到语法错误

2. 创建包含以下列的表格:姓名、姓氏、主题、测试日期。 嵌套步骤是添加 5 条记录。每列都应该是字段。

我的想法:

  CREATE TABLE Data (
      name VARCHAR (25)NOT NULL,
      surname VARCHAR(25)NOT NULL,
      subject CHAR(25)NOT NULL,
      day DATE NOT NULL
    );
    
    INSERT INTO dane(name, last name, subject, day)
     values ('Marta', 'Smith', 'Math', Monday);
     
    INSERT INTO dane(name, last name, subject, day)
     values ('Kasia', 'Kowalska', 'SQL', Wendesday);

我收到的内容:字段定义中的语法错误。 我尝试了几次,但都不起作用。 你能帮我吗?

最佳答案

1) 您的字段名称不能有空格,除非它们位于勾号“`”之间,并且末尾还有一个额外的逗号。并且 hire_date 类型应为 DATE 而不是 VARCHAR

SQL DEMO

CREATE TABLE month (
      hire_date VARCHAR(25) NOT NULL,
      name_of_month VARCHAR(25) NOT NULL
    );

或者

CREATE TABLE month (
      `hire date` VARCHAR(25) NOT NULL,
      `name of month` VARCHAR(25) NOT NULL
    );

第二部分

  1. 你的表是数据而不是 dane
  2. 您的字段是姓氏,而不是姓氏
  3. 星期一不是有效日期

.

CREATE TABLE Data (
  name VARCHAR (25)NOT NULL,
  surname VARCHAR(25)NOT NULL,
  subject CHAR(25)NOT NULL,
  day DATE NOT NULL
);

INSERT INTO Data(name, surname, subject, day)
 values ('Marta', 'Smith', 'Math', '2017-12-01');

INSERT INTO Data(name, surname, subject, day)
 values ('Kasia', 'Kowalska', 'SQL', '2017-12-02');

关于mysql - 2个任务-创建表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47594384/

相关文章:

c# - 当我在文本框中键入 RowFilter 时出现语法错误

mysql - 使用 JDBI SQL 对象 API 同时检索或创建新行

mysql - 在 mySQL 中使用 group by 后获取最新日期

php - 如何找到 2 个日期时间对象之间的天数差异作为日期?

sql - 帮助数据库结构

sql - 匹配值,但 SQL Server 中的新值出错

java - 为什么oracle存储过程执行时间根据它的执行方式大大增加?

sql - 在 SQL 中创建一个表,其中复合主键也是外键

database - 考虑夏令时将(日期)类型的oracle历史数据转换为unix时间戳

php - 使用路径将文件存储到 MySql 中