文档库 最新最全的文档下载
当前位置:文档库 › 中创软件招聘试题.txt

中创软件招聘试题.txt

选择题

1、下列哪个标志符不正确

(A)@name (B) #table (C)deptname (D)@user name



2、T-SQL 游标一次可以提取几行记录

(A)1 (B) 多行 (C) A、B都行



3、下面声明游标的说法哪个不正确

(A)可以在CURSOR关键字左边指定其他关键字 (B) 可以在CURSOR关键字右边指定其他关键字

(C)可以同时在CURSOR关键两边指定其他关键字 (D)不能同时在CURSOR关键两边指定其他关键字



4、下面哪个说法正确

(A)在函数内可以基本表执行insert、update、delete操作。

(B)存储过程除了可以使用output类型参数返回值外,自身也能返回值。

(C)在函数内可以用游标的FETCH NEXT将数据返回客户端。

(D)存储过程的参数类型可以是除游标类型之外的所有类型。





5、下面哪个不正确

(A) 一个基本表即可有After触发器,也可以有instead of触发器

(B) 一个基本表可以包含多个同类型的After触发器(如after update触发器)

(C) 一个基本表可以包含多个after、instead of触发器

(D) after 触发器不允许在 inserted 和 deleted 表中引用 text、ntext 和 image 列





问答题

1、请按“yyyy-MM-dd hh:mm”和“yyyyMMdd”格式分别给出当前系统时间

select convert(varchar(16),getdate(),120)

select convert(varchar(10),getdate(),112)





2、在R9财务系统科目余额表(GL_kmye)中金额(je)栏中出现了4.3283064E-10科学技术发的值。

现在要在页面上显示所有科目余额信息。包括科目代码(kmdm)、科目名称(kmmc)、科目余额(je)。

要求:不能在页面上显示科学技术法。

select kmdm,kmmc,case je when<0.001 then 0.0 else je from gl_kmye







3、请写出禁止和启用表tableA 的 update_trigger触发器的sql语句



alter table tableA enable update_trigger

alter table tableA disable update_trigger



4、存储过程p_getUserName @code varchar(10),@name varchar(20) output 可以根据人员工号返回人员姓名。

请写出取得工号是10001的员工姓名的sql语句。

declare @empname varchar(20)

exec p_getUserName ‘10001’,@empname output





5、BillInfo 表中存放着发料单的基本信息,Code字段表示发料单的编号,编码规则是 yyyy+_+MM+_+4位流水号,如2007_09_0001。现在由于系统升级发料单单据编号需要按新规则生成,新规则为BZ+yyyy+MM+6位流水号(F200709000001)。请给出跟新旧单据号为新单据号的Update语句。

update billinfo set code = ‘BZ’+left(code,4)+substring(code,5,2)+’00’+right(code,4)







编程题

1、dept表存放部门信息,包括部门编号(d_id)、部门名称(d_name)。

emp存放员工信息,包括员工编号(e_id)、员工姓名(e_name)、所属部门编号(d_id)。

现在有一个视图v_userInfo显示员工基本信息和所部门

名称即:员工编号(e_id)、员工名称(e_name)、所属部门编号(d_id)、所属部门名称(d_name)

要求当对试图v_userInfo做update操作时跟新相关基本表信息。请写出相应的触发器。

create trigger tri_update on table instead of update as

begin

--更新dept基表

if(not exists(select 1 from dept d,inserted i where d.d_id = i.d_id))

insert into dept select d_id,d_name from inserted

else

update dept d set d.d_name=i.d_name from inserted i

--更新emp基表

update emp set e_id=i.e_id,e_name = i.e_name from emp e,inserted i where e.e_id=i.e_id




end



2、H_Code号码表存放员工工号,emp员工信息表。由于设计问题出现部分员工工号重复现象,现在需要对工号重复的员工进行重新编号。

员工工号编号规则每次从H_Code表中取最大值加1。emp表中e_id为主键自增长,e_code为员工工号。

请写出处理重号问题的完整存储过程。





相关文档
相关文档 最新文档