sql经典试题

2024-07-17 版权声明 我要投稿

sql经典试题(精选8篇)

sql经典试题 篇1

法一:select * into b from a where 11(仅用于SQlServer)

法二:select top 0 * into b from a

2、说明:拷贝表(拷贝数据,源表名:a 目标表名:b) (Access可用)

into b(a, b, c) select d,e,f from b;

3、说明:跨数据库之间表的拷贝(具体数据使用绝对路径) (Access可用)

into b(a, b, c) select d,e,f from b in ‘具体数据库’ where 条件

例子:..from b in “&Server.MapPath(”.“)&”data.mdb“ &” where..

4、说明:子查询(表名1:a 表名2:b)

select a,b,c from a where a IN (select d from b ) 或者: select a,b,c from a where a IN (1,2,3)

5、说明:显示文章、提交人和最后回复时间

select a.title,a.username,b.adddate from table a,(select max(adddate) adddate from table where table.title=a.title) b

6、说明:外连接查询(表名1:a 表名2:b)

select a.a, a.b, a.c, b.c, b.d, b.f from a LEFT OUT JOIN b ON a.a = b.c

7、说明:在线视图查询(表名1:a )

select * from (SELECT a,b,c FROM a) T where t.a > 1;

8、说明:between的用法,between限制查询数据范围时包括了边界值,not between不包括

select * from table1 where time between time1 and time2

select a,b,c, from table1 where a not between 数值1 and 数值2

9、说明:in 的使用方法

select * from table1 where a [not] in (‘值1’,’值2’,’值4’,’值6’)

10、说明:两张关联表,删除主表中已经在副表中没有的信息

from table1 where not exists ( select * from table2 where table1.field1=table2.field1 )

11、说明:四表联查问题:

select * from a left inner join b on a.a=b.b right inner join c on a.a=c.c inner join d on a.a=d.d where .....

12、说明:日程安排提前五分钟提醒

SQL: select * from 日程安排 where datediff(minute,f开始时间,getdate)>5

13、说明:一条sql 语句搞定数据库分页

select top 10 b.* from (select top 20 主键字段,排序字段 from 表名 order by 排序字段 desc) a,表名 b where b.主键字段 = a.主键字段 order by a.排序字段

具体实现:

关于数据库分页:

declare @start int,@end int

@sql nvar600)

set @sql=’select top’+str(@end-@start+1)+’+from T where rid not in(select top’+str(@str-1)+’Rid from T where Rid>-1)’

exec sp_executesql @sql

注意:在top后不能直接跟一个变量,所以在实际应用中只有这样的进行特殊的处理。Rid为一个标识列,如果top后还有具体的字段,这样做是非常有好处的。因为这样可以避免 top的字段如果是逻辑索引的,查询的结果后实际表中的不一致(逻辑索引中的数据有可能和数据表中的不一致,而查询时如果处在索引则首先查询索引)

14、说明:前10条记录

select top 10 * form table1 where 范围

15、说明:选择在每一组b值相同的数据中对应的a最大的记录的所有信息(类似这样的用法可以用于论坛每月排行榜,每月热销产品分析,按科目成绩排名,等等.)

select a,b,c from tablename ta where a=(select max(a) from tablename tb where tb.b=ta.b)

16、说明:包括所有在 TableA中但不在 TableB和TableC中的行并消除所有重复行而派生出一个结果表

(select a from tableA ) except (select a from tableB) except (select a from tableC)

17、说明:随机取出10条数据

select top 10 * from tablename order by newid()

18、说明:随机选择记录

select newid()

19、说明:删除重复记录

1), from tablename where id not in (select max(id) from tablename group by col1,col2,...)

2),select distinct * into temp from tablename

from tablename

into tablename select * from temp

评价: 这种操作牵连大量的数据的移动,这种做法不适合大容量但数据操作

3),例如:在一个外部表中导入数据,由于某些原因第一次只导入了一部分,但很难判断具体位置,这样只有在下一次全部导入,这样也就产生好多重复的字段,怎样删除重复字段

alter table tablename

--添加一个自增列

add column_b int identity(1,1)

from tablename where column_b not in(

select max(column_b) from tablename group by column1,column2,...)

alter table tablename drop column column_b

20、说明:列出数据库里所有的表名

select name from sysobjects where type=U // U代表用户

21、说明:列出表里的所有的列名

select name from syscolumns where id=object_id(TableName)

22、说明:列示type、vender、pcs字段,以type字段排列,case可以方便地实现多重选择,类似select 中的case。

select type,sum(case vender when A then pcs else 0 end),sum(case vender when C then pcs else 0 end),sum(case vender when B then pcs else 0 end) FROM tablename group by type

显示结果:

type vender pcs

电脑 A 1

电脑 A 1

光盘 B 2

光盘 A 2

手机 B 3

手机 C 3

23、说明:初始化表table1

TRUNCATE TABLE table1

24、说明:选择从10到15的记录

sql经典试题 篇2

电磁感应是高中物理的重点和难点, 也是近年来高考的 热点.《考试说明 》对“楞次定律”的 等级要求 是“Ⅱ”, 对“法拉第 电磁感应定律”的等 级要求也 是“Ⅱ”!其重要性 可见一斑.

导体切割磁感线类 问题是电 磁感应的 重点.本文选取10道“切割类”经典高考真题, 通过对试题的解剖, 推想命题专家在此处命题的切入点, 同时通过本文的分类, 进行“步步高”式的递进分析, 帮助读者获得不同层次的解题感悟, 突破这类试题的解题难关.

从微观角度讲, “切割类”问题中感应电动势产生的动力是导体的运动使其内部自由电荷受到洛伦兹力 (f=qvB) ;从宏观角度看, 这个“动生电动势”符合法拉第电磁感应定律E=ΔΦ/Δt;从方便计算的角度讲, “切割类”问题中产生的电动势适用推导式E=Blv.

一、切割的有效性

【经典高考题一】 (2013·新课标全国卷Ⅰ第17题) 如图1所示, 在水平面 (纸面) 内有三根相同的均匀金属棒ab、ac和MN, 其中ab、ac在a点接触, 构成“V”字形导轨.空间存在垂直于纸面的均匀磁场.用力使MN向右匀速运动, 从图示位置开始计时, 运动中MN始终与∠bac的平分线垂直且和导轨保持良好接触.下列关于回路中电流i与时间t的关系图线, 可能正确的是 ()

【推测命题心理】通过导体的有效切割长度和有效回路的变化, 同时综合闭合电路欧姆定律, 考查考生的推理能力和应用数学知识解决物理问题的能力.

解析:设MN在匀速运动中切割磁场的有效长度为L, ∠bac=2θ, 感应电动 势为E=BLv, 三角形的两边长相等且均为L′=L/2sinθ, 由R=ρl/S可知, 三角形的 总电阻R=ρl/S=ρL+2L′/S=kL (k为常数) , 再由闭合电路欧姆定律得I=E/R=BLv/kL=Bv/k, 是一个常量, 与时间t无关, 所以A选项中的图正确.本题选A.

