MySQL中如何定义trigger

MySQL中如何定义trigger,第1张

对的,MYSQL不用referencing,百度可以搜索MYSQL5中文手册呀,说得非常非常清楚,我粘贴到下面:

211 CREATE TRIGGER语法

CREATE TRIGGER trigger_name trigger_time trigger_event

ON tbl_name FOR EACH ROW trigger_stmt

触发程序是与表有关的命名数据库对象,当表上出现特定事件时,将激活该对象。

触发程序与命名为tbl_name的表相关。tbl_name必须引用永久性表。不能将触发程序与TEMPORARY表或视图关联起来。

trigger_time是触发程序的动作时间。它可以是BEFORE或AFTER,以指明触发程序是在激活它的语句之前或之后触发。

trigger_event指明了激活触发程序的语句的类型。trigger_event可以是下述值之一:

· INSERT:将新行插入表时激活触发程序,例如,通过INSERT、LOAD DATA和REPLACE语句。

· UPDATE:更改某一行时激活触发程序,例如,通过UPDATE语句。

· DELETE:从表中删除某一行时激活触发程序,例如,通过DELETE和REPLACE语句。

请注意,trigger_event与以表 *** 作方式激活触发程序的SQL语句并不很类似,这点很重要。例如,关于INSERT的BEFORE触发程序不仅能被INSERT语句激活,也能被LOAD DATA语句激活。

可能会造成混淆的例子之一是INSERT INTO ON DUPLICATE UPDATE 语法:BEFORE INSERT触发程序对于每一行将激活,后跟AFTER INSERT触发程序,或BEFORE UPDATE和AFTER UPDATE触发程序,具体情况取决于行上是否有重复键。

对于具有相同触发程序动作时间和事件的给定表,不能有两个触发程序。例如,对于某一表,不能有两个BEFORE UPDATE触发程序。但可以有1个BEFORE UPDATE触发程序和1个BEFORE INSERT触发程序,或1个BEFORE UPDATE触发程序和1个AFTER UPDATE触发程序。

trigger_stmt是当触发程序激活时执行的语句。如果你打算执行多个语句,可使用BEGIN END复合语句结构。这样,就能使用存储子程序中允许的相同语句。请参见2027节,“BEGIN END复合语句”。

在MySQL 51中,可以编写包含按名称对表进行直接引用的触发程序,如下例中所示的名为testref的触发程序:

CREATE TABLE test1(a1 INT);

CREATE TABLE test2(a2 INT);

CREATE TABLE test3(a3 INT NOT NULL AUTO_INCREMENT PRIMARY KEY);

CREATE TABLE test4(

a4 INT NOT NULL AUTO_INCREMENT PRIMARY KEY,

b4 INT DEFAULT 0

);

DELIMITER |

CREATE TRIGGER testref BEFORE INSERT ON test1

FOR EACH ROW BEGIN

INSERT INTO test2 SET a2 = NEWa1;

DELETE FROM test3 WHERE a3 = NEWa1;

UPDATE test4 SET b4 = b4 + 1 WHERE a4 = NEWa1;

END

|

DELIMITER ;

INSERT INTO test3 (a3) VALUES

(NULL), (NULL), (NULL), (NULL), (NULL),

(NULL), (NULL), (NULL), (NULL), (NULL);

INSERT INTO test4 (a4) VALUES

(0), (0), (0), (0), (0), (0), (0), (0), (0), (0);

如果将下述值插入表test1,如下所示:

mysql> INSERT INTO test1 VALUES

-> (1), (3), (1), (7), (1), (8), (4), (4);

Query OK, 8 rows affected (001 sec)

Records: 8 Duplicates: 0 Warnings: 0

那么4个表中的数据如下:

mysql> SELECT FROM test1;

+------+

| a1 |

+------+

| 1 |

| 3 |

| 1 |

| 7 |

| 1 |

| 8 |

| 4 |

| 4 |

+------+

8 rows in set (000 sec)

mysql> SELECT FROM test2;

+------+

| a2 |

+------+

| 1 |

| 3 |

| 1 |

| 7 |

| 1 |

| 8 |

| 4 |

| 4 |

+------+

8 rows in set (000 sec)

mysql> SELECT FROM test3;

+----+

| a3 |

+----+

| 2 |

| 5 |

| 6 |

| 9 |

| 10 |

+----+

5 rows in set (000 sec)

mysql> SELECT FROM test4;

+----+------+

| a4 | b4 |

+----+------+

