Spring框架,编程软件myeclipse,PL/SQL developer。
VPN表格初始功能:保存显示员工VPN申请信息,提供申请表单,提供审核选择。
Chap1: 数据库
1. 创立表格
首先,创造一个基础的表格,命名为test,并且为它定义初始变量:
create table test(name varchar2(50),authoID varchar2(50),dep varchar2(50),createDate date,VPN_status int, approvalId varchar2(50),tuid varchar2(50),approvalDate date)
我们可以用这个语句查询表单:
select * from test;
2. 添加&删除&更改变量
1)添加变量:alter table <table> add(<column_name> column_type);
alter table test add(applyId varchar2(50));
此时,我们会在表单中看到一个新的变量:applyId--申请序列号,唯一鉴别标识。
2)删除变量:alter table <table> drop column <column_name>;
alter table test drop column department;
如此我们可以删除名为department的列。
3)更改变名称:
alter table <table> rename column <ori_colunm_name> to <new_column_name>;
alter table test rename column dep to department;
此时,我们可以看到dep更名为department:
*参考资料: sql 如何消除一列数据-ZOL问答
注*:对于不同字段,我们赋予了不同的数据类型。
SQLServer 提供了 25 种数据类型, 我们此处用到了date,int, varchar(n)。
1) date:日期和时间数据模型
日期和时间数据类型包括 Datetime 和 Smalldatetime两种类型。此处,我们要区分一下date与datetime。
date:可用于需要一个日期值而不需要时间部分时,对应范围为1000-01-01~ 9999-12-31。Ex. ‘2023-06-06’
datetime:可用于需要同时包含日期和时间信息的值,对应范围为1000-01-01 00:00:00 ~ 9999-12-31 23:59:59。Ex. ‘2023-06-06 10:52:00’.
*参考资料:SQL中日期与时间类型及函数_sql 日期格式_lqy_skyline的博客-CSDN博客
2) int:数字数据类型
数字数据类型包括小数(float,real)和整数(int,Smallint,Tinyint)。
Float(n):
- 存储范围: -1.79E+308 ~ -2.23E-308、0 及 2.23E-308 ~ 1.79E+308
- 存储空间随n改变:1-24--4个字节;25-53--8个字节
Real:
- 存储范围 - 3.40E + 38 ~ -1.18E - 38、0 及 1.18E - 38 ~ 3.40E + 38
- 每一个值要求4个字节存储空间(4 bytes)
*参考资料:float 和 real (Transact-SQL) | Microsoft Learn
Int:
- 存储范围: -2,147,483,648 ~ 2,147,483,647
- 每一个值要求4个字节存储空间(4 bytes)
Smallint:
- 存储范围:-32,768 ~ 32,767
- 每一个值要求2个字节存储空间(2 bytes)
Tinyint:
- 存储范围:0~255
- 每一个值要求1个字节存储空间(1 byte)
3) varchar(n):字符数据类型
字符数据的类型包括 Char,Varchar 和 Text。Varchar 是变长字符数据,其长度不超过 8KB;Char 是定长字符数据,其长度最多为 8KB;超过 8KB的ASCII数据可以使用Text数据类型存储。
*参考资料: SQL数据类型_百度百科
3. 设置唯一索引(主键)
在此,我们可以将任意唯一的字段设为唯一索引,这意味着该字段在test这张表里能够唯一确认一行记录:
alter table fy_test add primary key(tuid);
- 注*:唯一索引不可降级为普通索引,只能通过删除字段+添加同名字段的方式更改。
*更多关于主键的信息:SQL语句中的主键和外键_sql主键和外键_来威星际的博客-CSDN博客
mysql数据表 唯一索引需要修改成普通索引 怎么改?_电脑培训
4. 插入数据
我们现在来插入一行数据:
insert into test values('菠萝狗','12345678910','技术',to_date('2023-06-06','yyyy-mm-dd'),'1','220611',sysdate,'1234667',seq_sys.nextval);
现在可以看到表中多了一行新的数据:
*更多插入语句:sql插入数据的方式_打工的苦逼日子的博客-CSDN博客
5. 删除数据
如果我们想删除一行数据,可以用delete语句:
delete from <table> where <codition>;
delete from test where name='阿巴阿巴';
这样,我们就删除了所有名字为aaa的数据。注意:此删除方法需慎重,因数据不可恢复。一般来讲,我们大多使用逻辑删除(如:添加一个新的字段,赋予它0/1,以此区分是否逻辑删除。)
删除前表单:
删除后表单:
*更多删除语句:sql中删除数据的几种方式_sql 删除数据_As simple的博客-CSDN博客
6. 更新数据
如果我们想更新数据,可以使用updat语句:
update <table> set <column_name>=‘...’ where <condition>;
update test set name='boluo' where applyId='13';
更新前表单:
更新后表单:
可以看到applyId=13是姓名被修改为boluo。
*更多更新语句:SQL数据更新_sql更新_Jqh.的博客-CSDN博客
7. 查找数据
查找数据则可以使用查找语句:
select <column_name> from <table> where <condition1> and <condition2>;
我们在此查询VPN_status = '1' 且 dep包含关键字's'的变量:
select * from test where VPN_status='1' and department like '%s%';
总表单:
查询后表单:
这里,select 的东西可以为某一变量(<column_name>),或者全部变量(*)。
查询关键字n可以使用:<column_name> like '%n%'。
*参考资料:https://www.cnblogs.com/tc310/p/16573563.htmlSQL语句查询关键字_sql查询包含关键字_Jayxieming的博客-CSDN博客sql select 语句_zhbi98的博客-CSDN博客
增删补查目前就总结了这么多,后续会持续修改。