PL/SQL使用匿名塊處理資料
假如現在要做一個線上訂購系統,這個系統首先有一個使用者模組,所以我們要設計這個模組,首先要設計一張使用者表存放
使用者資訊要求記錄使用者的使用者名稱,密碼,證件號,真實姓名,性別,生日,手機號,地址,email地址,積分,啟用狀態等,
其它資訊可各自補充
1. 請大家設計這個使用者表
--【1】
--建立表user_info
create table user_info(
ID int,
Username varchar2(10),
Pwd varchar2(100),
Idcard varchar2(100),
Real_name varchar2(100),
Sex char(2),
Birth date,
Phone_num number,
Address varchar2(100),
Email varchar2(100),
Integral number,
Active_state char(4) default 'on',
Reg_time date default sysdate,
Other_note varchar2(100)
);
--插入資料
insert into user_info
values
(1,
'dbtiger',
'123',
'42108...',
'TOM',
'男',
SYSDATE-5,
1307979887889,
'北京市海淀區...',
'824661247@qq.com',
100,
'on',
sysdate,
'VIP');
select t.*,rowid from user_info t;
2.假如現在系統已經完成,網站要做一個貼心活動,對於註冊且啟用了且生日即將到達的使用者(生日前五天),
我們根據其註冊時間的長短,送積分,積分數=註冊時間月數*100,請大家用PLSQL實現這個功能
--【2】
select to_date(sysdate-5,'yyyy-mm-dd') from dual;
select to_char(sysdate-5,'yyyy-mm-dd') from dual;
select round((sysdate-t.reg_time)/30) from user_info t;
select sysdate-(sysdate-2) from dual;
select t.*,rowid from user_info t;
user_info.integral%type
declare
--定義註冊時間月數
v_month number := 0;
--定義積分的變數v_integral
v_integral number := 0;
begin
select round((sysdate - t.reg_time) / 30)
into v_month
from user_info t
where to_char(t.birth, 'yyyy-mm-dd') =
to_char(sysdate - 5, 'yyyy-mm-dd');
--積分數=註冊時間月數*100
v_integral := v_month * 100;
update user_info t
set t.integral = v_integral + integral
where to_char(t.birth,'yyyy-mm-dd') = to_char(sysdate - 5,'yyyy-mm-dd');
end;
使用者資訊要求記錄使用者的使用者名稱,密碼,證件號,真實姓名,性別,生日,手機號,地址,email地址,積分,啟用狀態等,
其它資訊可各自補充
1. 請大家設計這個使用者表
--【1】
--建立表user_info
create table user_info(
ID int,
Username varchar2(10),
Pwd varchar2(100),
Idcard varchar2(100),
Real_name varchar2(100),
Sex char(2),
Birth date,
Phone_num number,
Address varchar2(100),
Email varchar2(100),
Integral number,
Active_state char(4) default 'on',
Reg_time date default sysdate,
Other_note varchar2(100)
);
--插入資料
insert into user_info
values
(1,
'dbtiger',
'123',
'42108...',
'TOM',
'男',
SYSDATE-5,
1307979887889,
'北京市海淀區...',
'824661247@qq.com',
100,
'on',
sysdate,
'VIP');
select t.*,rowid from user_info t;
2.假如現在系統已經完成,網站要做一個貼心活動,對於註冊且啟用了且生日即將到達的使用者(生日前五天),
我們根據其註冊時間的長短,送積分,積分數=註冊時間月數*100,請大家用PLSQL實現這個功能
--【2】
select to_date(sysdate-5,'yyyy-mm-dd') from dual;
select to_char(sysdate-5,'yyyy-mm-dd') from dual;
select round((sysdate-t.reg_time)/30) from user_info t;
select sysdate-(sysdate-2) from dual;
select t.*,rowid from user_info t;
user_info.integral%type
declare
--定義註冊時間月數
v_month number := 0;
--定義積分的變數v_integral
v_integral number := 0;
begin
select round((sysdate - t.reg_time) / 30)
into v_month
from user_info t
where to_char(t.birth, 'yyyy-mm-dd') =
to_char(sysdate - 5, 'yyyy-mm-dd');
--積分數=註冊時間月數*100
v_integral := v_month * 100;
update user_info t
set t.integral = v_integral + integral
where to_char(t.birth,'yyyy-mm-dd') = to_char(sysdate - 5,'yyyy-mm-dd');
end;
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29267792/viewspace-2087583/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- openGauss關於PL/SQL匿名塊呼叫測試SQL
- PL SQL異常處理.SQL
- PL/SQL 插入clob欄位處理SQL
- PL/SQL異常處理初步(轉)SQL
- 資料庫壞塊處理資料庫
- (轉)pl/sql開發異常處理SQL
- pl/sql中錯誤的異常處理SQL
- Oracle PL/SQL塊簡介OracleSQL
- pl/sql 異常處理的概念和術語SQL
- PLSQL Language Reference-PL/SQL資料型別-SQL資料型別-使用者定義的PL/SQL子型別SQL資料型別
- 【analyze】使用PL/SQL 方法完成多使用者資料分析SQL
- 使用Excel高效處理資料Excel
- 使用openpyxl處理表格資料
- 使用Java 8 Stream像操作SQL一樣處理資料(上)JavaSQL
- 使用Java 8 Stream像操作SQL一樣處理資料(下)JavaSQL
- PL/SQl Developer使用SQLDeveloper
- PL/SQL Developer 使用SQLDeveloper
- Oracle PL/SQL語言初級教程之異常處理OracleSQL
- pl/sql developer除錯儲存過程報錯處理SQLDeveloper除錯儲存過程
- 資料庫壞塊Corrupt block的處理方法資料庫BloC
- PLSQL Language Referenc-PL/SQL靜態SQL-事務處理和控制SQL
- PL/SQL相關的資料字典SQL
- PL/SQL複合資料型別SQL資料型別
- 用SQL Server資料庫處理資料層錯誤SQLServer資料庫
- ORACLE資料庫壞塊的處理 (處理無物件壞快的方法)Oracle資料庫物件
- SQL Server雨情處理自動補資料SQLServer
- 使用PL/Scope分析PL/SQL程式碼SQL
- 在SQL Server資料庫中使用批處理的注意事項SQLServer資料庫
- PLSQL Language Referenc-PL/SQL靜態SQL-查詢結果集處理SQL
- 【問題處理】PL/SQL Developer報錯Dynamic Performance Tables not accessibleSQLDeveloperORM
- ORACLE資料庫壞塊的處理 (一次壞快處理過程)Oracle資料庫
- 一次ORACLE資料庫undo壞塊處理Oracle資料庫
- 教你如何處理Oracle資料庫中的壞塊Oracle資料庫
- pl/sql developer使用技巧SQLDeveloper
- PL/SQL 中使用DDLSQL
- OCP課程16:SQL之處理大資料SQL大資料
- 利用索引提高SQL Server資料處理的效率索引SQLServer
- 使用instantclient和PL/SQL連線oracle遠端資料庫clientSQLOracle資料庫