| 1 | 3 |

| 2 | 0 |

| 3 | 1 |

| 4 | 2 |

| 5 | 0 |

| 6 | 0 |

| 7 | 1 |

| 8 | 1 |

| 9 | 0 |

| 10 | 0 |

+----+------+

10 rows in set (000 sec)

使用别名OLD和NEW,能够引用与触发程序相关的表中的列。OLDcol_name在更新或删除它之前,引用已有行中的1列。NEWcol_name在更新它之后引用将要插入的新行的1列或已有行的1列。

激活触发程序时,对于触发程序引用的所有OLD和NEW列,需要具有SELECT权限,对于作为SET赋值目标的所有NEW列,需要具有UPDATE权限。

注释:目前,触发程序不会被级联的 外键动作激活。该限制将会被尽早放宽。

CREATE TRIGGER语句需要SUPER权限。

我给你举个例子吧!

MySQL存储过程例子,包含事务,参数,嵌套调用,游标,循环等,阅读MySQL存储过程例子,包含事务,参 数,嵌套调用,游标,循环等,view plaincopy to clipboardprintdrop procedure if exists pro_rep_shadow_rs; delimiter | -------------------------------

view plaincopy to clipboardprint

drop procedure if exists pro_rep_shadow_rs;

delimiter |

----------------------------------

-- rep_shadow_rs

-- 用来处理信息的增加,更新和删除

-- 每次只更新上次以来没有做过的数据

-- 根据不同的标志位

-- 需要一个输出的参数,

-- 如果返回为0,则调用失败,事务回滚

-- 如果返回为1,调用成功,事务提交

--

-- 测试方法

-- call pro_rep_shadow_rs(@rtn);

-- select @rtn;

----------------------------------

create procedure pro_rep_shadow_rs(out rtn int)

begin

-- 声明变量,所有的声明必须在非声明的语句前面

declare iLast_rep_sync_id int default -1;

declare iMax_rep_sync_id int default -1;

-- 如果出现异常,或自动处理并rollback,但不再通知调用方了

-- 如果希望应用获得异常,需要将下面这一句,以及启动事务和提交事务的语句全部去掉

declare exit handler for sqlexception rollback;

-- 查找上一次的

select eid into iLast_rep_sync_id from rep_de_proc_log where tbl='rep_shadow_rs';

-- 如果不存在,则增加一行

if iLast_rep_sync_id=-1 then

insert into rep_de_proc_log(rid,eid,tbl) values(0,0,'rep_shadow_rs');

set iLast_rep_sync_id = 0;

end if;

-- 下一个数字

set iLast_rep_sync_id=iLast_rep_sync_id+1;

-- 设置默认的返回值为0:失败

set rtn=0;

-- 启动事务

start transaction;

-- 查找最大编号

select max(rep_sync_id) into iMax_rep_sync_id from rep_shadow_rs;

-- 有新数据

if iMax_rep_sync_id>=iLast_rep_sync_id then

-- 调用

call pro_rep_shadow_rs_do(iLast_rep_sync_id,iMax_rep_sync_id);

-- 更新日志

update rep_de_proc_log set rid=iLast_rep_sync_id,eid=iMax_rep_sync_id where tbl='rep_shadow_rs';

end if;

-- 运行没有异常,提交事务

commit;

-- 设置返回值为1

set rtn=1;

end;

|

delimiter ;

drop procedure if exists pro_rep_shadow_rs_do;

delimiter |

---------------------------------

-- 处理指定编号范围内的数据

-- 需要输入2个参数

-- last_rep_sync_id 是编号的最小值

-- max_rep_sync_id 是编号的最大值

-- 无返回值

---------------------------------

create procedure pro_rep_shadow_rs_do(last_rep_sync_id int, max_rep_sync_id int)

begin

declare iRep_operationtype varchar(1);

declare iRep_status varchar(1);

declare iRep_Sync_id int;

declare iId int;

-- 这个用于处理游标到达最后一行的情况

declare stop int default 0;

-- 声明游标

declare cur cursor for select id,Rep_operationtype,iRep_status,rep_sync_id from rep_shadow_rs where rep_sync_id between last_rep_sync_id and max_rep_sync_id;

-- 声明游标的异常处理,设置一个终止标记

declare CONTINUE HANDLER FOR SQLSTATE '02000' SET stop=1;

-- 打开游标

open cur;

-- 读取一行数据到变量

fetch cur into iId,iRep_operationtype,iRep_status,iRep_Sync_id;