【经典高考题二】 (2014·山东理 综卷第16题 ) 如图2所示, 一端接有 定值电阻的平行金属轨道固定在 水平面内, 通有恒定电流的长直绝缘导线垂直 并紧靠轨道固定, 导体棒与轨道垂直且接触良好.在向右匀速通过M、N两区的过程中, 导体棒所受安培力分别用FM、FN表示.不计轨道电阻, 以下叙述正确的是 ()

A.FM向右B.FN向左

C.FM逐渐增大D.FN逐渐减小

【推测命题心理】通过导体切割磁感应强度不同的区域, 动生电动势的改变情况, 并综合闭合电路欧姆定律, 考查学生对安培力、平衡力的掌握情况.

解析:由安培定则可知, 通电导线在M、N区产生的磁场方向分别为垂直纸面向外、垂直纸面向里, 越靠近通电导线磁场越强 (如果通过课外阅读知道通电直导线周围的磁场符合规律B=kI/r更好) , 导体棒向右通过M区时, 由右手定则可知产生的电流方向向下, 由左手定则可知FM方向向左, 同理可以判断FN方向向左, 导体棒匀速运动, 由E=BLv, I=E/R, F=BIL可知, FM逐渐增大, FN逐渐减小, 正确选项为BCD.

【经典高考题三】 (2011·海南卷第6题) 如图3所示, EOF和E′O′F′为空间一匀强磁场的边界, 其中EO∥E′O′, FO∥F′O′, 且EO⊥OF;OO′为∠EOF的角平分线, OO′间的距离为L;磁场方向垂直于纸面向里.一边长为L的正方形导线框沿O′O方向匀速通过磁场, t=0时刻恰好位于图示位置规定导线框中感应电流沿逆时针方向时为正则感应电流i与时间t的关系图线可能正确的是 ()

【推测命题心理】通过分析正方形导线框运动过程中切割磁感线的有效长度变化情况, 考查学生应变能力的高低.

解析:需运用E=BLv找出感应电动势随时间变化的情况.其中L为切割磁感线的有效长度 (只有垂直于速度的边才有切割能力, 本题中只有左右两条竖边有切割的可能) .根据右手定则判断出感应电流的方向.

1从开始到左边框到达O′之前, 导线框进入磁场切割磁感线的有效长度 (由几何关系知为2vt) 随时间均匀增加.

根据E=BLv得出感应电动势随时间也均匀增加, 由于电阻不变, 所以感应电流i也随时间均匀增加.根据右手定则判断出感应电流的方向, 结合导线框中感应电流沿逆时针方向时为正, 得出开始为正方向.

2当左边框到达O′之后, 由于进入磁场切割磁感线的有效长度不变, 所以感应电流i不变.

3当左边框到达OO′中点时, 右边框即将进入磁场切割磁感线, 由于左边框的切割磁感线的有效长度在减小, 而右边框切割磁感线有效长度在增大, 而左右边框切割磁感线产生的感应电动势方向相反, 所以整个感应电动势随时间也均匀减小.

4当左边框到达距O点L/4处时, 左右边框切割磁感线的有效长度相等, 此时感应电动势为0, 再往后跟前面过程相反.故选项A、C、D错误, B正确.故本题选B.

【经典高考题四】 (2012·重庆卷 第21题) 如图4所示, 正方形区 域MNPQ内有垂直纸 面向里的 匀强磁场, 在外力作 用下, 一正方形闭合刚性导线框沿QN方向匀速运 动, t=0时刻, 其四个顶点M′、N′、P′、Q′恰好在磁场边界中点.下列图象中能反映线框所受安培力f的大小随时间t变化规律的是 ()

【推测命题心理】切割的两条边含有“反电动势”, 考查学生能否熟练地将“平面几何的数学知识、反电动势的处理、二次函数及图象”综合考虑.

解析:具有切割 意义的两 边是M′N′, P′Q′.如果将P′Q′看成正电动势, 则M′N′为反电动势.设线框边长为L, 电阻为R, 磁感应强度为B;由几何关系知M′N′ (到达N点前) 切割长度为 (L-2vt) , 线圈切割有效总长度为

【经典高考 题五】 (2012·四川卷第20题) 半径为a右端开小口的导体圆环和长为2a的导体直杆, 单位长度电阻均为R0.圆环水平固定放置, 整个内部 区域分布 着竖直向下的 匀强磁场, 磁感应强度为B.杆在圆环上以速度v平行于直径CD向右做匀速直线运动, 杆始终有两点与圆环良好接触, 从圆环中心O开始, 杆的位置由θ确定, 如图5所示.则 ()

【推测命题心理】可以看出命题专家很喜欢创设各种切割情景来选拔学生, 通常的做法是将有效切割长度的确定、数学中的几何知识和函数知识、全电路 欧姆定律 综合在一 起进行命题.

解析:杆的有效切割长度随角度变化关系为L=2acosθ, 由动生电动势E=BLv知A选项正确, B选项错误.

导体棒是电源, 而导体棒左侧圆弧 (右侧圆弧有缺口是断路) 作为外电路, 有

通过计算可知选项D正确.故本题选AD.

二、绕轴转动类扇形切割

【经典高考 题六】 (2012·新课标全国卷第19题) 如图6所示, 均匀磁场 中有一由半圆弧及其直径构成的导线框, 半圆直径与磁场边缘重合;磁场方向垂直于半圆面 (纸面) 向里, 磁感应强度大小为B0.使该线框从静止开始绕过圆心O、垂直于半圆面的轴以角速度ω匀速转动半周, 在线框中产生感应电流.现使线框保持图中所示位置, 磁感应强度大小随时间线性变化.为了产生与线框转动半周过程中同样大小的电流, 磁感应强度随时间的变化率ΔB/Δt的大小应为 ()

【推测命题心理】尽管此题从转动扇面式切割磁感线入手, 但命题专家的初衷是考查学生在“动生电动势”和“感生电动势”互通性方面的处理能力.

解析:为了产生与线框转动半周过程中同样大小的电流, 只要产生 相同的感 应电动势即可.

(1) 磁场不变, 转动扇面切割情况下求动生电动势为

(2) 扇面不动, 磁场变化根据法拉第电磁感应定律求感应电动势为

根据题意可得E1=E2, 得ΔB/Δt=ωB0/π.故本题正确选项为C.

【经典高考题七】 (2014·新课标全国卷Ⅱ第25题) 半径分别为r和2r的同心圆形导轨固定在同一水平面上, 一长为r, 质量为m且质量分布均匀的直导体棒AB置于圆导轨上面, BA的延长线通过圆导轨的中心O, 装置的俯视图如图7所示;整个装置位于一匀强磁场中, 磁感应强度的大小为B, 方向竖直向下;在内圆导轨的C点和外圆导轨的D点之间接有一阻值为R的电阻 (图中未画出) .直导体棒在水平外力作用下以角速度ω绕O逆时针匀速转动, 在转动过程中始终与导轨保持良好接触.设导体棒与导轨之间的动摩擦因数为μ, 导体棒和导轨的电阻均可忽略, 重力加速度大小为g.求:

