⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 script_64_没使用shangpin表.txt

📁 orale培训教材包括了所有的sql说明和实例
💻 TXT
📖 第 1 页 / 共 2 页
字号:
--在以后的练习中,我们经常要用到以下两个表,所以先讲解一下这两个表的结构及含意


 名称  产品库存表  :plsql101_product用于存放产品信息                               
 ---------------------------------------------------------------
 PRODUCT_NAME                           产品名称
 PRODUCT_PRICE                          产品单价
 QUANTITY_ON_HAND                       库存数
 LAST_STOCK_DATE                        最后进货日期

CREATE TABLE plsql101_product ( 
     product_name     VARCHAR2(25), 
     product_price    NUMBER(4,2),
     quantity_on_hand NUMBER(5,0),
     last_stock_date  DATE
     )
;
 ---------------------------------------------------------------


名称      采购信息表plsql101_purchase                     
--------------------------------------------------
PRODUCT_NAME        商品名称           
SALESPERSON         经手人(编号)           
PURCHASE_DATE       采购日期           
QUANTITY            采购数量  

CREATE TABLE plsql101_purchase ( 
     product_name  VARCHAR2(25), 
     salesperson   VARCHAR2(3),
     purchase_date DATE, 
     quantity      NUMBER(4,2)
     )
;
--------------------------------------------------

---------- data_insert.txt ----------
/*
 * 范例名称:为以后测试INSERT DATA
 * 文件名称:data_insert.txt
 */


  
DROP TABLE plsql101_product;
CREATE TABLE plsql101_product ( 
     product_name     VARCHAR2(25), 
     product_price    NUMBER(4,2),
     quantity_on_hand NUMBER(5,0),
     last_stock_date  DATE
     )
;

INSERT INTO plsql101_product VALUES 
     ('Small Widget', 99, 1, '15-1月-03');
INSERT INTO plsql101_product VALUES 
     ('Medium Wodget', 75, 1000, '15-1月-02');
INSERT INTO plsql101_product VALUES 
     ('Chrome Phoobar', 50, 100, '15-1月-03');
INSERT INTO plsql101_product VALUES 
     ('Round Chrome Snaphoo', 25, 10000, null);
INSERT INTO plsql101_product VALUES 
     ('Extra Huge Mega Phoobar +',9.95,1234,'15-1月-04');

DROP TABLE plsql101_purchase;
CREATE TABLE plsql101_purchase ( 
     product_name  VARCHAR2(25), 
     salesperson   VARCHAR2(3),
     purchase_date DATE, 
     quantity      NUMBER(4,2)
     )
;

INSERT INTO plsql101_purchase VALUES 
     ('Small Widget', 'CA', '14-7月-03', 1);
INSERT INTO plsql101_purchase VALUES 
     ('Medium Wodget', 'BB', '14-7月-03', 75);
INSERT INTO plsql101_purchase VALUES 
     ('Chrome Phoobar', 'GA', '14-7月-03', 2);
INSERT INTO plsql101_purchase VALUES 
     ('Small Widget', 'GA', '15-7月-03', 8);
INSERT INTO plsql101_purchase VALUES 
     ('Medium Wodget', 'LB', '15-7月-03', 20);
INSERT INTO plsql101_purchase VALUES 
     ('Round Snaphoo', 'CA', '16-7月-03', 5);
----------------------------------------------------------
     

---------- sm_sqlplus_edit.txt ----------
/*
 * 范例名称:使用文本编辑器
 * 文件名称:sm_sqlplus_edit.txt
 */
 
select * from su_emp

--ERROR 位于第 1 行:
--ORA-00942: 表或视图不存在

edit
--在窗口中更改语句,之后存盘,退出,在sqlplus中用 /    强制执行编辑过的语句。

/


--在SQL*PLUS中设定文本编辑器中用于编辑sql文
--以scott/tiger登录
connect
scott/tiger

--设定sqlplus的edit(ed)编辑器
define _editor=edit
--换为dos edit,测试

define _editor=notepad
--输入select语句
select sysdate from dual;
ed
--可以在编辑器中编辑刚输入的sql语句,保存,退出。
--save as可以在编辑器中将sql文保存到其他目录
/
--执行编辑器中编辑的select语句。

     


---------- sqlplus_edit.txt ----------
/*
 * 范例名称:edit,语句使用文本编辑器
 * 文件名称:sqlplus_edit.txt
 */

-- Note: 必须在datainsert.txt中的sql执行之后