-- 这个就是判断是否游标已经到达了最后

while stop <> 1 do

-- 各种判断

if iRep_operationtype='I' then

insert into rs0811 (id,fnbm) select id,fnbm from rep_shadow_rs where rep_sync_id=iRep_sync_id;

elseif iRep_operationtype='U' then

begin

if iRep_status='A' then

insert into rs0811 (id,fnbm) select id,fnbm from rep_shadow_rs where rep_sync_id=iRep_sync_id;

elseif iRep_status='B' then

delete from rs0811 where id=iId;

end if;

end;

elseif iRep_operationtype='D' then

delete from rs0811 where id=iId;

end if;

-- 读取下一行的数据

fetch cur into iId,iRep_operationtype,iRep_status,iRep_Sync_id;

end while; -- 循环结束

close cur; -- 关闭游标

end;

|

你说的 trigger 和 instead of 触发器么? 概念是一样的,只不过触发器类型不一样而已!

以下是一些信息,请参考

触发器类型

触发器在数据库里以独立的对象存储,它与存储过程和函数不同的是,存储过程与函数需要用户显示调用才执行,而触发器是由一个事件来启动运行。即触发器是当某个事件发生时自动地隐式运行。并且,触发器不能接收参数。所以运行触发器就叫触发或点火(firing)。ORACLE事件指的是对数据库的表进行的INSERT、UPDATE及DELETE *** 作或对视图进行类似的 *** 作。ORACLE将触发器的功能扩展到了触发ORACLE,如数据库的启动与关闭等。所以触发器常用来完成由数据库的完整性约束难以完成的复杂业务规则的约束,或用来监视对数据库的各种 *** 作,实现审计的功能。

DML触发器

ORACLE可以在DML语句进行触发,可以在DML *** 作前或 *** 作后进行触发,并且可以对每个行或语句 *** 作上进行触发。

替代触发器

由于在ORACLE里,不能直接对由两个以上的表建立的视图进行 *** 作。所以给出了替代触发器。它就是ORACLE 8专门为进行视图 *** 作的一种处理方法。

系统触发器

ORACLE 8i 提供了第三种类型的触发器叫系统触发器。它可以在ORACLE数据库系统的事件中进行触发,如ORACLE系统的启动与关闭等。

分类: 教育/科学 >> 职业教育

解析:

公共基础知识 大纲

公共基础知识

基本要求

1掌握算法的基本概念。

2掌握基本数据结构及其 *** 作。

3掌握基本排序和查找算法。

4掌握逐步求精的结构化程序设计方法。

5掌握软件工程的基本方法,具有初步应用相关技术进行软件开发的能力。

6掌握数据库的基本知识,了解关系数据库的设计。

考试内容

一、基本数据结构与算法

1算法的基本概念;算法复杂度的概念和意义(时间复杂度与空间复杂度)。

2数据结构的定义;数据的逻辑结构与存储结构;数据结构的图形表示;线性结构与非线性结构的概念。

3线性表的定义;线性表的顺序存储结构及其插入与删除运算。

4栈和队列的定义;栈和队列的顺序存储结构及其基本运算。

5线性单链表、双向链表与循环链表的结构及其基本运算。

6树的基本概念;二叉树的定义及其存储结构;二叉树的前序、中序和后序遍历。

7顺序查找与二分法查找算法;基本排序算法(交换类排序,选择类排序,插入类排序)。

二、程序设计基础

1程序设计方法与风格。

2结构化程序设计。

3面向对象的程序设计方法,对象,方法,属性及继承与多态性。

三、软件工程基础

1软件工程基本概念,软件生命周期概念,软件工具与软件开发环境。

2结构化分析方法,数据流图,数据字典,软件需求规格说明书。

3结构化设计方法,总体设计与详细设计。

4软件测试的方法,白盒测试与黑盒测试,测试用例设计,软件测试的实施,单元测试、集成测试和系统测试。

5程序的调试,静态调试与动态调试。

四、数据库设计基础

1数据库的基本概念:数据库,数据库管理系统,数据库系统。

2数据模型,实体联系模型及E-R图,从E-R图导出关系数据模型。

3关系代数运算,包括 运算及选择、投影、连接运算,数据库规范化理论。

4数据库设计方法和步骤:需求分析、概念设计、逻辑设计和物理设计的相关策略。

考试方式

公共基础知识有10道选择题和5道填空题共三十分。

2004年新版NCRE二级C语言程序设计考试大纲