(1) 通过电阻R的感应电 流的方向 和大小;

(2) 外力的功率.

【推测命题心理】命题专家在此题中设置了多重障碍, 也为学生提供了多种解题角度的平台.环形扇面式切割磁感线既可以用“动生电动势E=BLv”求解, 也可以用“感生电动势E=ΔΦ/Δt”求解.此题还综合考查了力学功率和电学功率.

解析: (1) 导体棒切割磁感线产生的感应电动势大小可以 用“动生电 动势E =BLv”求解, 有

根据右手定则, 感应电流的方向是从B端流向A端, 因此流过导体R的电流方向是从C端流向D端.

(2) 在竖直方向有

mg-2N=0

式中, 由于质量分布均匀, 内外圆导轨对导体棒的压力相等, 其值为N, 两导轨对运动的导体棒的滑动摩擦力均为

根据能量转化和守恒定律, 有

【经典高考 题八】 (2013·广东卷第36题) 如图8所示, 在垂直于匀强磁场B的平面内, 半径为r的金属圆盘绕过圆心O的轴承转 动, 圆心O和边缘K通过电刷与一个电路连接, 电路中的P是加上一定正向电压才能导通的电子元件.流过电流表的电流I与圆盘角速度ω的关系如图9所示, 其中ab段和bc段均为直线, 且ab段过坐标原点.ω>0代表圆盘逆时针转动.已知:R=3.0Ω, B=1.0T, r=0.2m.忽略圆盘、电流表和导线的电阻.

(1) 根据图9写出ab、bc段对应I与ω的关系式;

(2) 求出图9中b、c两点对应的P两端的电压Ub、Uc;

(3) 分别求出ab、bc段流过P的电流IP与其两端电压UP的关系式.

【推测命题心理】命题专家设计本题的出发点是回归教材, 从而达到“源于教材又高于教材”的命题意图.人教社高中物理教材3-2在课后习题中介绍:“1831年, 法拉第在一次会议上展示了他发明的圆盘发电机……”同学们可翻看教材进行比较.

从微观本质上讲, 圆盘转动使内部自由电荷受到洛伦兹力 (f=qvB) ;从方便计算的角度讲, 仍是“切割”类电动势, 适用推导式E=Blv.

解析: (1) 由图可知, 在ab段, 直线斜率为

故对应I与ω的关系式为

在bc段, 直线斜率为

设表达式I=k2ω+b, 把ω=45rad/s, I=0.4A代入解得b=-0.05, 故对应I与ω的关系式为

I=0.01ω-0.05 (15rad/s≤ω≤45rad/s)

(2) b点对应的 转动的角 速度为ω1=15rad/s, 圆盘产生的电动势为

解得E1=0.3V.

由于圆盘、电流表、导线电阻不计, 因此P两端的电压为0.3V.

同理, c点对应的圆盘转动的角速度ω2=45rad/s, 圆盘产生的电动势为

因此P两端的电压为0.9V.

(3) b点处, 定值电阻R中电流IR=U/R=0.1A, 与电流表的示数相等, 说明这时P中电流为零.

因此在ab段有

IP=0

在bc段有

三、导体棒切割磁感线并伴随复杂的受力分析

【经典高考题九】 (2014·安徽卷第23题) 如图10所示, 匀强磁场 的磁感应 强度B为0.5T, 其方向垂直于倾角θ为30°的斜面向上.绝缘斜面上固定有“∧”形状的光滑金属 导轨MPN (电阻忽略不 计) , MP和NP长度均为2.5m, MN连线水平, 长为3m.以MN中点O为原点、OP为x轴建立一维坐标系Ox.一根粗细均匀的金属杆CD, 长度d为3m、质量m为1kg、电阻R为0.3Ω, 在拉力F的作用下, 从MN处以恒定的速度v=1m/s, 在导轨上沿x轴正向运 动 (金属杆与 导轨接触 良好 ) .g取10m/s2.

(1) 求金属杆CD运动过程中产生的感应电动势E及运动到x=0.8m处电势差UCD;

(2) 推导金属杆CD从MN处运动到P点过程中拉力F与位置坐标x的关系式, 并在图11中画出F-x关系图象;

(3) 求金属杆CD从MN处运动到P点的全过程产生的焦耳热.

【推测命题心理】以导体棒切割磁感线为切入点, 综合电磁感应、平面几何、函数及图象、能量转化及守恒等知识, 考查学生的综合能力.

解析: (1) 金属杆CD在匀速运动过程中产生的感应电动势为

E=BLv

代入数据得E=1.5V.当x=0.8m时, 金属杆在导轨间的电势差为零, 设此时杆在导轨外的长度为L外, 则

解得L外 =1.2m.

由楞次定律判断可知D点电势高, 故CD两端电势差UCD=-BL外v, 即UCD=-0.6V.

(2) 杆在导轨间的长度l与位置x关系是

对应的电阻为

杆受的安培力为

F安 =BIl=7.5-3.75x

根据平衡条件得

F=F安 +mgsinθ

即F=12.5-3.75x (0≤x≤2)

画出的F-x图象如图12所示.

【经典高考题十】 (2013·新课标 全国卷Ⅰ第25题) 如图13所示, 两条平行导轨所在平面与水平地面的夹角为θ, 间距为L.导轨上端接有一平行板电容 器, 电容为C.导轨处于匀强磁场中, 磁感应强度大 小为B, 方向垂直于导轨平面.在导轨上 放置一质 量为m的金属棒, 棒可沿导轨下滑, 且在下滑过程中保持与导轨垂 直并良好 接触.已知金属 棒与导轨之间的 动摩擦因 数为μ, 重力加速 度大小为g.忽略所有电阻.让金属棒 从导轨上 端由静止开始下滑, 求:

(1) 电容器极板上积累的电荷量与金属棒速度大小的关系;

(2) 金属棒的速度大小随时间变化的关系.

【推测命题心理】物理学科的高考命题专家往往参与高中物理竞赛命题.此题明显带有竞赛题改编的痕迹 (原题的导轨是竖直放置的) .导体棒切割与电容器相连是此类问题的难点, 往往涉及牛顿第二定律的应用.

解析: (1) 设金属棒下滑的速度大小为v, 则感应电动势为

平行板电容器两极板的电压为U, 有

设此时电容器极板上储存的电荷为Q, 按定义有

联立123式解得

(2) 设金属棒下滑的速度大小为v时经历的时间为t, 通过金属棒的电流为i, 金属棒受到磁场的安培力为F, 方向沿导轨向上, 大小为

设在时间间隔 (t, t+Δt) 内流经金属棒的电荷量为ΔQ, 按定义有

ΔQ也是平行板电容器两极板在 (t, t+Δt) 时间间隔内增加的电荷量, 由4式可得

ΔQ=CBLΔv 7

7式中Δv为金属棒速度的变化量.

按加速度的定义有

a=Δv/Δt8

分析导体棒的受力情况为:受重力mg, 支持力N, 滑动摩擦 力f, 沿斜面向 上的安培力F.

