当前位置:首页 » 编程语言 » sql语言删除存储过程
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

sql语言删除存储过程

发布时间: 2022-12-20 07:36:07

A. 删除存储过程的sql语句在数据库中,什么是一个数据库对象

  删除存储过程的sql语句在数据库中,什么是一个数据库对象参考以下内容
  在MySQL中,服务器处理语句是以分号为结束标志,但是在创建存储过程中,可能包含多个sql语句,每个语句如果都使用分号结尾,则程序遇到第一个分号就会以为程序结束。所以使用’delimiter结束符号‘命令将mysql语句的结束标志修改为其他符号,最后再使用’opdelimit

B. plsql删除的存储过程

如果有开启归档日志的话,可以直接回滚;
另外如果是10g以上版本的话,可以使用flashback恢复,具体方法如下:
恢复存储过程的原理就是利用了oracle里所有的存储过程的源代码都是存在dba_source里,而drop某个存储过程的时候,oracle这里肯定要去dba_source里把相关的源代码给delete掉,既然是delete,那就可以直接flashback query了,如下:
SELECT *
FROM dba_source
AS OF TIMESTAMP TO_TIMESTAMP ('2015-03-30 00:00:00', 'YYYY-MM-DD HH24:MI:SS')
WHERE owner='' and name =''

C. sql删除存储过程中的数据语句

Sql存储过程基本语法之简介:

存储过程(Stored Procere), 是一组为了完成特定功能的SQL 语句,集经编译后存储在数据库中,用户通过指定存储过程的名字并给出参数,如果该存储过程带有参数来执行它,在SQL Server 的系列版本中,存储过程分为两类:系统提供的存储过程和用户自定义存储过程。

系统SP,主要存储master 数据库中,并以sp_为前缀并且系统存储过程主要是从系统表中获取信息,从而为系统管理员管理SQL Server。 用户自定义存储过程是由用户创建,并能完成某一特定功能,如:查询用户所需数据信息的存储过程。存储过程具有以下优点

1.存储过程允许标准组件式编程(模块化设计)

存储过程在被创建以后,可以在程序中被多次调用,而不必重新编写该存储过程的SQL语句,而且数据库专业人员可随时对存储过程进行修改,但对应用程序源代码毫无影响。因为应用程序源代码只包含存储过程的调用语句,从而极大地提高了程序的可移植性。

2.存储过程能够实现快速的执行速度

如果某一操作包含大量的Transaction-SQL 代码,,或分别被多次执行,那么存储过程要比批处理的执行速度快很多,因为存储过程是预编译的,在首次运行一个存储过程时,查询优化器对其进行分析优化,并给出最终被存在系统表中的执行计划,而批处理的Transaction-SQL 语句在每次运行时都要进行编译和优化,因此速度相对要慢一些。

3.存储过程能够减少网络流量

对于同一个针对数据数据库对象的操作,如查询修改,如果这一操作所涉及到的Transaction-SQL 语句被组织成一存储过程,那么当在客户计算机上调用该存储过程时,网络中传送的只是该调用语句,否则将是多条SQL 语句从而大大增加了网络流量降低网络负载。

4.存储过程可被作为一种安全机制来充分利用

系统管理员通过,对执行某一存储过程的权限进行限制,从而能够实现对相应的数据访问权限的限制。

D. 利用TSQL语句创建对表C_ Info 进行插入、修改和删除操作的3个存储过程

就比如写一个存储过程对学生表进行你说的操作吧,Options是操作选项。
CREATE PROCEDURE OperationData @Options Int,@学号 VarChar(10),@姓名 VarChar(8)
AS
BEGIN
IF Options=0 --选项参数值0执行删除操作
DELECT 学生表 WHERE 学生表.学号=学号
ELSE IF Options=1 --选项参数值为1则执行修改操作
BEGIN
UPDATA 学生表
SET 学生表.学号=学号
SET 学生表.姓名=姓名
WHERE 学生表.学号=学号
END
ELSE IF Options=2
INSERT INTO 学生表 VALUES(学号,姓名)
END

E. 怎样在pl/sql中创建,执行和删除存储过程

sqlserver存储过程的基本操作:

一、创建存储过程

1、语法格式:

createproc|procerepro_name
[{@参数数据类型}[=默认值][output],
{@参数数据类型}[=默认值][output],
....
]
as
SQL_statements

以上是最基本语法,举个简单的例子:

CREATEprocp_test
as
selectretu=1

2、执行存储过程

EXECUTEProcere_name''--存储过程如果有参数,后面加参数格式为:@参数名=value,也可直接为参数值value

3、删除存储过程

dropprocereprocere_name--在存储过程中能调用另外一个存储过程,而不能删除另外一个存储过程

F. sql语句从主表删除一条数据,并且把先关联的多个子表数据也删除

仅凭sql不可能实现,多条实现先删从表再删主表
楼主的需求解决方案
1.如果是编程实现,java框架hibernate的cascade可以模拟做到删主去重
2.表中设置好级联删除 这样设定好表后 可以实现删主去重 oracle为例
alter table AAA add constraint asd foreign key (BBB) references CCC(DDD) on delete cascade;
3.新增delete的行级触发器

4.存储过程 包含多条delete语句,使用时调用该过程