本大纲适用于05年考试

公共基础知识

基本要求

1 熟悉TURBO C集成环境。

2 熟练掌握结构化程序设计的方法,具有良好的程序设计风格。

3 掌握程序设计中简单的数据结构和算法。

4 TURBO C的集成环境下,能够编写简单的C程序,并具有基本的纠错和调试程序的能力。

考试内容

一、C语言的结构

1 程序的构成,MAIN函数和其他函数。

2 头文件,数据说明,函数的开始和结束标志。

3 源程序的书写格式。

4 C语言的风格。

二、数据类型及其运算

1 C的数据类型(基本类型、构造类型、指针类型、空类型)及其定义方法。

2 C运算符的种类、运算优先级和结合性。

3 不同类型数据间的转换与运算。

4 C表达式类型(赋值表达式,算术表达式,关系表达式,逻辑表达式,条件表达式,逗号表达式)和求值规则。

三、基本语句

1 表达式语句,空语句,复合语句。

2 数据的输入与输出,输入输出函数的调用。

3 复合语句。

4 GOTO语句和语句标号的使用。

四、选择结构程序设计

1 用IF语句实现选择结构。

2 用SWITCH语句实现多分支选择结构。

3 选择结构的嵌套。

五、循环结构程序设计

1 FOR循环结构。

2 WHILE和DO WHILE循环结构。

3 CONTINUE语句和BREAK语句。

4 循环的嵌套。

六、数组的定义和引用

1 一维数组和多维数组的定义、初始化和引用。

2 字符串与字符数组。

七、函数

1 库函数的正确调用。

2 函数的定义方法。

3 函数的类型和返回值。

4 形式参数与实在参数,参数值的传递。

5 函数的正确调用,嵌套调用,递归调用。

6 局部变量和全局变量。

7 变量的存储类别(自动,静态,寄存器,外部),变量的作用域和生存期。

8 内部函数与外部函数。

八、编译预处理

1 宏定义:不带参数的宏定义;带参数的宏定义。

2 “文件包含”处理。

九、指针

1 指针与指针变量的概念,指针与地址运算符。

2 变量、数组、字符串、函数、结构体的指针以及指向变量、数组、字符串、函数、结构体的指针变量。通过指针引用以上各类型数据。

3 用指针作函数参数。

4 返回指针值的指针函数。

5 指针数组,指向指针的指针,MAIN函数的命令行参数。

十、结构体(即“结构”)与共用体(即“联合”)

1 结构体和共用体类型数据的定义方法和引用方法。

2 用指针和结构体构成链表,单向链表的建立、输出、删除与插入。

十一、位运算

1 位运算符的含义及使用。

2 简单的位运算。

十二、文件 *** 作

只要求缓冲文件系统(即高级磁盘I/O系统),对非标准缓冲文件系统(即低级磁盘I/O系统)不要求。

1 文件类型指针(FILE类型指针)。

2 文件的打开与关闭(FOPEN,FCLOSE)。

3 文件的读写(FPUTC,FGETC,FPUTS,FGETS,FREAD,FWRITE,FPRINTF,FSCANF函数),文件的定位(REWIND,FSEEK函数)。

考试方式

1 笔试:120分钟,满分100分,其中含公共基础知识部分的30分。

2 上机:60分钟,满分100分。

新版NCRE二级Visual Basic考试大纲

2005年新版NCRE二级Visual Basic考试大纲

公共基础知识

Visual Basic语言程序设计基本要求

1、熟悉Visual Basic集成开发环境。

2、了解Visual Basic中对象的概念和事件驱动程序的基本特性。

3、了解简单的数据结构和算法。

4、能够编写和调试简单的Visual Basic程序。

考试内容

一、Visual Basic程序开发环境

1、Visual Basic的特点和版本。

2、Visual Basic的启动与退出。

3、主窗口:

(1)标题和菜单。

(2)工具栏。

4、其他窗口:

(1)窗体设计器和工程资源管理器。

(2)属性窗口和工具箱窗口。

二、对象及其 *** 作

1、对象:

(1)Visual Basic的对象。

(2)对象属性设置。

2、窗体:

(1)窗体的结构与属性。

(2)窗体事件。

3、控件:

(1)标准控件。

(2)控件的命名和控件值。

4、控件的画法和基本 *** 作。

5、事件驱动。

三、数据类型及其运算

1、数据类型:

(1)基本数据类型。

(2)用户定义的数据类型。

(3)枚举类型。

