--事务,索引,视图--创建bank数据库
if exists(select * from sysdatabases where name='bank')
drop database bank
create database bank
on(name='bankmdf',filename='d:\SQL2008Workspace\bank.mdf',size=3mb,maxsize=5mb,filegrowth=1mb
)
log on
(name='bankldf',filename='d:\SQL2008Workspace\bank.ldf',size=3mb,maxsize=5mb,filegrowth=1mb
)
go--创建users表
if exists(select * from sysobjects where name='users')
drop table users
create table users
(uName nvarchar(20),--用户名uMoney money,--账户金额
)
go
--添加约束
alter table users
add constraint CK_uMoney check(uMoney>=1)
go
--插入数据
insert into users values ('鸣人',1000)
insert into users values ('佐助',2)
go/*
事务(Transaction)是不可分割的工作逻辑单元,将单元内的语句(操作)作为一个整体向系统提交,
要么都执行,要么都不执行,非黑即白!*/
--鸣人向佐助转账800
begin transaction--开始事务print '转账前'
select * from usersdeclare @error int
set @error=0
update users set uMoney=uMoney-800 where uName='鸣人'
set @error=@@ERROR+@error
update users set uMoney=uMoney+800 where uName='佐助'
set @error=@@ERROR+@errorprint '转账中'
select * from usersif @error<>0beginprint '转账失败,回滚事务'rollback transaction--回滚事务end
elsebeginprint '转账成功,提交事务'commit transaction--提交事务end print '转账后'
select * from users
go---创建索引
if exists(select * from sysindexes where name='index_uName')
drop index users.index_uName
--创建聚集索引,填充因子为30
create clustered index index_uName
on users(uName)
with fillfactor=30
go
--按索引index_uName进行查询
select * from users with (index=index_uName)
where uName='佐助'
go/*
视图是一张虚拟表,不能修改,删除,增加数据,只是以表的形式显示原始表的查询结果
视图相当于java中的封装方法,需要的时候直接调用,无需再写T-SQL语句
*/
--检查是否存在该视图
if exists(select * from sysobjects where name='view_users')
--删除视图
drop view view_users
go
--创建视图
create view view_users
as select uName from users
go
--使用视图
select * from view_users
详细解决方案
SQL server 事务,索引,视图
热度:48 发布时间:2023-09-20 23:40:39.0
相关解决方案
- myeclipse联接sql server 2008看不到用户表
- 在哪找的SQL Server 2005数据库驱动文件?为什么sql server2005安装盘上面没有找到
- ASP上Set GetSession("conn")=server.CreateObject("adodb.connection")
- SOS-(奇怪现象)服务器暂不可用500 internal server error,该怎么解决
- sql server 设置非空默认值之后,hibernate添加出现异常
- 可以安装在win7系统的sql server
- exchange server 2000提供全部用户邮件到达的java api吗
- IM聊天系统的有关问题,用Tigase Server 如何实现挤线功能
- com.microsoft.sqlserver.jdbc.SQLServerException: 用户 'sa' 登录失败。该用户与可托 SQL Server
- 如何用JDBC将一个文件夹里的东西存储进sql server
- 关于SQL SERVER 2005里面的image类型解决方案
- IIS 筹建 TFS,访问<server>/tfs/web时说无权访问此页面,何解?
- IIS 搭建 TFS,访问<server>/tfs/web时说无权访问此页面,何解?该怎么处理
- Server Error in '/' Application.解决方法
- sql server 2005 约束有关问题
- 给listbox和<INPUT id="xx" name="xx" runat="server"> 赋值有关问题
- Microsoft Team Foundation Server 2010 怎么备份数据
- 求个asp.net(C#)+sql server 2005写的小型论坛。该如何解决
- C# + SQL server +oracle QQ交流群142703980解决方法
- 装配vs2008时组件microsoft sql server compact 3.5 for devices无法安装!求解
- 安装vs2008时组件microsoft sql server compact 3.5 for devices无法安装!求解!解决办法
- C# 经过.ini或.txt文件连接sql server
- DELPHI +SQL SERVER 2005 掉线 急该如何处理
- 小弟我为什么在使用Page.Server.Transfer()进行页面跳转时报错,转不了
- SAP Crystal Server Client Tools开发过水晶报表过程中的参数有关问题
- Server Error in '/' Application.该怎么处理
- windows server 2008 + IIS 7.5 上 网站自定义权限过滤有关问题
- 部类“Button”的控件“Button2”必须放在具有 runat=server 的窗体标记内
- visual studio2010连接自带的sql server 2008express版本的数据库有关问题
- 各位大侠 哪位高手指点迷津 一上啊 Server Error in '/' Application