SELECT   product_nmae
FROM     plsql101_produtc
WHERE    quantity_on_hand >= 100
         AND
         last_stock_date IS NOT NULL
ORDER BY product_name;

--ERROR 位于第 2 行:
--ORA-00942: 表或视图不存在
edit
--修改,保存,退出。在sqlplus中
/
--执行




     
---------- sm_script.txt -------------------------------------
/*
 * 范例名称:SQL脚本文件
 * 文件名称:sm_script.txt
 */
 
EDIT d:\sm_emp.sql

-- 以下sql文加入sm_emp.sql
select * from sm_emp;

--

--执行脚本
@d:\sm_emp.sql

--将文件data_insert.txt中的sql语句建立一个脚本datainsert.sql
--并执行。


---------- plsql101_script.txt ----------
/*
 * 范例名称:SQL脚本文件
 * 文件名称:plsql101_script.txt
 */

EDIT d:\plsql101_test.sql

-- Insert the following commands into the script file
CREATE TABLE temp (
     first_name VARCHAR2(15),
     last_name  VARCHAR2(25)
     )
;

INSERT INTO temp VALUES ('刘', '备');
INSERT INTO temp VALUES ('关', '羽');

SELECT * FROM temp;

DROP TABLE temp;
--

@d:\plsql101_test



---------- sm_script_var1.txt ----------
/*
 * 范例名称:SQL脚本文件--使用变量
 * 文件名称:sm_script_var1.txt
 */
 
EDIT d:\sm_emp_var1.sql

-- 以下sql文加入sm_emp_var1.sql
select * from sm_emp
where salary = &salary;

--

--执行脚本
@d:\sm_emp_var1.sql 



---------- sm_script_var1_verify.txt ----------
/*
 * 范例名称:SQL脚本文件:SET VERIFY OFF使sqlplus不再显示旧值是什么,新值是什么
 * 文件名称:sm_script_var1_verify.txt
 */
 
EDIT d:\sm_emp_var1.sql

-- 以下sql文加入sm_emp_var1.sql
SET VERIFY OFF
select * from sm_emp
where salary = &salary;

SET VERIFY ON
--

--执行脚本
@d:\sm_emp_var1.sql

 
 
---------- plsql101_script_var1.txt ----------
/*
 * 范例名称:SQL脚本文件
 * 文件名称:plsql101_script_var1.txt
 */
 
edit d:\plsql101_test2.sql

/* Insert the following commands into the script file
SET VERIFY OFF

SELECT product_name, quantity, purchase_date
FROM   plsql101_purchase
WHERE  quantity >= &min_quantity_sold
;

SET VERIFY ON
*/

@d:\plsql101_test2 



---------- plsql101_script_varDate.txt ----------
/*
 * 范例名称:SQL脚本文件
 * 文件名称:plsql101_script_varDate.txt
 */

edit d:\plsql101_test3.sql

/* Insert the following commands into the script file
SET VERIFY OFF

SELECT product_name, quantity, purchase_date
FROM   plsql101_purchase
WHERE  purchase_date = '&date_you_want_to_select'
;

SET VERIFY ON
*/

@d:\plsql101_test3


 
---------- plsql101_script_accept.txt ----------
/*
 * 范例名称:SQL脚本文件
 * 文件名称:plsql101_script_accept.txt
 */
 
edit d:\plsql101_test4.sql

/* Insert the following commands into the script file
SET VERIFY OFF
SET ECHO OFF

ACCEPT v_earliest_date PROMPT '最早日期? (dd-mm月-yy): '
ACCEPT v_latest_date PROMPT '最晚日期? (dd-mm月-yy): '
SELECT product_name, quantity, purchase_date
FROM   plsql101_purchase
WHERE  purchase_date BETWEEN '&v_earliest_date' AND '&v_latest_date'
ORDER BY product_name, quantity
;

SET VERIFY ON
SET ECHO ON
*/

@d:\plsql101_test4  



---------- sm_script_2.txt ----------
/*
 * 范例名称:SQL脚本文件
 * 文件名称:sm_script_2.txt
 */

edit d:\plsql101_test5.sql

/* Insert the following commands into the script file
SET ECHO OFF
SET VERIFY OFF
@d:\sm_emp_var1
@d:\plsql101_test3
@d:\plsql101_test4
*/

@d:\plsql101_test5



---------- sysdate.txt ----------
/*
 * 范例名称:系统变量函数
 * 文件名称:sysdate.txt
 */

select sysdate from dual;

--change server time

select sysdate from dual;

--change client time

select sysdate from dual;


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -