大数据学习-2024 3 29-PL SQL中使用SQL语句对数据进行增删改查

103 阅读2分钟
正确优质的命名规则:直接是可以-见名知意-student_code、student_name、stu_name

### 02、数据类型:



01、数字:整数(int)和小数(number(长度,小数位数),number)。
02、字符串类型:定长字符串:char(字节数)例如:电话号码=186080809090 写法为:char(11)
							不定长字符串 varchar2(字节数)
03、时间类型:date
04、大字符串类型:
	CLOBCLOB用于存储可变长度的字符大对象。
		它主要用于存储大量的文本数据,如文章、长文档等。
		与VARCHAR2数据类型相比,CLOB可以存储更多的数据,因为它不受VARCHAR2的最大长度限制(通常为4000字节或更多,取决于数据库的字符集和配置)。
		CLOB字段可以存储高达4GB的数据。
		与BLOB相比,处理CLOB数据通常更容易,因为它们包含的是字符数据,可以直接用SQL查询和操作。
	BLOBBLOB用于存储可变长度的二进制大对象。
		它通常用于存储图像、音频、视频或其他非文本数据。
		BLOB字段可以存储高达4GB的数据。
		当处理BLOB数据时,通常需要专门的二进制数据处理技术。

### 03、约束条件:



01、主键约束(primary key):不能为空,且不能重复。一张表里面只能有一个主键。 02、唯一约束(unique):此列不能重复,但是可以为空 03、非空约束(not null):此列不能为空 04、检查约束(check()):check(sex='男' or sex='女') check(age>0 and age<200)



sex VARCHAR2(1) CHECK (sex = '男' OR sex = '女'), -- CHECK约束确保sex列只能存储'男'或'女' age INT CHECK (age > 0 AND age < 200) -- CHECK约束确保age列的值在0到200之间(不包括0和200)


### 例子:


创建班级表:



create table classes( cla_id int primary key, cla_name varchar2(20) not null, cla_teacher int );


创建学生表:



create table student( stu_no int primary key, stu_name varchar2(50) not null, stu_tel char(11) unique, stu_sex check(stu_sex='男' or stu_sex='女'), stu_key char(18) unique, stu_class int, foreign key(stu_class) references classes(cla_id) );


## 3、插入数据


语法规范:insert into 表名 values(值1,值2,…)  
 **例子:**  
 insert into classes values(101,‘一(1)班’,10001)  
 insert into student values(1001,‘小张’,‘13211111111’,‘男’,‘410100202201011122’,101);


## 4、删除整张表



delete student


## 5、查询数据


**查询整张表:**



select * from student


## 6、修改表:



### 01、新增列


语法规范:alter table 表名 add 列名 数据类型 约束条件;  
 **例子:**



alter table student add stu_birth date;


### 02、删除列


语法规范:alter table 表名 add drop column stu\_birth;  
 **例子**



alter table student add drop column stu_birth;


### 03、修改类型


alter table 表名 modify 列名 数据类型;  
 **例子**



alter table student modify stu_no varchar(2);


### 04、用sql查看字段的类型。user\_tab\_columns


**例子**



select * from user_tab_columns where table_name='stu_info';


### 05、修改列名


语法规范:alter table student rename column stu\_key to stu\_card;  
 **例子**



alter table student rename column stu_key to stu_card;


### 06、修改表名


语法规范:alter table 原表名 raname to 新表名;