由瑏瑢式及题设可知, 金属棒做初速度为零的匀加速直线运动, t时刻金属棒下滑的速度大小为v, 得

解本题的关键是通过牛顿第二定律的求解得出加速度的表达式是一个与时间无关的物理量.导体棒做匀加速直线运动, 这一问题考生不容易分析出来, 造成该题不容易得分.具体分析过程为:首先要由感应电动势和电容的定义式求解速度大小为v时电容器极板上储存的电荷Q, 这一问不难, 考生较容易解出;其次根据牛顿第二定律列方程, 正确地解出加速度a是一个恒量, 即金属棒做初速为零的匀加速直线运动, 由v=at解出本题的答案.这一问考生对电流的定义、加速度的定义的理解有一定的局限性, 高中阶段不变的情况较多, 用微积分的思想求解的练习题较少, 所以造成大多数考生在这一问不能得分.

新课程遭遇经典试题的尴尬 篇3

教学案例1:重要有机物官能团的性质

在新课程《有机化学基础》选修模块复习中,笔者选了一个所谓的精彩题目,让学生独立思考完成,并把答案写在纸上。

试题1:某有机物A的结构简式如图所示,取Na、NaOH、和新制的Cu(OH)2分别与等物质的量A在一定条件下充分反应,理论上需Na、NaOH、和新制的Cu(OH)2的物质的量之比为______

师:请同学们来谈一谈你选择答案的理由。

生1:因为与Na能反应的官能团有醇羟基、酚羟基和羧基,与NaOH反应的官能团有酚羟基和羧基,而新制的Cu(OH)2能与酚羟基、羧基和醛基反应,根据反应的计量系数关系不难算出答案为3:2:3。

生2:我认为这个答案应是6:4:5,因为生1所讲到的“新制的Cu(OH)2能与酚羟基反应”是不可能的,因为酚的酸性很弱,不可能与难溶的碱Cu(OH)2反应使之溶解。

师:大家仔细考虑,这个答案到底应该是什么?

生3:我认为这个答案应该是3:2:3,我赞同生2的观点,新制的Cu(OH)2不可能与酚羟基反应,但醛基被新制Cu(OH)2氧化后生成的羧基继续与Cu(OH)2反应,所以根据反应的计量系数关系,正确答案应该3:2:3。

(讲到这里,教室里响起了热烈的掌声,老师满意地宣布本题的正确答案为3:2:3,这也是很多参考书中的参考答案。就在此时,一位学生举手示意,想发言。)

师:有什么问题吗?

生4:我看这个答案有问题,不应该是3:2:3。

师:请谈谈你的想法。

生4:新制的Cu(OH)2中有NaOH溶液,有机物与新制的Cu(OH)2反应时,要不要考虑有机物与NaOH溶液反应?如果要考虑,有机物与新制的Cu(OH)2反应时,羧基应该先与NaOH溶液反应,如果NaOH溶液足量,还可以跟醛基被新制Cu(OH)2氧化后生成的羧基反应。这样的话,本题的答案应该是3:2:2。

(学生们感到这个问题的有趣性,急忙开始查找相关的资料。)

生5:生4的观点有一定道理,我已查阅到课本的依据了。苏教版《有机化学基础》第80页中醛与新制的Cu(OH)2溶液反应中,生成的羧基还要与NaOH溶液反应的,所以我认为这个答案应该是3:2:2。

(真是出乎意料,在老教材中,一般是不考虑这个问题的,可是……,同学们议论纷纷。)

师:大家对这个答案还有没有不同的看法?

生6:我看这里面是否还有一些问题值得探讨?

师:什么问题?

生6:在上面的讨论中,在考虑有机物与NaOH反应时,好像没有考虑到NaOH与醇的反应,在我的印象中,课本上曾提到过NaOH能与醇反应,工业上就是用这种方法来制取醇钠的……如果要考虑这个问题,答案是不是又有新的变化?

(课后同学们查阅了相关资料,的确有这样的说法,见苏教版《有机化学基础》第68页:工业上,乙醇钠可由乙醇与氢氧化钠反应制得,如何理解这句话的含义?笔者曾在宁波慈溪和象山有关中学调研时,曾有许多教师提出了自己的看法,认为这句话没有必要在教材中出现。否则引起学生对知识的误解。)

生7:我认为羧基与NaOH溶液反应后生成的羧酸钠在一定条件下还会继续与NaOH反应(脱羧反应),如果要考虑这一反应,那么答案是什么呢?

(虽然下课铃声已响起,但同学们讨论的热度似乎还在升温,这个答案到底是什么,结果已不重要了,重要的是這节课学生到底获得了什么?)

案例评析

此题选自20世纪90年代初各种复习用书上非常流行的一个经典题目,此题考查学生对官能团的结构和性质的认识,体现了“结构决定性质”这一重要的化学思想。从统计情况来看,此题主要有两种答案,一种答案是6:4:5,另一种答案为3:2:3,也是参考书中的答案。前者虽没有考虑酚羟基与新制氢氧化铜反应,但忽视了醛基被氧化后的羧酸后与新制氢氧化铜的后续反应,后者却在两种不同思路背景下得出相同的答案。本题的精彩之处不在于此,而在于课堂教学中学生所提到的后面的其他答案。为什么会有多种答案呢?这就是新课程遭遇经典试题的尴尬之处。其中最根本的原因就在于不同阶段不同版本教材对知识的要求是不相同的。下面从两个方面进行对比分析:

由上面分析可知,不同阶段的教材对相同内容的知识要求是不同的,如实验室制取甲烷的反应除在1987年版的高级中学课本(下册)中有要求外,其他教材均未涉及。关于氢氧化铜与醛基的反应的实验三种教材均有涉及,但在实验内容的叙述、化学实验的条件及化学反应式的表达上存在着一定的差异。正是由于这样的原因,导致该题答案的不确定性也就可以理解了。笔者认为,此题作为课堂练习,让学生从不同的角度开放性思考问题是有益处的,但对于考试题的选择是否适合值得研究。

教学案例2:电解饱和食盐水制取氯气

投影试题:海洋是一座巨大的宝藏,海水中蕴含80多种元素。氯碱工业和金属镁的制备原料都来自于海水。

I.在氯碱工业中,曾用石棉隔膜电解槽来电解食盐水(如下图1所示)

(1)写出两极电极反应式,阳极 ________ ,阴极_______;

(2)图1中a和b分别是_______、_________;

(3)石棉隔膜的作用________。

Ⅱ.随着科技的发展,电解工艺不断革新,电解效率和产品纯度得到提高。20世纪80年代起,隔膜法电解工艺逐渐被离子膜电解技术取代。

(4)离子膜电解槽(如图2)中⑥、⑦分别是_________、_________。

(5)已知一个电子的电量是1.602×10-19C,在离子膜电解饱和食盐水时通过电子1.929×105 C,则产生氯气________mol,氢气________L(在标准状况下),NaOH________g。

(5分钟后,教师把相关学生的答案在实物投影仪上展示。)