2、常量和变量:

(1)局部变量与全局变量。

(2)变体类型变量。

(3)缺省声明。

3、常用内部函数。

4、运算符与表达式:

(1)算术运算符。

(2)关系运算符与逻辑运算符。

(3)表达式的执行顺序。

四、数据输入、输出

1、数据输出:

(1)Print方法。

(2)与Print方法有关的函数(Tab、Spc、Space $)。

(3)格式输出(Fomat$)。

2、InputBox函数。

3、MsgBox函数和MsgBox语句。

4、字形。

5、打印机输出:

(1)直接输出。

(2)窗体输出。

五、常用标准控件

1、文本控件:

(1)标签。

(2)文本框。

2、图形控件:

(1)框,图像框的属性,事件和方法。

(2)图形文件的装入。

(3)直线和形状。

3、按钮控件。

4、选择控件:复选框和单选按钮。

5、选择控件:列表框和组合框。

6、滚动条。

7、计时器。

8、框架。

9、焦点与Tab顺序。

六、控制结构

1、选择结构:

(1)单行结构条件语句。

(2)块结构条件语句。

(3)IIf函数。

2、多分支结构。

3、For循环控制结构。

4、当循环控制结构。

5、Do循环控制结构。

6、多重循环。

7.GoTo型控制:

(1) GoTo语句。

(2) On-GoTo语句。

七、数组

1、数组的概念:

(1)数组的定义。

(2)静态数组与动态数组。

2、数组的基本 *** 作:

(1)数组元素的输入、输出和复制。

(2)For EachNext语句。

(3)数组的初始化。

3、控件数组。

八、过程

1、Sub过程:

(1)Sub过程的建立。

(2)调用Sub过程。

(3)通用过程与事件过程。

2、Function过程:

(1)Function过程的定义。

(2)调用Function过程。

3、参数传送:

(1)形参与实参。

(2)引用。

(3)传值。

(4)数组参数的传送。

4、可选参数与可变参数。

5、对象参数:

(1)窗体参数。

(2)控件参数。

九、菜单与对话框

1、用菜单编辑器建立菜单

2、菜单项的控制:

(1)有效性控制。

(2)菜单项标记。

(3)键盘选择。

3、菜单项的增减。

4、d出式菜单。

5、通用对话框。

6、文件对话框。

7、其他对话框(颜色、字体、打印对话框)。

十、多重窗体与环境应用

1、建立多重窗体应用程序。

2、多重窗体程序的执行与保存。

3、Visual Basic工程结构。

(1)标准模块。

(2)窗体模块。

(3)Sub Main过程。

4、闲置循环与DoEvents语句。

十一、键盘与鼠标事件过程

1、KeyPress事件。

2、KeyDown与KeyUp事件。

3、鼠标事件。

4、鼠标光标。

5、拖放。

十二、数据文件

1、文件的结构和分类。

2、文件 *** 作语句和函数。

3、顺序文件:

(1)顺序文件的写 *** 作。

(2)顺序文件的读 *** 作。

4、随机文件:

(1)随机文件的打开与读写 *** 作。

(2)随机文件中记录的增加与删除。

(3)用控件显示和修改随机文件。

5、文件系统控件:

(1)驱动器列表框和目录列表框。

(2)文件列表框。

6、文件基本 *** 作。

考试方式

1、笔试:90分钟,满分100分,其中含公共基础知识部分的30分。

2、上机 *** 作:90分钟,满分100分。

上机 *** 作包括:

(l)基本 *** 作。

(2)简单应用。

(3)综合应用。

二级(Visual FoxPro数据库程序设计)考试大纲

基本要求

1、具有数据库系统的基础知识。

2,基本了解面向对象的概念。

3、掌握关系数据库的基本原理。

4、掌握数据库程序设计方法。

5、能够使用Visual FoxPro建立一个小型数据库应用系统。

考试内容

一、Visual FoxPro基础知识

1、基本概念:

数据库、数据模型、数据库管理系统、类和对象、事件、方法。

2、关系数据库

(l)关系数据库:关系模型、关系模式、关系、元组、属性、域、主关键字和外部关键字。

(2)关系运算:选择、投影、连接。

(3)数据的一致性和完整性:实体完整性、域完整性、参照完整性。

3、 Visual FoxPro系统特点与工作方式:

(1)Windows版本数据库的特点。

(2)数据类型和主要文件类型。

(3)各种设计器和向导。

(4)工作方式:交互方式(命令方式、可视化 *** 作)和程序运行方式。

