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

异步存储sqlserver

发布时间: 2022-09-18 07:49:15

1. 怎么使程序与sql server异步执行请达人指教!!!

这种问题我早就碰过了,使用多线程是一种非常不好的选择,你的系统随时都会崩溃。
办法其实非常简单,你只要使用ADO异步操作就可以了,完全不必建立多线程,当然这涉及ADO的高级应用,今天心情好,教你几招!(下面是我在VB中使用过的方法,DELPHI中同样也能使用ADO异步操作访问SQLSERVER)
之前先与SQL
SERVER建立一个CONNECTION对象,将其CURSORLOCATION属性设置为adUseClient
然后用ADO
CONNECTION的Execute方法异步执行存储过程即可
例如:con.CursorLocation
=
adUseClient
dim
strSQL
as
String
strSQL="SQL语句或存储过程名及其参数"
'语法必须正确
con.Execute
strSQL,
,
adAsyncExecute
'adAsyncExecute指令异步操作
这样你的应用程序就不用等待存储过程执行完毕后才可执行后续代码了。
你还可以使用ADO
CONNECTION对象的ExecuteComplete事件在执行完存储过程后
通知你的应用程序执行相应的动作,例如MSGBOX等之类的东西,具体的实现代码你自己去查ADO联机手册。
另外顺便提一下,如果对于一个执行了很长时间都未能完成的查询,你别指望使用貌似很行的ADO的CANCEL方法,立即取消一个正在执行的ADO异步操作,即使在更新版本的ADO.net
3.5也是如此(非要等到超时后才能生效),真不明白微软的工程师们是如何想的!谁要是能给出解决方法,我奖他300分,外加现金若干。
答复补充问题:
“四楼的大哥
我还想问一下
如果我在这个存储过程还没有执行完成的时候
其他客户端又调用了这个存储过程
会不会出错呢???我不太清楚一个存储过程还没有执行完的时候
是否可以再次调用
请指教
谢谢!!!!”
不会的,因为SQLSERVER引擎会处理这些并发问题(自动使用事务处理,微软的工程师们早就想到这些问题了,请放心使用)

2. 我写了一段存储过程 是SQLSERVER的代码如下:

create proc sp_InsertPhoto2
(
@name VARCHAR(50),
@image IMAGE
)
AS
INSERT INTO photos
VALUES (@name,@image)
RETURN @@identity
go
基本语法错误就是这些,不过提醒一下image或text这样的类型不能作为变量声明,你这种存储过程也是不行的……

3. 如何实现多线程(或者异步)查询Sqlserver库

在后台创建多个线程,访问你对应的数据然后放在一个指定的对象里面。 JSP上异步不断的发送请求向你存放数据的对象,返回数据后,放在JSP页面里面。

4. sqlserver怎么创建存储过程

1、点击数据库下的“可编程性”,选择“存储过程”,点击鼠标右键,选择“新建存储过程”;

注意事项:

注意执行exec时,参数的类型,要与建立的存储过程时设置的参数类型一致

5. sqlserver 数据同步问题

可以做成异步的,比如只做一些表里的数据,做个链接服务器,作业定时执行insert,update,delete

6. sqlserver broker 什么意思

SQL Server Service Broker 你可以理解为一种 数据库队列的 东西.
异步处理的.

例如我要执行一个耗时比较长的存储过程.
普通的执行方法, 是我 执行了, 然后我等着服务器处理完了, 才能继续干别的事情.

SQL Server Service Broker 则是以一种队列异步处理的机制来完成.
我需要执行一个很耗时的处理.
那么可能就是向某个 队列, 发送一个消息, 然后立即就返回了.
这个时候, 我可以做其他的查询处理.
等服务器执行完毕后, 再向我发一个消息, 告诉我 执行的结果.

7. ADO.Net(C#)中怎么执行Oracle的存储过程

SqlConnection conn=new SqlConnection ();
SqlCommand cmd = conn.CreateCommand();
cmd.CommandType = CommandType.StoredProcere; //命令类型是存储过程
cmd.CommandText = "存储过程的名字";

8. sqlserver 导出亿级数据怎么处理

可以使用存储过程实现,结合代码调用
代码可以使用java的jdbc或者c#等,很方便的
按照每次导出1w条,后台自动执行完成数据导出

9. 编写一个SQLSERVER 存储过程

create PROC Change_STUDENT(
@Msg varhar(200)
@maxId int output
)
as
begin
update STUDENT set SNAME = 'cay_'+SNAME where
substring(SNAME,1,2) ='WA'
set maxId =(select max(ID) from STUDENT)
if(@maxId<100)
begin
set @Msg ='没有找到'
end
else
begin
set @Msg ='OK'
end
end

10. sqlserver里存储过程怎么调用存储过程

sqlserver里调用存储过程的具体操作步骤如下:

1、打开SQL Server Managment管理工具,新建一个表。