生1:(1)阳极:2Cl--2e-=Cl2↑,阴极:2H++2e-=H2↑

生2:(2)饱和NaCl溶液、NaOH和NaCl溶液

生3:(3)阻止气体通过

生4:(4)NaOH溶液、Na+

生5:(5)122.480

师:对以上答案有疑问吗?

生(齐):没有……

案例评析

本题是高一学生在学了苏教版化学1专题2“氯气的生产原理”这一内容后,教师选择的一道练习试题,本题选自衢州市2009年高一化学竞赛试题。从学生反馈信息的情况来看,学生对相关知识掌握的情况是不错的,令我们担忧的是,这样不错的背后却隐藏着教师违背新课程背景下知识分层教学,螺旋上升的教学思想。教师如此选题,对于高一新生而言,显然是加重了学生的负担。笔者选取了苏教版06年版(第3版)和苏教版09年版(第5版)的教材作了详细的对照,发现存在着一定的差异,首先在内容上,06年版的教材,在“观察与思考”栏目中,完成电解饱和食盐水实验后,以表格的形式让学生填写有关实验现象和结论。而在09年版的教材中则直接给出实验的结论。06年版教材在“拓展视野”栏目中给出了“离子交换膜电解食盐水”的阳离子交换膜电解槽,并对其原理作了简单介绍。而在09年版的教材中却完全没有交待。其次在要求上,不同阶段对电解饱和食盐水的要求是不同的。从整个高中化学教材的体系来看,至少有三个地方出现了相关内容,其要求见表3。

由表3不难看出,教师在选题时,对电极反应式的书写以及有关离子膜电解槽中有关问题的考查,在这里显然是超要求的。

在教学实践中,我们发现教师最大的困惑就是无法控制好这个“度”的问题。在化学1中讲到这一内容时,给学生介绍电极反应式的书写,在化学2中讲到这一内容时,却去讲离子放电顺序,导致这样的结果是,课时严重不够,为了解决这一问题,有些学校只好增加课时,学生的负担加重,学生学习化学积极性受到了极大的伤害。在此,我们姑且不去评论“为高考而教”的是非功过。退一步说,就是为了高考而在化学必修课程中采取揠苗助长的做法也是十分不妥的,与新课程的理念是背道而驰的。

结语

美国著名数学教育家波利亚指出:“一个专心备课的教师能拿出一个有意义的但不是复杂的题目,去帮助学生发展问题的各个方面,使得通过这道题,就好像通过一道门户,把学生引入一个完整的领域。”化学习题的选择与编制是高中化学教学设计的一个环节,是中学化学教师专业能力的一项重要指标,也是化学教师专业发展的一条重要途径。它是应用系统理论,传播学理论和学习理论对习题设计过程中各要素进行整合、合理安排和计划的过程,是提高教学质量、作业质量、作业效率的一项重要工作。它的评价内容和方式在很大程度上反映了命题者的教学理念,也直接影响着学生的学习方式和学习效果以及终身发展。《化学教学》杂志开辟了一个“好题赏析”栏目,每期提供一个好题,从命题意图、试题点评、解题思路等视角,让读者感受化学试题的魅力。也为每位教师编制试题提供了丰富的素材和经验,为教师的专业提升搭建了良好的发展平台。

在新课程背景下的试题选择和编制,要勇于反思经典试题的不足和传统评价的弊端,要在一般通用原则的基础上,突出内容的科学性,题材的真实性、过程的探究性、能力的层次性、结论的开放性、问题的应用性、形式的多样性等原则。习题的编制不只是一种技术活动,更是教育观念的洗礼和教学价值的更新。

滑轮经典试题1 篇4

1

1 . 如 图 所 示,重 600N 的 人 站 在 重 5400N 的 船 上,通 过 滑 轮 把 船 匀 速 拉 向 岸 边 . 人 拉 绳 的 力 为 500N,人 和 船 相 对 静 止 . 不 计 绳 重 和 滑 轮 处 摩 擦,船 受 到 水 的 阻 力 为(A . 500N B . 1000N C . 2500N)

2 . 如 图 所 示,重 500N 的 人 站 在 重 2500N 的 船 上,用 滑 轮 组 把 船 匀 速 拉 向 岸 边,人 和 船 相 对 静 止 . 船 受 到 水 的 阻 力 为 1200N . 不 计 绳 重 和 滑 轮 轴 摩 擦,人 拉 绳 的 力 为(A . 300N B . 400N C . 700N)

3. 如图所示的装置中,重 600N 的 人 用 力 拉 绳,使装置处于静止. 装 置 中 的 滑 论 A 重 500N,滑 轮 B 重 200N,底 板 C 重 100N . 不 计 轴 摩 擦 及 绳 重,人 对 底 板 C 的 压 力 为

N.

4 .如 图 所 示,木 板 和 木 板 上 的 人 通 过 滑 轮 组 静 止 于 空 中,已 知 滑 轮 A 的 质 量 m A 和 滑 轮 B 的 质 量 m B 均 为 5kg,木 板 质 量 M=10kg,人 的 质 量 m=30kg,不 计 摩 擦 与 空 气 作 用 力.各个滑轮两侧的细绳(不计质量)均处于竖直状态,求此时人拉绳的力为多

大.(g=10N/kg)


c经典笔试题 篇5

#include

#include

void BubbleSort(int arr, int n)

{

int i,j;

int exchange = 1;//交换标志,提高算法效率;

int temp;

for(i=0;i

{

exchange=0;//本趟排序开始前,交换标志应为假

for(j=0;j

{

if(arr[j+1] > arr[j])

{

temp=arr[j+1];

arr[j+1]=arr[j];

arr[j]=temp;

exchange=1; //发生了交换,故将交换标志置为真

}

}

if(!exchange) //本趟排序未发生交换,提前终止算法

return;

}

}

int main(int argc,char* argv)

{

int arr[5]={1,4,2,6,5};

int i;

BubbleSort(arr, 5);

printf(“after sort,arr is :n”);

for(i=0;i<5;i++)

{

printf(“%3d”,arr[i]);

}

return 1;

外企面试经典试题及答案 篇6

多年以来,外企一直是众多大学生向往的工作地点。但是,对应届大学生来说,由于他们中的大多数不熟悉外企的价值体系,从而在面试中处于一种相当被动的地位。因此,我们特地摘编了一些国外面对大学生求职培训的经典试题和常见答案,并给出仔细的分析,为大学生的外企面试提供一个有效的训练。

在下面,我们将列出一些外企常问的问题,并给出一些供选择的答案,你可以加以选择,然后对照我们的答案分析,找出自己的不足,对外企的面试有一个更加深入的了解。更重要的是,通过这种训练,你要努力找出在这些问题后面的逻辑,而这种逻辑对你成功地应聘外企至关重要。

【问题】

1,为什么你是这份工作的最佳人选?

a)我干过不少这种职位,我的经验将我帮助我胜任这一岗位。.b)我干什么都很出色。

c)通过我们之间的交流,我觉得这里是一个很好的工作地点。

d)你们需要可以生产出“效益”的人,而我的背景和经验符合这方面的要求。