4、 Visual FoxPro的基本数据元素:

(1)常量、变量、表达式。

(2)常用函数:字符处理函数、数值计算函数、日期时间函数、数据类型转换函数、测试函数。

二、Visual FoxPro数据库的基本 *** 作

1、数据库和表的建立、修改与有效性检验:

(1)表结构的建立与修改。

(2)表记录的浏览、增加、删除与修改。

(3)创建数据库,向数据库添加或移出表。

(4)设定字段级规则和记录级规则。

(5)表的索引:主索引、候选索引、普通索引、唯一索引。

2、多表 *** 作:

(1)选择工作区。

(2)建立表之间的关联:一对一的关联;一对多的关联。

(3)设置参照完整性。

(4)建立表间临时关联。

3、建立视图与数据查询:

(l)查询文件的建立、执行与修改。

(2)视图文件的建立、查看与修改。

(3)建立多表查询。

(3)建立多表视图。

三、关系数据库标推语言SQL

l、SQL的数据定义功能:

(1)CREATE TABLE-SQL。

(2)ALTER TABLE-SQL。

2、SQL的数据修改功能:

(1)DELETE-SQL。

(2)INSERT-SQL。

(3)UPDATE-SQL。

3、SQL的数据查询功能:

(1)简单查询。

(2)嵌套查询。

(3)连接查询。

内连接

外连接:左连接,右连接,完全连接。

(4)分组计算查询。

(5) 的并运算。

四、项目管理器、设计器和向导的使用

1、使用项目管理器:

(1)使用"数据"选项卡。

(2)使用"文档"选项卡。

2、使用表单设计器:

(1)在表单中加入和修改控件对象。

(2)设定数据环境。

3、使用菜单设计器:

(1)建立主选项。

(2)设计子菜单。

(3)设定菜单选项程序代码。

4、使用报表设计器:

(1)生成快速报表。

(2)修改报表布局。

(3)设计分组报表。

(4)设计多栏报表。

5、使用应用程序向导。

6、应用程序生成器与连编应用程序。

五、Visual FoxPro程序设计

1、命令文件的建立与运行:

(1)程序文件的建立。

(2)简单的交互式输入输出命令。

(3)应用程序的调试与执行。

2、结构化程序设计:

(1)顺序结构程序设计。

(2)选择结构程序设计。

(3)循环结构程序设计。

3、过程与过程调用:

(1)子程序设计与调用。

(2)过程与过程文件。

(3)局部变量和全局变量、过程调用中的参数传递。

4、用户定义对话框(MESSAGEBOX)的使用。

考试方式

1、笔试:90分钟,满分100分,其中含公共基础知识部分的30分。

2、上机 *** 作:90分钟,满分100分。

(l)基本 *** 作。

(2)简单应用。

(3)综合应用。

最新二级C++语言程序设计考试大纲

基本要求

1 掌握C++语言的基本语法规则。

2 熟练掌握有关类与对象的相关知识。

3 能够阅读和分析C++程序。

4 能够采用面向对象的编程思路和方法编写应用程序。

5 能熟练使用Visual C++ 60集成开发环境编写和调试程序。

考试内容

一、C++语言概述

1 了解C++语言的基本符号。

2 了解C++语言的词汇(保留字、标识符、常量、运算符、标点符号等)。

3 掌握C++程序的基本框架(结构程序设计框架、面向对象程序设计框架等)。

4 能够使用Visual C++ 60集成开发环境编辑、编译、运行与调试程序。

二、数据类型、表达式和基本运算

1 掌握C++数据类型(基本类型,指针类型)及其定义方法。

2 了解C++的常量定义(整型常量,字符常量,逻辑常量,实型常量,地址常量,符号常量)。

3 掌握变量的定义与使用方法(变量的定义及初始化,全局变量,局部变量)。

4 掌握C++运算符的种类、运算优先级和结合性。

