.用户想在有三个列: empid、lastname 和 salary 的 employee 表中插入一行,该用户想输入数据empid: 59694, lastname: Harris 但没有 salary. 哪一个语最适合这项工作?( ) A.INSERT INTO employee VALUES(59694harris’,null) B.INSERTINTO employee VALUES(59694,harris) C.INSERT INTO employee (empid,lastname, salary) VALUES(59694,harris” D.INSERT INTO employee (SELECT 59694 FROMharris”
时间: 2024-03-16 12:48:01 浏览: 143
最适合这项工作的语句是:
```SQL
INSERT INTO employee (empid, lastname) VALUES (59694, 'Harris');
```
这条 SQL 语句使用了 INSERT INTO 语句向名为 employee 的表中插入一行数据,其中 empid 和 lastname 列有值,而 salary 列没有值。使用 VALUES 子句指定要插入的值,其中 empid 和 lastname 分别为 59694 和 'Harris'。
选项 A 中的语句使用了错误的语法,缺少了一个单引号,且 null 值不应该用引号括起来。
选项 B 中的语句也使用了错误的语法,缺少了 VALUES 子句,并且缺少了对 lastname 值的引号。
选项 C 中的语句虽然指定了 empid、lastname 和 salary 列,但是没有为 salary 列指定值,因此会导致插入失败。
选项 D 中的语句使用了错误的语法,缺少了 VALUES 子句,并且使用了错误的 SELECT 语句。
相关问题
CREATE TABLE Employees ( empid INT NOT NULL, --雇员 ID firstname VARCHAR(30) NOT NULL,--姓 lastname VARCHAR(30) NOT NULL,--名 hiredate DATE NOT NULL,--雇用日期 mgrid INT NULL,--经理 ID ssn VARCHAR(20) NOT NULL,--社会保险号 salary MONEY NOT NULL--工资 ); 利用 alter table 语句在 empid 列上建立一个主码约束
可以使用以下 ALTER TABLE 语句在 empid 列上建立一个主键约束:
```
ALTER TABLE Employees
ADD CONSTRAINT PK_Employees_empid PRIMARY KEY (empid);
```
这将在 Employees 表中创建一个名为 PK_Employees_empid 的主键约束,该约束将 empid 列设置为主键。
CREATE TABLE Employees ( empid INT NOT NULL, --雇员 ID firstname VARCHAR(30) NOT NULL,--姓 lastname VARCHAR(30) NOT NULL,--名 hiredate DATE NOT NULL,--雇用日期 mgrid INT NULL,--经理 ID ssn VARCHAR(20) NOT NULL,--社会保险号 salary MONEY NOT NULL--工资 );为表 orders 的 orderts 字段定义一个默认值约束(表示订单的时间戳) --CURRENT_TIMESTAMP 函数,返回当前的日期和时间值。或使用 SYSdatetime()函数
可以使用以下 SQL 语句为表 orders 的 orderts 字段定义一个默认值约束:
```
ALTER TABLE orders
ADD CONSTRAINT DF_orders_orderts DEFAULT CURRENT_TIMESTAMP FOR orderts;
```
或者使用 SYSdatetime() 函数:
```
ALTER TABLE orders
ADD CONSTRAINT DF_orders_orderts DEFAULT SYSdatetime() FOR orderts;
```
这样,如果在插入数据时未指定 orderts 的值,它将自动被设置为当前的日期和时间。
阅读全文