2,如果你被问到一个判断性问题,例如:你有没有创造性?你能不能在压力下工作?最好的答案是什么?

a)回答“是”或“否”。

b)回答“是”或“否”,并给出一个具体的例子。

c)回答“是”或“否”,并做进一步的解释。

3,描述一下你自己。

a)列举自己的个人经历,业余兴趣爱好等。

b)大肆宣扬一下自己良好的品德和工作习惯。

c)列举3个自己的性格与成就的具体案例。

4,你期望在这个职位中找到什么?

a)我想找到一个好机会,使得我可以运用自己的知识为公司发展做出贡献,同时也能为自己创造进一步的机会。

b)我想找到一个可以认同我的努力和工作成果的公司。

c)我想找到一个可以提供给我足够薪水的公司。我的工作很努力,值得给我那么多钱。

5,对我们公司都知道些什么?

a)我事先看过一些贵公司的介绍,就我所知贵公司……

b)我看过和听过的关于贵公司的一切都深深地吸引着我想加入这个团队。我知道这个行业是……,你们的客户是……。我最感兴趣的还有你们是…… d)关于你们公司,我知道很多,我喜欢在你们公司工作。

6,你有什么弱点?

a)我的同事们什么事都抱怨的时候我总是很有挫折感。

b)我不大看重个人名誉。对我来说,只要把事情做好,我不在乎谁得到名声。

c)我不觉得自己有弱点。

7,你的短期目标是什么?

a)短期内我只想得到一份工作。

b)我已经有很多欠账了,所以短期内我想找到一份工作,然后尽我应有的责任。

c)短期内我想找到一份适合自己的工作,对公司做出自己的贡献。今天我们谈的这份工作看起来是一个好机会,您能告诉我这份工作更详细的情况吗?

8,5年之后你会在什么地方?

a)我还没想那么远,但是我真的想得到这份工作。

b)如果选定的话,我会在公司的工作中不断地学习,在5年内和5年后尝试不同的岗位。我希望能在这样的公司里开始我的职业生涯。

c)在远期,我会开一家自己的公司。

9,你对薪水的要求是什么?

a)我觉得我至少值年薪6万。

b)我觉得薪水可以协商。贵公司在员工待遇上声誉一向不错,我相信我的待遇也不会差。

c)钱对我来说并不重要,工作环境才是最重要的。

1,为什么你是这份工作的最佳人选?

a)错误。经验是好的,但“很多相同职位”也许更让人觉得你并不总能保证很好的表现。

b)错误。很自信的回答,但是过于傲慢。对于这种问题合适的案例和谦虚更重要。

c)错误。这对雇主来说是一个很好恭维,但是对于自我为中心了,答非所问。应该指出你能为雇主提供什么。

d)最佳答案。回答问题并提供案例支持在这里是最好的策略。

2,如果你被问到一个判断性问题,例如:你有没有创造性?你能不能在压力下工作?最佳答案是什么呢?

a)错误。没有支持的答案总是显得不可信。即使是这种只需要回答“是”或“否”的问题也需要具体的解释。

b)最佳答案。一个简短的具体安全可以很好地支持你的答案,同时,也能表明你的自信和真诚。

c)错误。具体案例可以更简单有力地说明你的能力。在解释的时候,人们往往会跑题,夹杂不清。同时,最好不要用《应聘指南》之类上面的“经典”套话,那会让你像个“职业”应聘的。

3,描述一下你自己。

a)错误,一般来说,招聘者更想通过这个问题了解你的习惯和行为方式。个人的详细资料对他们来说没有任何意义。

b)自大并不能让你从竞争中脱颖而出。回答完问题以后,你必须得到招聘者的信任并让他/她记住你。这样的宣扬并不成功。

c)最佳答案。案例是你能力最好的证据。一个清晰简明有力的案例能让你从人群脱颖而出,给招聘者留下好印象。因此,在面试以前最好考虑一下这份工作需要自己什么样的品质,做好准备。

4,你期望在这个职位中找到什么?

a)最佳答案。这个答案展示了你的雄心壮志及愿意为好机会努力工作的品质。这个答案充满了信心和能量。

b)错误。这个答案显得有些一相情愿意,招聘者也许会怀疑你日后为公司的好处(而不是为了你的个人实现)努力工作的可能性。

c)错误。尽管我们工作在一定程度上是为了钱,但在面试中需要更好的处理。大部分招聘者寻找的是可以努力工作的员工并完成业绩的员工。过分强调收入在招聘中一般不会有好结果。

5,你对我们公司都知道些什么?

a)错误。这种描述方式显得你对自己所知的不太有信心,而且给跑题留下了大量的空间。

b)最佳答案。尽管要说得这么准确需要好好准备一下,但是会使你的面试受益匪浅。

c)错误。这显得你对该公司什么都不知道。在面试中,充分的准备是无可替代的。

6,你有什么弱点?

a)最佳答案。这个总是很圆滑地表现出你关注并且评价他人表现的能力。同时,也显示了你有很好的批评技巧,这对什么职位都重要。

b)错误。这显得你不大重视别人,过分看重结果,并且不大可能有很强的能力帮助他人发展。

c)错误。弱点也是了解一个人价值的重要方式,这种一维的答案很可能使得你忽略了招聘者想要的东西。

7,你的短期目标是什么?

a)错误。很久以来这样就行不通了。

b)错误。这有可能是真实情况,但是没有公司会希望他的员工仅仅和公司是赤裸裸的金钱关系,而跟公司的长期目标没有关系。而且,公司并不喜欢有很多债务问题的员工。

c)最佳答案。这个答案结合了“贡献”和“索取”两个方面,并重新回到了对这份工作的讲座上面来。

8,5年之后你会在什么地方?

a)错误。这个问题也许很容易将招聘者“吓跑”。

b)最佳答案。这个答案显示了你追求“上进”的一面,又表现出你明白提升的过程是受多种因素影响的,而不会急功近利。同时,这个答案暗示了你将安于一家公司,而这正是招聘者喜欢的。

c)错误。这将暗示你将通过这份工作学习,然后很有可能成为这家公司的竞争者。为什么公司会培养一个竞争者?

9,你对薪水的要求是什么?

a)错误。原因同

4、c),在面试中我们总是应该更精巧地处理金钱问题。b)最佳答案。这很好地显示了你愿意为该公司工作的意愿。

sql经典试题 篇7

教学案例1:重要有机物官能团的性质

在新课程《有机化学基础》选修模块复习中,笔者选了一个所谓的精彩题目,让学生独立思考完成,并把答案写在纸上。

试题1:某有机物A的结构简式如图所示,取N a、N a O H、和新制的C u (O H) 2分别与等物质的量A在一定条件下充分反应,理论上需N a、N a O H、和新制的C u (O H) 2的物质的量之比为______

师:请同学们来谈一谈你选择答案的理由。

生1:因为与N a能反应的官能团有醇羟基、酚羟基和羧基, 与N a O H反应的官能团有酚羟基和羧基, 而新制的C u (O H) 2能与酚羟基、羧基和醛基反应, 根据反应的计量系数关系不难算出答案为3:2:3。