5 熟练掌握C++表达式类型及求值规则(赋值运算,算术运算符和算术表达式,关系运算凸叵当泶锸剑呒怂惴吐呒泶锸剑跫怂悖刚朐怂悖汉疟泶锸剑

三、C++的基本语句

1 掌握C++的基本语句,例如赋值语句、表达式语句、复合语句、输入、输出语句和空语句等。

2 用if语句实现分支结构。

3 用switch语句实现多分支选择结构。

4 用for语句实现循环结构。

5 用while语句实现循环结构。

6 用do…while语句实现循环结构。

7 转向语句(goto,continue,break和return)。

8 掌握分支语句和循环语句的各种嵌套使用。

四、数组、指针与引用

1 掌握一维数组的定义、初始化和访问,了解多维数组的定义、初始化和访问。

2 了解字符串与字符数组。

3 熟练掌握常用字符串函数(strlen,strcpy,strcat,strcmp,strstr等)。

4 指针与指针变量的概念,指针与地址运算符,指针与数组。

5 引用的基本概念,引用的定义与使用。

五、掌握函数的有关使用

1 函数的定义方法和调用方法。

2 函数的类型和返回值。

3 形式参数与实在参数,参数值的传递。

4 变量的作用域、生存周期和存储类别(自动,静态,寄存器,外部)。

5 递归函数。

6 函数重载。

7 内联函数。

8 带有缺省参数值的函数。

六、熟练掌握类与对象的相关知识

1 类的定义方式、数据成员、成员函数及访问权限(public,private,protected)。

2 对象和对象指针的定义与使用。

3 构造函数与析构函数。

4 静态数据成员与静态成员函数的定义与使用方式。

5 常数据成员与常成员函数。

6 this指针的使用。

7 友元函数和友元类。

8 对象数组与成员对象。

七、掌握类的继承与派生知识

1 派生类的定义和访问权限。

2 继承基类的数据成员与成员函数。

3 基类指针与派生类指针的使用。

4 虚基类。

八、了解多态性概念

1 虚函数机制的要点。

2 纯虚函数与抽象基类、虚函数。

3 了解运算符重载。

九、模板

1 简单了解函数模板的定义和使用方式。

2 简单了解类模板的定义和使用方式。

十、输入输出流

1 掌握C++流的概念。

2 能够使用格式控制数据的输入输出。

3 掌握文件的I/O *** 作。

考试方式

1 笔试:90分钟,满分100分,其中含公共基础知识部分的30分。

2 上机 *** 作:90分钟,满分100分。

上机 *** 作包括:

(1) 基本 *** 作。

(2) 简单应用。

(3) 综合应用。

新版Access考试大纲

新版NCRE Access数据库程序设计 语言考试大纲

公共基础知识

Access数据库程序设计

基本要求

1 具有数据库系统的基础知识。

2 基本了解面向对象的概念。

3 掌握关系数据库的基本原理。

4 掌握数据库程序设计方法。

5 能使用Access建立一个小型数据库应用系统。

考试内容

一、数据库基础知识

1 基本概念:

数据库,数据模型,数据库管理系统,类和对象,事件。

2 关系数据库基本概念:

关系模型(实体的完整性,参照的完整性,用户定义的完整性),关系模式,关系,元组,属性,字段,域,值,主关键字等。

3 关系运算基本概念:

选择运算,投影运算,连接运算。

4 SQL基本命令:

查询命令, *** 作命令。

5 Access系统简介:

(1) Access系统的基本特点。

(2) 基本对象:表,查询,窗体,报表,页,宏,模块。

二、数据库和表的基本 *** 作

1 创建数据库:

(1) 创建空数据库。

(2) 使用向导创建数据库。

2 表的建立:

(1) 建立表结构:使用向导,使用表设计器,使用数据表。

(2) 设置字段属性。

(3) 输入数据:直接输入数据,获取外部数据。

3 表间关系的建立与修改:

(1) 表间关系的概念:一对一,一对多。

(2) 建立表间关系。

(3) 设置参照完整性。

4 表的维护:

(1) 修改表结构:添加字段,修改字段,删除字段,重新设置主关键字。

(2) 编辑表内容:添加记录,修改记录,删除记录,复制记录。

(3) 调整表外观。

5 表的其他 *** 作:

(1) 查找数据。

(2) 替换数据。

(3) 排序记录。

(4) 筛选记录。

三、查询的基本 *** 作

1 查询分类:

(1) 选择查询。

(2) 参数查询。

(3) 交表查询。

(4) *** 作查询。

(5) SQL查询。

2 查询准则:

(1) 运算符。

(2) 函数。

(3) 表达式。

3 创建查询:

(1) 使用向导创建查询。

(2) 使用设计器创建查询。

(3) 在查询中计算。

4 *** 作已创建的查询:

(1) 运行已创建的查询。

(2) 编辑查询中的字段。

(3) 编辑查询中的数据源。

(4) 排序查询的结果。

四、窗体的基本 *** 作

1 窗体分类:

(1) 纵栏式窗体。

(2) 表格式窗体。

(3) 主/子窗体。

(4) 数据表窗体。

(5) 图表窗体。

(6) 数据透视表窗体。

2 创建窗体:

(1) 使用向导创建窗体。

(2) 使用设计器创建窗体:控件的含义及种类,在窗体中添加和修改控件,设置控件的常见属性。

五、报表的基本 *** 作

1 报表分类:

(1) 纵栏式报表;

(2) 表格式报表。

(3) 图表报表。

(4) 标签报表。

2 使用向导创建报表。

3 使用设计器编辑报表。

4 在报表中计算和汇总。

六、页的基本 *** 作

1 数据访问页的概念。

2 创建数据访问页:

(1) 自动创建数据访问页。

(2) 使用向导数据访问页。

七、宏

1 宏的基本概念。

2 宏的基本 *** 作:

(1) 创建宏:创建一个宏,创建宏组。

(2) 运行宏。

(3) 在宏中使用条件。

(4) 设置宏 *** 作参数。

(5) 常用的宏 *** 作。

八、模块

1 模块的基本概念:

(1) 类模块。

(2) 标准模块。

(3) 将宏转换为模块。

2 创建模块:

(1) 创建VBA模块:在模块中加入过程,在模块中执行宏。

(2) 编写事件过程:键盘事件,鼠标事件,窗口事件, *** 作事件和其他事件。

3 调用和参数传递。

4 VBA程序设计基础:

(1) 面向对象程序设计的基本概念。

(2) VBA编程环境:进入VBE,VBE界面。

(3) VBA编程基础:常量,变量,表达式。

(4) VBA程序流程控制:顺序控制,选择控制,循环控制。

(5) VBA程序的调试:设置断点,单步跟踪,设置监视点。

考试方式

1 笔试:90分钟,满分100分,其中含公共基础知识部分的30分。

2 上机 *** 作:90分钟,满分100分。

上机 *** 作包括:

(1) 基本 *** 作。

(2) 简单应用。

(3) 综合应用

2004年新版NCRE二级Java语言程序设计 考试大纲

公共基础知识

Java语言程序设计

基本要求

1 掌握Java语言的特点,实现机制和体系结构。

2 掌握Java语言中面向对象的特性。

3 掌握Java语言提供的数据类型和结构。

4 掌握Java语言编程的基本技术。

5 会编写Java用户界面程序。

6 会编写Java简单应用程序。

7 会编写Java小应用程序(Applet)。

8 了解Java的应用。

考试内容

一、Java语言的特点和实现机制

二、Java体系结构

1 JDK目录结构。

2 Java的API结构。

3 开发环境设置。

4 Java程序结构。

三、Java语言中面向对象的特性

1 面向对象编程的基本概念和特征。

2 类的基本组成和使用。

3 对象的生成、使用和删除。

4 接口与包。

5 Java类库的常用类和接口。

四、Java简单数据类型及运算

1 变量和常量。

2 基本数据类型及转换。

3 Java类库中对简单数据类型的类包装。

4 运算符和表达式运算。

5 数组和字符串。

五、Java语言的基本语句

1 表达式语句。

2 条件语句。

3 循环语句。

4 注释语句。

5 异常处理。

六、Java编程技术基础

1 线程的概念和使用。

2 同步与共享。

3 串行化概念和目的。

4 串行化方法。

5 串行化的举例。

6 基于文本的应用。

7 文件和文件I/O。

8 汇集(collections)接口。

七、编写用户界面程序

1 图形用户界面。

2 AWT库简介。

3 Swing简介。

4 AWT与Swing比较。

八、编写小应用程序(Applet)

1 小应用程序概念。

2 安全机制。

3 Applet执行过程。

4 Applet的图形绘制。

5 Applet的窗口。

6 Applet的工作环境。

7 Java Application和Applet。

九、Java的应用

十、J2DK的下载和 *** 作

考试方式

1 笔试:90分钟,满分100分,其中含公共基础知识部分的30分。

2 上机 *** 作:90分钟,满分100分。

上机题目类型要求:

(1) 基本 *** 作。

(2) 简单应用。

3 综合应用

以上就是关于MySQL中如何定义trigger全部的内容,包括:MySQL中如何定义trigger、Mysql 数据库的事件和存储过程的问题、数据库中,触发器和替代触发器的概念一样吗等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10194402.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-06
下一篇 2023-05-06

发表评论

登录后才能评论

评论列表(0条)

保存