1. sql屏蔽已执行语句
鼠标选中执行不就可以吗
2. SQL的存储过程里,其中一条语句出现错误,如何让整个存储过程都不执行
要用禅卖到事务处理
你每执行一个操作都会有一个@@error的系统变量
所以你可以根据这个系统变量来判断你的语句执行是否成功。
若是成功则提交失误,否则回滚事物就渣纯可以了。
declare @error int
begin transaction
SQL语句
@error=@error+@@erorr
...
if @error>0
rollback transaction
else
commit transaction
GO
就是这样子贺梁逗了
3. 一条很长的SQL语句,我想让它中途停止下来怎么写,网上说/*,结果并没...
你把原句拿来,帮你分析。因为这个句子不规范,不知道你是否句子写错了,另外,停下来是什么意思?要达到什么目的。从你的语句分析,就是把users
中username为“”的记录和users
中
满足1=“1”且
口令为''的记录连接后显示出来,and
是一个双重条件,
不需要时,可以不设置。不知能否帮到你
4. sql中如何禁止一条指定的查询语句运行
取消你想要禁的用户对某些关键表的select insert 以及update权限不就行了
5. 如何设置某条sql语句执行的时候不执行触发器
你这个是FOR触发器,在语句后面执行,inserted和ssss表中的数据已经是一闷旁御样的了,蚂岩启春你下面两句得到的结果都是修改后的值:
select @sname=name,@ssr=sr from inserted
select @ssr2=sr from ssss where name=@sname
改成:
1
2
3
4
5
6
7
8
9
10
11
12
13
create trigger cf_lz on ssss
for insert,update
as
declare @sname nvarchar(10),@ssr nvarchar(10),@ssr2 nvarchar(10)
select @sname=name,@ssr=sr from deleted
select @ssr2=sr from ssss where name=@sname
print len(@ssr)
print @ssr
if(len(@ssr2)>0 and len(@ssr)>0)
begin
print 1
rollback tran -- rollback tran
end
6. SQL存储过程出错,怎样让他不再执行后面的SQL语句
你可唤闹以在插入操作完成后获取受影响的行数(用晌链好函数@@rowcount),然后写一个判断,如果受影响的行数(也宴铅就是插入的行数)大于0就继续执行下面的更新语句,否则不执行
7. 如何设置某条sql语句执行的时候不执行触发器
你这个是FOR触发器,在语句后面执行,inserted和ssss表中的数据已经是一样的了,你下面两句得到的结果都是修改后的值:
select
@sname=name,@ssr=sr
from
inserted
select
@ssr2=sr
from
ssss
where
name=@sname
改成:
1
2
3
4
5
6
7
8
9
10
11
12
13
create
trigger
cf_lz
on
ssss
for
insert,update
as
declare
@sname
nvarchar(10),@ssr
nvarchar(10),@ssr2
nvarchar(10)
select
@sname=name,@ssr=sr
from
deleted
select
@ssr2=sr
from
ssss
where
name=@sname
print
len(@ssr)
print
@ssr
if(len(@ssr2)>0
and
len(@ssr)>0)
begin
print
1
rollback
tran
--
rollback
tran
end
8. 如何使存储过程中的sql语句不能执行
不太明白所谓 拦截并停止数据库存储过程中运行的sql语句 是怎么回事。
但是执行中的数据库存储过程可以通过杀session的方式进行强行停止
9. 如何中止一个SQL语句的执行
如何中止一个SQL语句的执行
另一个sqlplus / as sysdba
select * from v$session;
alter system kill session(,)
或是
SELECT 'alter system kill session '''||t.SID||','||t.SERIAL#||''';' from v$session t WHERE t.SID=;
SELECT 'kill -9 '||p.SPID FROM v$session t ,v$process p WHERE t.SID=* AND t.PADDR=p.ADDR;
都可以。