生2:我认为这个答案应是6:4:5,因为生1所讲到的“新制的C u (O H) 2能与酚羟基反应”是不可能的,因为酚的酸性很弱,不可能与难溶的碱C u (O H) 2反应使之溶解。

师:大家仔细考虑,这个答案到底应该是什么?

生3:我认为这个答案应该是3:2:3,我赞同生2的观点,新制的C u (O H) 2不可能与酚羟基反应,但醛基被新制C u (O H) 2氧化后生成的羧基继续与C u (O H) 2反应,所以根据反应的计量系数关系,正确答案应该3:2:3。

(讲到这里,教室里响起了热烈的掌声,老师满意地宣布本题的正确答案为3:2:3,这也是很多参考书中的参考答案。就在此时,一位学生举手示意,想发言。)

师:有什么问题吗?

生4:我看这个答案有问题,不应该是3:2:3。

师:请谈谈你的想法。

生4:新制的C u (O H) 2中有N a O H溶液,有机物与新制的C u (O H) 2反应时,要不要考虑有机物与N a O H溶液反应?如果要考虑,有机物与新制的C u (O H) 2反应时,羧基应该先与N a O H溶液反应,如果N a O H溶液足量,还可以跟醛基被新制C u (O H) 2氧化后生成的羧基反应。这样的话,本题的答案应该是3:2:2。

(学生们感到这个问题的有趣性,急忙开始查找相关的资料。)

生5:生4的观点有一定道理,我已查阅到课本的依据了。苏教版《有机化学基础》第80页中醛与新制的C u (O H) 2溶液反应中,生成的羧基还要与N a O H溶液反应的,所以我认为这个答案应该是3:2:2。

(真是出乎意料,在老教材中,一般是不考虑这个问题的,可是……,同学们议论纷纷。)

师:大家对这个答案还有没有不同的看法?

生6:我看这里面是否还有一些问题值得探讨?

师:什么问题?

生6:在上面的讨论中,在考虑有机物与N a O H反应时,好像没有考虑到N a O H与醇的反应,在我的印象中,课本上曾提到过N a O H能与醇反应,工业上就是用这种方法来制取醇钠的……如果要考虑这个问题,答案是不是又有新的变化?

(课后同学们查阅了相关资料,的确有这样的说法,见苏教版《有机化学基础》第68页:工业上,乙醇钠可由乙醇与氢氧化钠反应制得,如何理解这句话的含义?笔者曾在宁波慈溪和象山有关中学调研时,曾有许多教师提出了自己的看法,认为这句话没有必要在教材中出现。否则引起学生对知识的误解。)

生7:我认为羧基与N a O H溶液反应后生成的羧酸钠在一定条件下还会继续与N a O H反应(脱羧反应),如果要考虑这一反应,那么答案是什么呢?

(虽然下课铃声已响起,但同学们讨论的热度似乎还在升温,这个答案到底是什么,结果已不重要了,重要的是这节课学生到底获得了什么?)

案例评析

此题选自20世纪90年代初各种复习用书上非常流行的一个经典题目,此题考查学生对官能团的结构和性质的认识,体现了“结构决定性质”这一重要的化学思想。从统计情况来看,此题主要有两种答案,一种答案是6:4:5,另一种答案为3:2:3,也是参考书中的答案。前者虽没有考虑酚羟基与新制氢氧化铜反应,但忽视了醛基被氧化后的羧酸后与新制氢氧化铜的后续反应,后者却在两种不同思路背景下得出相同的答案。本题的精彩之处不在于此,而在于课堂教学中学生所提到的后面的其他答案。为什么会有多种答案呢?这就是新课程遭遇经典试题的尴尬之处。其中最根本的原因就在于不同阶段不同版本教材对知识的要求是不相同的。下面从两个方面进行对比分析:

由上面分析可知,不同阶段的教材对相同内容的知识要求是不同的,如实验室制取甲烷的反应除在1987年版的高级中学课本(下册)中有要求外,其他教材均未涉及。关于氢氧化铜与醛基的反应的实验三种教材均有涉及,但在实验内容的叙述、化学实验的条件及化学反应式的表达上存在着一定的差异。正是由于这样的原因,导致该题答案的不确定性也就可以理解了。笔者认为,此题作为课堂练习,让学生从不同的角度开放性思考问题是有益处的,但对于考试题的选择是否适合值得研究。

教学案例2:电解饱和食盐水制取氯气

投影试题:海洋是一座巨大的宝藏,海水中蕴含80多种元素。氯碱工业和金属镁的制备原料都来自于海水。

I.在氯碱工业中,曾用石棉隔膜电解槽来电解食盐水(如下图1所示)

(1)写出两极电极反应式,阳极________,阴极_______;

(2) 图1中a和b分别是_______、_________;

(3)石棉隔膜的作用________。

Ⅱ.随着科技的发展, 电解工艺不断革新, 电解效率和产品纯度得到提高。20世纪80年代起, 隔膜法电解工艺逐渐被离子膜电解技术取代。

(4)离子膜电解槽(如图2)中 (6) 、 (7) 分别是_________、_________。

(5)已知一个电子的电量是1.602×10-19C,在离子膜电解饱和食盐水时通过电子1.929×105C,则产生氯气________m ol,氢气________L(在标准状况下),N a O H________g。

(5分钟后,教师把相关学生的答案在实物投影仪上展示。)

生1: (1)阳极:2C l--2e-=C l2↑,阴极:2H++2e-=H2↑

生2: (2)饱和NaCl溶液、NaOH和NaCl溶液

生3: (3)阻止气体通过

生4: (4) NaOH溶液、Na+

生5: (5) 1 22.4 80

师:对以上答案有疑问吗?

生(齐):没有……

案例评析

本题是高一学生在学了苏教版化学1专题2“氯气的生产原理”这一内容后,教师选择的一道练习试题,本题选自衢州市2009年高一化学竞赛试题。从学生反馈信息的情况来看,学生对相关知识掌握的情况是不错的,令我们担忧的是,这样不错的背后却隐藏着教师违背新课程背景下知识分层教学,螺旋上升的教学思想。教师如此选题,对于高一新生而言,显然是加重了学生的负担。笔者选取了苏教版06年版(第3版)和苏教版09年版(第5版)的教材作了详细的对照,发现存在着一定的差异,首先在内容上,06年版的教材,在“观察与思考”栏目中,完成电解饱和食盐水实验后,以表格的形式让学生填写有关实验现象和结论。而在09年版的教材中则直接给出实验的结论。06年版教材在“拓展视野”栏目中给出了“离子交换膜电解食盐水”的阳离子交换膜电解槽,并对其原理作了简单介绍。而在09年版的教材中却完全没有交待。其次在要求上,不同阶段对电解饱和食盐水的要求是不同的。从整个高中化学教材的体系来看,至少有三个地方出现了相关内容,其要求见表3。

由表3不难看出,教师在选题时,对电极反应式的书写以及有关离子膜电解槽中有关问题的考查,在这里显然是超要求的。

