plsql在表customer里新建列:customerID 类型:NUMBER 客户编号 自动编号(标识列),从1开始,主键
时间: 2023-06-14 07:04:14 浏览: 52
您可以使用以下PL/SQL代码来在表customer中新建一个自动编号列customerID:
```sql
ALTER TABLE customer
ADD customerID NUMBER GENERATED ALWAYS AS IDENTITY PRIMARY KEY;
```
这将在表customer中添加一个名为customerID的列,该列是自动生成的标识列,从1开始自动递增,同时也是主键。
相关问题
用oracle plsql实现这样一张表列名称 类型 说明 customerID NUMBER 客户编号 自动编号(标识列),从1开始,主键 customerName VARCHAR2 开户名 必填 PID CHAR 身份证号 必填,只能是18位,身份证号唯一约束 telephone CHAR 联系电话 必填,手机号11位 address VARCHAR2 居住地址 可选输入
可以使用以下PL/SQL代码来创建这张表:
```sql
CREATE TABLE customer (
customerID NUMBER GENERATED BY DEFAULT AS IDENTITY PRIMARY KEY,
customerName VARCHAR2(50) NOT NULL,
PID CHAR(18) NOT NULL UNIQUE,
telephone CHAR(11) NOT NULL,
address VARCHAR2(100)
);
```
其中,`customerID`列使用了Oracle 12c引入的`GENERATED BY DEFAULT AS IDENTITY`语法来实现自动编号(标识列)。`customerName`、`PID`和`telephone`列都使用了`NOT NULL`约束来确保必填,而`PID`列还使用了`UNIQUE`约束来确保唯一性。`address`列没有使用约束,因为它是可选的。
你可以根据自己的需要调整列的类型、大小和约束。
PLSQL server ORA-12514: TNS:listener does not currently know ofservice requested in connect descriptor
SQL server ORA-12514: TNS:listener does not currently know of service requested in connect descriptor是Oracle数据库连接错误的一种,它表示监听程序无法识别用户请求的服务名称。这可能是由于服务名称拼写错误、监听程序未启动或未配置正确等原因引起的。解决此问题的方法包括检查服务名称是否正确、检查监听程序是否正在运行以及检查连接字符串是否正确等。