这是SQL Server 2000测试题。 1. 有订单表,需要实现它的编号,格式如下:200211030001……200222039999等。使用:
Replace(substring(convert(varchar(20),getdate(),120),1,10),'-',' ') + max(订单号) + 1
- 有表T1,T2,现有一事务,在向表T1添加数据时,同时也必须向T2也添加数据,如何实现该事务:
Begin transaction
Insert into T1 values (...)
Insert into T2 values (...)
Commit transaction
若需回滚:
Rollback transaction
-
如何向T1中的编号字段(code varchar(20))添加一万条记录,不允许重复,规则如下:编号的数据必须从小写的a-z之间取值。设置编号字段为主键,并建立唯一性约束。
-
如何删除表中的重复数据,使用光标与分组的办法:
Delete from aa where rowid in (
Select rowid from aa where rowid not in (
Select max(rowid) from aa group by a having count(a) > 1)
and a in (Select a from aa group by a having count(a) > 1)
)
SQL Server 2000是一个关系型数据库管理系统,提供了丰富的功能,包括安全性、事务处理、备份恢复等。以下是对测试题中涉及的知识点的详细解释: 1. 身份验证模式与登录账号的关系:
- SQL Server 2000提供两种身份验证模式:Windows身份验证和混合身份验证。
- Windows身份验证依赖于操作系统的安全机制。
- 混合身份验证模式允许使用NT账户或SQL Server自定义登录名和密码。
- 登录账号、数据库用户和数据库角色的关系:
- 登录账号验证用户是否可以连接到SQL Server服务器。
- 数据库用户用于控制用户可以访问的数据库。