在教学实践中,我们发现教师最大的困惑就是无法控制好这个“度”的问题。在化学1中讲到这一内容时,给学生介绍电极反应式的书写,在化学2中讲到这一内容时,却去讲离子放电顺序,导致这样的结果是,课时严重不够,为了解决这一问题,有些学校只好增加课时,学生的负担加重,学生学习化学积极性受到了极大的伤害。在此,我们姑且不去评论“为高考而教”的是非功过。退一步说,就是为了高考而在化学必修课程中采取揠苗助长的做法也是十分不妥的,与新课程的理念是背道而驰的。

结语

美国著名数学教育家波利亚指出:“一个专心备课的教师能拿出一个有意义的但不是复杂的题目,去帮助学生发展问题的各个方面,使得通过这道题,就好像通过一道门户,把学生引入一个完整的领域。”化学习题的选择与编制是高中化学教学设计的一个环节,是中学化学教师专业能力的一项重要指标,也是化学教师专业发展的一条重要途径。它是应用系统理论,传播学理论和学习理论对习题设计过程中各要素进行整合、合理安排和计划的过程,是提高教学质量、作业质量、

作业效率的一项重要工作。它的评价内容和方式在很大程度上反映了命题者的教学理念,也直接影响着学生的学习方式和学习效果以及终身发展。《化学教学》杂志开辟了一个“好题赏析”栏目,每期提供一个好题,从命题意图、试题点评、解题思路等视角,让读者感受化学试题的魅力。也为每位教师编制试题提供了丰富的素材和经验,为教师的专业提升搭建了良好的发展平台。

sql经典试题 篇8

关键词 嵌入式SQL 预编译程序 动态连接库

中图分类号:TP312 文献标识码:A

0 引言

在通常的运用中,SQL语言是作为独立语言在终端交互方式下使用的,是非过程性的,其大多数语句都是独立执行,与上下文无关,称作自含式语言;而许多事务处理应用都是过程性的,需要根据不同的条件来执行不同的任务,如果把SQL语言嵌入到诸如C语言这样的过程化的编程语言中,程序开发人员就能设计出更加灵活的应用系统,具有SQL语言和高级编程语言的良好特征,它将比单独使用SQL或C语言具有更强的功能和灵活性,这种方式下使用的SQL语言称为嵌入式SQL语言。

在计算机专业课程《数据库系统概论》中有关于嵌入式SQL语言的内容,其教学手段一般都是理论讲述,教学效果不是十分理想。下面介绍一种在现有条件下都能办到的嵌入式SQL语言实现方法。

1 在VC中使用嵌入式SQL语言访问Microsoft SQL Server 2000

1.1 使用嵌入式SQL语言所采用的系统配置

①操作系统:Windows 2000 Professional

②Microsoft Visual C++ 6.0

③Microsoft SQL Server 2000

在安装Microsoft SQL Server 2000 时要注意选择安装Development Tools,为使用嵌入式SQL语言准备必要的头文件和库文件。

1.2 编辑嵌入式SQL程序

使用文本编辑器如记事本编辑嵌入式SQL程序,其存盘文件的扩展名为"sqc"。在嵌入式SQL程序中嵌入的SQL语句以EXEC SQL作为起始标识,语句的结束以";"作为标识。在嵌入的SQL语句中可以使用C语言的程序变量(即主变量),这时主变量名前加冒号(:)作为标志,以区别于字段名。主变量的声明必须包含在"EXEC SQL BEGIN DECLARE SECTION; "和"EXEC SQL END DECLARE SECTION; "之间。以下是一个嵌入式SQL程序demo.sqc:

#include

void main()

{

EXEC SQL BEGIN DECLARE SECTION;

char first_name[50];

char last_name[] = "White";

EXEC SQL END DECLARE SECTION;

EXEC SQL CONNECT TO my_server.pubs

USER my_login.my_password;

EXEC SQL SELECT au_fname INTO :first_name

FROM authors WHERE au_lname = :last_name;

EXEC SQL DISCONNECT ALL;

printf("first_name: %s\n", first_name);

}

此C语言程序中嵌入了SQL语句,用来访问数据库服务器my_server中的数据库pubs,登录名my_login,口令my_password,在表authors中检索姓"White"的作者的名,并存入主变量first_name,然后通过printf函数输出结果。

1.3 预编译嵌入式SQL程序

Microsoft SQL Server 2000提供的预编译程序nsqlprep.exe,用于对嵌入式SQL程序进行预编译处理,生成C语言源程序。实际上就是将嵌入式SQL程序中的嵌入式SQL语句替换为对运行时库文件Sqlakw32.dll的函数调用,接着运行时库文件调用动态连接库Ntwdblib.dll通过网络来存取Microsoft SQL Server 2000数据库服务器。

预编译程序nsqlprep的常用语法为:

nsqlprep ESQL_File /SQLACCESS /DB server_name.database_name /PASS login.password

其中ESQL_File是要预编译的嵌入式SQL程序;/SQLACCESS通知nsqlprep 自动地为嵌入式SQL程序中的静态SQL语句创建相应的存储过程;/DB server_name.database_name指明要连接的服务器以及数据库名称;/PASS login.password给出登录名及相应的口令。对于demo.sqc的预编译命令为:

nsqlprep demo /SQLACCESS /DB my_server.pubs /PASS my_login.my_password

经预编译处理后即可产生C语言源程序demo.c

1.4 配置VC++ 6.0 中的Project Settings

为了编译、连接nsqlprep生成的C语言源程序,需要增加必要的访问路径到VC++ 6.0 的环境设置中:

①选择菜单Tools中的菜单项Options

②选择Directories标签页

③在"Show directories for"下拉框中选择"Include files",增加Microsoft SQL Server 2000 开发所需头文件的路径:C:\Program Files\Microsoft SQL Server\80\Tools\DevTools\Include

④在"Show directories for"下拉框中选择"Library files",增加Microsoft SQL Server 2000 开发所需库文件的路径:C:\Program Files\Microsoft SQL Server\80\Tools\DevTools\LIB

1.5 生成访问Microsoft SQL Server 2000数据库的可执行程序

在VC++ 6.0 中创建一个"WIN32 Console Application"类型的Project,选择菜单Project中菜单项Add to Project的子项Files,将第三步中生成的C语言源程序demo.c添加到此Project中,然后编译、连接即可生成访问Microsoft SQL Server 2000数据库的可执行程序:demo.exe,运行的输出结果为:Johnson;这与使用交互式查询工具Query Analyzer检索的结果是一致的。至此,一个在VC++ 6.0中使用嵌入式SQL语言访问Microsoft SQL Server 2000数据库的应用已经开发完成。

2 结束语

本文探讨了Microsoft SQL Server 2000中的ESQL/C编程,并介绍了在常用编程软件VC++ 6.0 中嵌入式SQL程序设计的实现方法。在嵌入式SQL语言的课堂教学中,使用该方法,获得了良好的教学效果。

上一篇:幼儿园班主任毕业感言下一篇:在某某公司项目开工仪式上的讲话