视图,存储过程

2024-09-03 18:32
文章标签 过程 存储 视图

本文主要是介绍视图,存储过程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

视图:view

它也是一类数据库对象,其信息保存到sysobjects表中。格式为v。

这种对象和表息息相关的,它是完全依赖于表的,不能独立存在

视图是指从不同角度看表,所得到的信息。

视图在操作时相当于一个指针(其实内部实现就是用指针来实现的),来指向表的不同列。通过一个表可以创建无数视图对象,

在实际程序开发中,会大量使用视图。因为表只有一张(因为表复制的情况是很少的),但可以根据不同的需要,根据不同的角度得到多个视图。

在使用视图时,对于一张表而生成的视图,无论操作哪个视图,都是操作的同一张表。

一个视图的创建,就是一个select查询语句的创建;

--创建一个student表的视图,用来观察全表

if exists(select name from sysobjects  where name='v_student'

   and  xtype='v')

drop view v_student

go

create view v_student

as

select * from student

go

视图创建之后的应用:

从理论上说,增删改查都可以通过视图操作,操作视图就是操作表

在创建视图时,给列名重命名:

if exists(select name from sysobjects  where name='v_student'

   and  xtype='v')

drop view v_student

go

create view v_student

as

select sid as 学号,sname 姓名

from student

go

给数据库对象命名(以表中列重命名为例):sp_rename

对表jobs重命名:

execute sp_rename 'jobs','工作表'

go

此时要获取表信息,需要使用:

select * from [工作表]

go

修改表的中的列名称

execute sp_rename '工作表.job_id','编号','column'

go

给数据库重命名:sp_renamedb (自己测试)

查找pubs.dbo.jobs中的第4到第6行记录:

select * from jobs

where job_id between 4 and 6

go

不包含行号列的数据

select  au_id,au_lname,au_fname,phone,address,city,state,zip,contract

from

(select row_number() over(order by  au_id)  as rowid,*

from authors) as temp

where

rowid between  4 and 6

go

sql语言通常都会提供存储过程的技术,mysql,sqlserver,oracle中,存储过程都是一个重要技术,作为一个程序开发人员,在数据库方面都是必须要掌握的。

在sqlserver中,它是一种特殊类型的函数

用函数的角度来看Sqlserver中的存储过程,它的功能还要大于java中的方法。同样,从函数的角度来看,它可有可无参数,可有可无返回值。

sqlserver中的存储过程分为系统存储过程和用户存储过程。

系统存储过程以sp_xp_打头;

sp system procedure

xp:  xtends procedure

用户定义的存储过程

它也是一类数据库对象,信息保存在系统对象表SysobjectS中,格式为p

一个简单的存储过程的创建,功能是显示表item表的信息。

if exists(select name from sysobjects  where name='show_item'

   and  xtype='p')

drop procedure show_item

go

create procedure show_item

as

begin

   select * from item

end

go

存储过程的调用,使用可执行关键字:execute

execute show_item

go

继续深化上面的存储过程,传递一个表名作参数,用来显示表信息。

if exists(select name from sysobjects  where name='show'

   and  xtype='p')

drop procedure show

go

create procedure show @tbname  nvarchar(30)

as

begin

   declare  @str nvarchar(200);

   set  @str='select * from '+@tbname

   execute  (@str)

end

go

执行存储过程show:

execute show sales

go

这篇关于视图,存储过程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1133710

相关文章

Java进程异常故障定位及排查过程

《Java进程异常故障定位及排查过程》:本文主要介绍Java进程异常故障定位及排查过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、故障发现与初步判断1. 监控系统告警2. 日志初步分析二、核心排查工具与步骤1. 进程状态检查2. CPU 飙升问题3. 内存

Python实现对阿里云OSS对象存储的操作详解

《Python实现对阿里云OSS对象存储的操作详解》这篇文章主要为大家详细介绍了Python实现对阿里云OSS对象存储的操作相关知识,包括连接,上传,下载,列举等功能,感兴趣的小伙伴可以了解下... 目录一、直接使用代码二、详细使用1. 环境准备2. 初始化配置3. bucket配置创建4. 文件上传到os

SpringBoot整合liteflow的详细过程

《SpringBoot整合liteflow的详细过程》:本文主要介绍SpringBoot整合liteflow的详细过程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋...  liteflow 是什么? 能做什么?总之一句话:能帮你规范写代码逻辑 ,编排并解耦业务逻辑,代码

Java中调用数据库存储过程的示例代码

《Java中调用数据库存储过程的示例代码》本文介绍Java通过JDBC调用数据库存储过程的方法,涵盖参数类型、执行步骤及数据库差异,需注意异常处理与资源管理,以优化性能并实现复杂业务逻辑,感兴趣的朋友... 目录一、存储过程概述二、Java调用存储过程的基本javascript步骤三、Java调用存储过程示

MySQL之InnoDB存储引擎中的索引用法及说明

《MySQL之InnoDB存储引擎中的索引用法及说明》:本文主要介绍MySQL之InnoDB存储引擎中的索引用法及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录1、背景2、准备3、正篇【1】存储用户记录的数据页【2】存储目录项记录的数据页【3】聚簇索引【4】二

MySQL中的InnoDB单表访问过程

《MySQL中的InnoDB单表访问过程》:本文主要介绍MySQL中的InnoDB单表访问过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、背景2、环境3、访问类型【1】const【2】ref【3】ref_or_null【4】range【5】index【6】

MySQL之InnoDB存储页的独立表空间解读

《MySQL之InnoDB存储页的独立表空间解读》:本文主要介绍MySQL之InnoDB存储页的独立表空间,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、背景2、独立表空间【1】表空间大小【2】区【3】组【4】段【5】区的类型【6】XDES Entry区结构【

SQLite3 在嵌入式C环境中存储音频/视频文件的最优方案

《SQLite3在嵌入式C环境中存储音频/视频文件的最优方案》本文探讨了SQLite3在嵌入式C环境中存储音视频文件的优化方案,推荐采用文件路径存储结合元数据管理,兼顾效率与资源限制,小文件可使用B... 目录SQLite3 在嵌入式C环境中存储音频/视频文件的专业方案一、存储策略选择1. 直接存储 vs

浏览器插件cursor实现自动注册、续杯的详细过程

《浏览器插件cursor实现自动注册、续杯的详细过程》Cursor简易注册助手脚本通过自动化邮箱填写和验证码获取流程,大大简化了Cursor的注册过程,它不仅提高了注册效率,还通过友好的用户界面和详细... 目录前言功能概述使用方法安装脚本使用流程邮箱输入页面验证码页面实战演示技术实现核心功能实现1. 随机

Navicat数据表的数据添加,删除及使用sql完成数据的添加过程

《Navicat数据表的数据添加,删除及使用sql完成数据的添加过程》:本文主要介绍Navicat数据表的数据添加,删除及使用sql完成数据的添加过程,具有很好的参考价值,希望对大家有所帮助,如有... 目录Navicat数据表数据添加,删除及使用sql完成数据添加选中操作的表则出现如下界面,查看左下角从左