gg
当前位置: 首页 >> MSSqlServer >> 相关推荐

关于在存储过程中使用@sql拼接sql语句,然后exec (@sql),这样的效果和在程序里写sql语句然后再执行数据库操作有啥区别的搜索推荐

自己觉得这样的话,速度上并不会很快 没啥区别.目的是将操作包起来,为了程序调用方便. 当然,你在程序里包在某个专门的地方,用时再调也一样. 1.存储过程是在DBServer执行的,如果逻辑很多,会消耗DBServer的资源。 2.相对语句在程序里生成,可以节省传输成本,不需要传输很长穿的SQL语句。 3.最简单的说,sql语句的字符串,一个是占用用程序的空间,另一个是占用数据库资源。 有時需要從其他表中取很多相關的數據再決定如何查詢,在客戶端拼裝的話,就需要不斷與數據庫交互,性能當然就差了. 如果使用存儲過程的話,因為存儲過程是存儲在數據庫服務器上,所謂近水樓臺先得月,存儲過程從數據庫取所需數據,當然性能最優了. 當然有時候有得有弊,需要權衡使用 谢谢各位的指点 现在的存储过程大致上是这样的: createprocsp1@con1,@con2,@con3 as declare@sql set@sql='......' if@con1='..' set@sql='......'+'...'--并不涉及查询其他table else set@sql='......'+'...' ... exec(@sql) 如果就像上面这样,大家觉得那种方式更好 一种避免了大字符串在网络上的传输,同时让数据库负责拼接和查询工作 一种是在程序里运行拼接sql的操作,然后传送sql字符串到数据库,让数据库只负责查询的工作 确实啊, 各有各的优势 数据库中处理逻辑问题的确没程序中快,但是存储过程本身是预编译的,可以直接执行,如果里面都是...

查看详情

搜索推荐
SQL SERVER的查询分析器中执行存储过程使用EXEC和不使用EXEC直接执行有什么区别吗?

SQLSERVER的查询分析器中执行存储过程使用EXEC和不使用EXEC直接执行有什么区别吗?刚学习,在查询分析器中使用EXEC存储过程名参数和直接存储过程名参数都可以直接,...

动态查询要拼接SQL语句,最后用EXEC来执行,这个大家都知道,但是

动态查询要拼接SQL语句,最后用EXEC来执行,这个大家都知道,但是如果有TABLE类型的表变量,无法传递给EXEC怎么办?因为这个必须该用临时表吗?这样不是效率就低...

取出数据窗口的sql语句,然后修改sql语句

我已经建立了一个数据窗口dw_1,然后我想在dw_1中动态的添加的一列,做为复选框。String ls_syntax_sql, ls_syntaxls_syntax = dw_1.dw_1.Object.datawindow.Synt...

JAVA读取文本文件,然后执行该SQL语句,出现java.sql.SQLException: ORA-00911: invalid character报错

该SQL在SQLPLUS\WORKSHEET里执行没问题 文本文件里的SQL语句如下: truncate table TRS.tb_affair_appendix; insert into TRS.tb_affair_appendix(GscApproveDat...

JAVA读取文本文件,然后执行该SQL语句,出现java.sql.SQLException: ORA-00911: invalid character报错

该SQL在SQLPLUS\WORKSHEET里执行没问题文本文件里的SQL语句如下:truncate table TRS.tb_affair_appendix;insert into TRS.tb_affair_appendix(GscApproveDatumS...

过程 for j in (SQL语句) loop 这样语句中的SQL语句能否写成动态的?

for j in (select * from 表 where 条件) loop 处理过程;end loop;在过程中写如上的语句,因为where 条件需要根据传递的参数决定,需要动态的变化,不知 如果不...

想探讨一下SQL语句的执行过程,常见的SQL就好,但是希望解释能深入到磁盘操作

表A [id,name]表B [id,name]比如:select * from A,B; 返回了表A和表B这两个关系的笛卡尔乘积select * from B,A; 和它有何区别?(比如,B和A分别属于不同的数据...

大家更新数据时,是用记录集本身的更新功能呀?[如:rs.update],还是写成sql语句,然后执行.{如:conn.execute sql}

大家更新数据时,是用记录集本身的更新功能呀?[如:rs.update],还是写成sql语句,然后执行.{如:conn.execute sql}----------------------------我不是专业程序员,所...

使用SQL语句和调用存储过程有啥区别?

如题,最近在完成别人做的一个项目,发现这人把所有增删改查询的SQL都写到数据库里面的存储过程,而要使用到就调用存储过程,有些存储过程几乎就一条很短的SQL语...

可否将ADO连接SQL数据库的语句写成函数,放在模块里,然后每次进行数据库操作时调用?

本人是菜鸟,要写C/S结构的库房管理系统,对于ADO连接数据库的方式还是不太明白,请高人赐教。我现在看的书,使用的是ODBC,将数据库连接函数放在了DbFunc模块里...

sql server 2000 exec执行sql语句出错,怎么解决?

declare @sql varchar(8000)set @sql='SELECT distinct [ship_date] = CONVERT(VARCHAR(10),[ship_date],111),[lice_no],[short_name] = master.dbo.combine_sh...

能够这样使用吗?

请问能否在动态SQL语句执行后使用SQL%FOUND之类的值:比如下面的语句能否正常执行:execute immediate '....';if sql%found then dbms_output.put_line('...\...

ado执行一条sql语句是这样的:“rs.open str1, cn, ...”,请问在C#中利用ado.net如何执行一条SQL语句附加数据库?

ado执行一条sql语句是这样的:“rs.openstr1,cn,...”,请问在C#中利用ado.net如何执行一条SQL语句附加数据库? ------------ 目的是要实现附加数据库 ------...

送分100分:在SQL的INSERT INTO语句中引用的多个控件TEXT为空时,如何编写相应的SQL语句,以防止SQL语句执行失败。

在SQL的INSERT INTO语句中引用的多个控件TEXT为空时,如何编写相应的SQL语句,以防止SQL语句执行失败。 ------------ '在SQL语句中如果控件内容为空则为NULLs...

用存储过程动态创建的SQL语句,用exec执行的,怎么用datawindow显示出来?

我有一个存储过程,内容如下:CREATE PROCEDURE dbo.up_getbrypzh @zhid int ASselect (select count(*) from v_syypzhxx ...

热门搜索 - TryCatch Copyright © 2012-2013 tc5u.com 版权所有