Remote DTSX Execution, When Sql25k Fails.
Aug 18, 2006
Hi everyone,
This is my snippet of code. It works fine with remote DTSX but when they have got connections against Sql Server 2005, ending given the following error:
Event: (On error)
12:21:52,-1071611876,0x,Error de la llamada del método AcquireConnection al administrador de conexión "LOCALHOST.BDAplis"
That means more or less "Error on calling method AcquireConnection to Connection Manager localhost...
It's curious. I've got other packages which are using Sql Server 2000 connections without errors.
Thanks for your help,
pkgResults = pkg.Validate(Nothing, Nothing, EventsSSIS, Nothing)
If pkgResults = DTSExecResult.Success Then
pkg = app.LoadPackage(ActObject.packageName, Nothing, True)
endif
pkg.InteractiveMode = False
pkgResults = pkg.Execute()
View 2 Replies
ADVERTISEMENT
May 13, 2008
Hi All
One of the step in sql agent job is to execute the SSIS package to copy files from remote shared location to local server where sql server is installed. The account on which SQL agent runs as has access to remote shared location. However SSIS package always fails with following error:
An error occurred with the following error message: "Access to the path '\sharedlocationBCKTST105092008.csv' is denied.".
We have tried using proxies but same issue come with proxy also.
When using proxy, we created a proxy for a user who has access on that shared folder on Windows server(from which files are to be copied). If we login to SSIS server with the above user and execute SSIS package manually it works fine. However if we login with different user and run the job via SQL agent using proxy of the above user, then job fails throwing same above mentioned error
Any help is highly appreciated.
Thanks
View 3 Replies
View Related
Dec 13, 2007
I am having trouble with a dtsx package to truncate a table, then insert the contents of a .csv file.
The package is being executed off the local filesystem, reading a csv on the same file system, and inserting into a remote SQL 2k5 server. If I run the package alone in BI it will run perfectly, if I implement the package into a console app in visual studio, it will trunc the table, but will not insert any of the data in the csv file. When running from DtExec I recieve the following error on the CSV portion after the table is truncated:
Code: 0xC00470FE
Soure: Data Flow Task DTS.Pipeline
Description: SSIS Error Code DTS_E_PRODUCTLEVELTOLOW. The product level is insufficient for for componenet "Soure - My_File_CSV" (1).
I have tried all the work arounds I can find without any luck. All help will be appreciated.
View 4 Replies
View Related
Dec 20, 2006
Hello,
I have a bundling package that runs about 20 other packages. It has been working fine for a while but a couple of days ago it fail with the following message,
Error 0x800706BE while loading package file "D:PackagesToradSales.dtsx". The remote procedure call failed.
I´m running the SSIS packages in an 64-bit environment.
Thankful for help with this!
//Patrick
View 3 Replies
View Related
Jul 23, 2005
Hi,There is a stored procedure which runs through job.It is calling to other stored procedure and other stored procedures arecalling to another .. so on (approx 12-15 sp in batch)Problem:Sometime it does not execute properly. (approx very rare... once in 500execution or sometime on new site/database)I want to know the reason for it.If anybody have faced the similar problem.Please tell the possible causes and possible solutions.Thanks in Adv.T.S.Negi(MIND)
View 1 Replies
View Related
Jan 30, 2007
Hi,
I have a dts package migrated from sql server 2000 to sql server 2005 clustered server using migration wizard without any problem.
I have created a new job on sql server 2005 and one of the steps involves executing the SSIS package. It keeps failing with the error message "package execution failed". I have logged in here as a domain administrator (as also a local administrator).
I followed Article ID: 918760 but did not help.
I need this to be resolved asap.
Any quick help, much appreciated.
Thx
Murali
View 4 Replies
View Related
Jul 20, 2005
I have created a DTS package that pulls data in from Oracle into SQLServer. When I run it directly on the server (from EnterpriseManager), it works fine. When I run it from Enterprise Manager on aclient machine that does not have the Oracle client software, it doesnot run, giving me the error: "The Oracle client and networkingcomponents were not found...". I was hoping I wouldn't need to havethe client software installed on a machine other than the server whereSql Server is running. The problem here is that there are a number ofmachines from where I would like to execute this DTS package that I donot want to install/configure the Oracle client software. I don'tquite understand why the configuration of the client is importanthere. In my mind, when I am using enterprise manager from a clientmachine, I am using it sort of like a terminal services client toconnect to the server. I guess there is a lot more happening in thebackground.Thanks for any feedback,Marcus
View 2 Replies
View Related
Oct 1, 2007
I have an SSIS ETL Package that runs perfectly in debugger.
It is saved to the local SQL Server using "rely on server security".
The SQL Server Agent job runs at night and the job fails right at the last step. It is actually loading the data, because I write a record with row counts to an audit table, and they are successfully incrementing.
The real issue to me is that it is failing randomly, sometimes it will run 7 times then fail once, others it will go 2 or 3 days then fail. The job runs at the same time every night, and takes within a minute or two variance.
I've looked at the logs, and done a trace, and I can't seem to find anything that would cause the failure. The closest thing to an error is a join parameter note in the trace that's on tthe MSDB database.
Not a lot to work with, I know... but does anybody have any advice for me? Thank you in advance!
View 2 Replies
View Related
Feb 7, 2006
Hi
Having some issues with our apps.
We are trying to get our applications to work with sql2005.
Ive got the databases "setup", and all our apps run fine...
...except for when queries are made without the owner of the
table being specified in the query.
The connection is opened with the username that is associated with that owner.
And it fails in Manager as well. Is there something im missing, because you should
be able to do this.
eg:
select * from <table_name>
Gives the error:
Msg 208, Level 16, State 1, Line 1
Invalid object name '<table_name>'.
However if i were to query like this:
select * from <owner>.<table_name>
it works fine.
View 11 Replies
View Related
Jan 31, 2007
Hi everyone,
I understand that this is an issue. Microsofts doesn't inform anywhere
When you've got in your workstation both Sql2k and Sql25k clients and try to install the package for design dts 2000 from Sql25k then you'll not be able to re-start your Enterprise Manager from
MMC.
Appears this error:
?ProcessExecute@@YAXPAUHWND_@@PBG1@Z dynamic link library procedure start point is not founded (SEMSFC.DLL)
Query Analyzer starts as usual, without problems but you lose your EM.
TIA
View 3 Replies
View Related
Jan 16, 2007
Some time ago, I came across some posts that suggested that remote execution of SSIS packages was only supported if the package was wrapped by a SQL Server Job Agent job.
Is this correct?
Would the web service technique described below then not be supported?
http://msdn2.microsoft.com/en-us/library/ms403355.aspx
As I understand, there are approaches for running programatically:
1. sp_start_job
2. xp_cmdshell
3. Microsoft.SqlServer.Dts.Runtime API calls
Understanding that SQL Server Job Agent is the preferred approach, please advise as to if any of the above are NOT supported by Microsoft.
Thanks,
Rick
View 4 Replies
View Related
Jul 29, 2015
I am replicating a stored procedure execution, which builds and executes the following dynamic SQL command:
IF EXISTS (select * from MyDB..sysfiles sf (nolock) where name = 'MyDB_201201')
ALTER DATABASE [MyDB] REMOVE FILE [MyDB_201201]
IF EXISTS (select * from MyDB..sysfilegroups sfg (nolock)
where groupname = 'MyDB_201201' and sfg.groupname not in(
SELECT distinct fg.name file_group_name
[Code] ....
I can run this SP with no errors on both the publisher and the subscriber. However, when I try to replicate the execution of this SP, I get an error in replication monitor:
ALTER DATABASE statement not allowed within multi-statement transaction. (Source: MSSQLServer, Error number: 226)
How can I change my code to workaround this? Perhaps some explicit transactions?
View 6 Replies
View Related
Nov 16, 2006
Hi everyone,
We've found some problems when trying such thing. It seems that is compulsory to do via own CD/DVD.
Any comment would be very appreciated.
Thanks in advance,
enric
View 4 Replies
View Related
Nov 14, 2006
Hi everyone,
We've found some problems when trying such thing. It seems that is compulsory to do via own CD/DVD.
Any comment would be very appreciated.
Thanks in advance,
View 1 Replies
View Related
May 30, 2006
Is anyone executing SSIS packages using a web service similar to the example in http://msdn2.microsoft.com/en-us/ms403355(SQL.90).aspx
From what I've read, there is a new HTTP server embeded in SQL Server (so we don't have to have IIS) that this could be done from??
View 2 Replies
View Related
Feb 17, 2006
I am finishing a port of a project that was done with RS2000/AS2000/DTS2000. The cube process is triggered remotely by a Korn Shell script from Services for Unix that runs a DTS package:
dtsrun.exe /S "$ANALYSIS_SERVICES_HOST" /U "$ANALYSIS_SERVICES_USER" /P "$ANALYSIS_SERVICES_PASSWORD" /N "$PACKAGE_NAME"
I have finished porting the AS and RS parts to their 2005 equivalents and now I am trying to get the cube processing converted. I have built a SSIS package that processes the cube and I have deployed it to the SQL Server in MSDB. When I am logged on to the SQL Server box directly, I can execute the package via the Management Studio and from the command line via:
dtexec /Ser "$ANALYSIS_SERVICES_HOST" /DT "$PACKAGE_PATH_NAME"
When I try to register the SQL Server in Integration Services from my client PC Management Studio it fails with "Access Denied". When I try to run the dtexec from my client PC it fails with "Access Denied".
I have walked through Kirk Haselden's instructions at:
http://sqljunkies.com/WebLog/knight_reign/archive/2006/01/05/17769.aspx
(adding myself to Distributed COM Users, noting the correct DCom Config settings for MsDtsServer and restarting the Integration Services service) and the problem is still not resolved. I have posted to the DTS group on Technet and now I am posting here. This can not be run scheduled by SQL Agent as it needs to be triggered by other load/postload activities. Are there any other fixes for this problem that I can try?
Thanks,
Keehan
By the way, being able to have all the parts of this project in one dev environment is great. The previous application was developed in 3 separate locations which was pretty clunky.
View 6 Replies
View Related
Aug 4, 2004
Hello,
I'm about googled out on this one. I did find one post that looked almost like mine but the thread was never finished. I'm sure this problem has been solved and I'm just having trouble finding it. Can someone help me?
I'm running sql server 2000 on a small workgroup network of winxp machines.
If sql server machine is the same as webserver machine, my asp.net app works. If sql server and webserver are different, the app fails because of sql server login failure.
I am able to explore the database remotely through server explorer in VStudio2003. However, when I try to access the database with the asp.net application, the login fails. I have tried several connection strings. Authentication on the server is 'mixed', the server runs in the system account, and the password for sa is "" (blank password).
I've tried (for instance)
Application["DBConnectString"] = "server=machinename;uid=sa;pwd=;database=Resume";
and
Application["DBConnectString"] = "server=machinename;integrated security=true;database=Resume";
When "machinename" is the same as the machine on which the app is running. both of those connection strings work, and the application runs correctly.
When "machinename" is different (that is, sql server on a different machine from the webserver), depending on the connection string I get either
"Login failed for user 'sa'."
or
"Login failed for user '(null)'. Reason: Not associated with a trusted SQL Server connection."
Obviously VStudio is using some mechanism to add the remote server to it's list of servers and then to allow me manually to explore the databases on that server. Why am I too stoopid to figure it out?
TIA,
Tim
View 7 Replies
View Related
May 30, 2000
I am trying to use a confirmed and valid account over a WAN (US to Europe)
to register and access a SQL server database. The protocol being used is
TCP/IP and it has been confirmed that port 1433 is open.
The data is going through a frame relay line and pining the remote
SQL Server does return a valid response. Unfortunately, I am getting the
following error:
Error 18456
Severity Level 14
Message Text
Login failed for user 'TestUser'.
Explanation
You do not have permission to log in to the server.
Action
Contact a member of the sysadmin fixed server role to request login permission.
View 4 Replies
View Related
May 30, 2000
I am using TCP/IP net library as far as I know. Just in case though, how
can I ensure that TCP/IP is being used? both on the local and
remote servers?
Thanks for your help
Ziggy
View 1 Replies
View Related
Oct 9, 2006
I have the following execution of a global temporary stored procedure on a remote SQL 2000 server:
insert into targetTable
exec remoteServer.master.dbo.sp_MSforeachdb ' ', @precommand = 'exec ##up_fetchQuery'
This is an ugly duck query but it seems to work fine. when I try to directly execute the remote stored procedure such as with
insert into query_log exec remoteServer.master.dbo.##up_fetchQuery
I get execution error
Server: Msg 2812, Level 16, State 62, Line 1
Could not find stored procedure '##up_xportQueryLog'.
Database name 'master' ignored, referencing object in tempdb.
When I try
insert into query_log exec remoteServer.tempdb.dbo.##up_fetchQuery
I get
Server: Msg 2812, Level 16, State 62, Line 1
Could not find stored procedure '##up_xportQueryLog'.
Database name 'tempdb' ignored, referencing object in tempdb.
with
insert into query_log exec remoteServer..dbo.##up_fetchQuery
or
insert into query_log exec remoteServer...##up_fetchQuery
I get
Server: Msg 2812, Level 16, State 62, Line 1
Could not find stored procedure '##up_xportQueryLog'.
I guess the remote server has trouble resolving the name of the global temp stored procedure when its reference comes in as a remote stored procedure calls. Is there any way to directly call a global temp stored procedure from a remote server or do I need to stick with this goofy-looking work-around?
Dave
View 3 Replies
View Related
Mar 11, 2006
Hello,
I have two FTP Tasks configured in my SSIS package. One is for "Receive files" and the other is set for "Delete remote files." Both use variables for the source/destination paths. My remote path variable contains a wild card in the name field such as /usr/this/is/my/path/*.ext and it is working to FTP all the .ext files to my working directory. I then rename the files and want to remove the original files from the FTP server. I use the same variable as the remote path variable in the delete as I do in the receive.
Using the same FTP connection manager for both tasks I am always getting a failure on the delete. The FTP connection manger is setup to use the root user. Using a terminal I am able to open an FTP connection to the server and remove the files manually. There doesn't seem to be any detailed documentation on the FTP Task configured for Delete remote files so I'm hoping someone might have some insight to the problem.
I receive the same message for each of the files that was downloaded:
Error: 0xC001602A at MyPackage, Connection manager "FTP Connection Manager": An error occurred in the requested FTP operation. Detailed error description: 550 usr hisismypathdatafile1.ext: No such file or directory.
The attempt to delete file "usr hisismypathdatafile1.ext" failed. This may occur when the file does not exist, the file name was spelled incorrectly, or you do not have permissions to delete the file.
With the root user/working manually I'm not understanding the permission reason, the file does exist and is spelled correctly.
Dan
View 21 Replies
View Related
Jun 16, 2015
I have an SSIS Package which Retreives Data using a  SQL Query like belowÂ
select  a.* from dbo.test a (nolock)
JOIN dbo.test1 b (nolock)
ON a.DetailsId = b.DetailsId
JOIN dbo.test c (nolock) on c.DetailsLineId = b.DetailsLineId
where convert(date,c.CpPlacedDate)>?
and convert(date,c.CpPlacedDate) Â < convert(date,GETDATE())Â
and c.PartnerCode in ('akakak07')
The CpPlacedDate DataType is Datetime. After the Successfull Execution of SSIS Package the final output results in destination is lesser than source. Â
The Maximum of cpplaceddate in the Destination for a particular date is '2015-06-13 23:46:08.923'
The Maximum of cpplaceddate in the Source for a particular date is '2015-06-13 23:59:14.873'Â
I am missing 16 records in between this time Gap.
View 3 Replies
View Related
Apr 19, 2008
but i am able to login to the same remote sql server through SQL server managment studio express using the details i am using in the connection string in the "test.aspx" page. ERROR:An error has occurred while establishing a connection to the server.
When connecting to SQL Server 2005, this failure may be caused by the
fact that under the default settings SQL Server does not allow remote
connections. (provider: Named Pipes Provider, error: 40 - Could not
open a connection to SQL Server)When this page is run, i want all the user's UserName and Password to be dispalyed.However, i am getting the above mentioned error.what could be the problem? This is the code i am using in my test.aspx page to connect to "Login" table in my database. 1 Imports System.Data2 Imports System.Data.SqlClient3
4 Private Sub GetAllTheComments()5
6 Dim MyConnection As SqlConnection7
8 Dim MyCommand As SqlDataAdapter9
10 MyConnection = New SqlConnection("server=XXX.X.XXX.X;uid=X;pwd=X;database=X")11
12 MyCommand = New SqlDataAdapter("select UserName, Password from Login", MyConnection)13
14 ds = New DataSet15
16 MyCommand.Fill(ds)17
18 DataList1.DataSource = ds19
20 DataList1.DataBind()21
22 End Sub
View 1 Replies
View Related
May 24, 2007
I'm new to SSIS and I'm having problems getting a remote connection to the SSIS service using Management Studio on my workstation. If I terminal Service onto the Server I have no problems connecting to SSIS, but if I try to connect remotely I get the "Access is denied" error message. I have completed the following steps:
To configure rights for remote users on Windows Server 2003 or Windows XP
1. If the user is not a member of the local Administrators group, add the user to the Distributed COM Users group. You can do this in the Computer Management MMC snap-in accessed from the Administrative Tools menu.
2. Open Control Panel, double-click Administrative Tools, and then double-click Component Services to start the Component Services MMC snap-in.
3. Expand the Component Services node in the left pane of the console. Expand the Computers node, expand My Computer, and then click the DCOM Config node.
4. Select the DCOM Config node, and then select MsDtsServer in the list of applications that can be configured.
5. Right-click on MsDtsServer and select Properties.
6. In the MsDtsServer Properties dialog box, select the Security tab.
7. Under Launch and Activation Permissions, select Customize, then click Edit to open the Launch Permission dialog box.
8. In the Launch Permission dialog box, add or delete users, and assign the appropriate permissions to the appropriate users and groups. The available permissions are Local Launch, Remote Launch, Local Activation, and Remote Activation. The Launch rights grant or deny permission to start and stop the service; the Activation rights grant or deny permission to connect to the service.
9. Click OK to close the dialog box. Close the MMC snap-in.
10. Restart the Integration Services service.
But I still get the Access is denied error from my workstation??
I have Power User rights on the server and I'm a sysadmin in the database instance. The SSIS packages I am trying to access are stored in the database. If I add myself to the local administrators group on the server I CAN get remote access, but this is not an acceptable solution in our production environment.
Thanks for any help
View 3 Replies
View Related
Mar 28, 2007
What do I have to do to get this to work?
C:>aspnet_regsql.exe -A m -E
Start adding the following features:Membership
...............An error has occurred. Details of the exception:An error has occurred while establishing a connection to the server. When connecting to SQL Server 2005, this failure may be caused by the fact that under thedefault settings SQL Server does not allow remote connections. (provider: NamedPipes Provider, error: 40 - Could not open a connection to SQL Server)
Unable to connect to SQL Server database.
View 3 Replies
View Related
Jun 2, 2006
Hi everyone,
We€™ve got almost 250 old dts packages which simply loading data into Sql tables from plain files or at the reverse point. Most of them are defined with fixed fields and its fixed positions one after one. We don€™t want to migrate them using Import wizard, on the contrary we€™re producing them from the beggining taking advantatge of SSIS architecture to the full.
And now, we€™re trying to imagine how to migrate automatically that valuable info from Sql Server 2000 to Sql Server 2005 without efforts€¦ You know, any program be able to move that detailed info
to SSIS.
So we would avoid to select again all these positions per each file -very tedious and we're lazy
I don€™t see how except, of course, migrate them directly
Let me know if you need further explanations or more clarity on that.
View 5 Replies
View Related
Mar 1, 2007
Can I roll back certain query(insert/update) execution in one page if query (insert/update) in other page execution fails in asp.net.( I am using sqlserver 2000 as back end)
scenario
In a webpage1, I have insert query into master table and Page2 I have insert query to store data in sub table.
I need to rollback the insert command execution for sub table ,if insert command to master table in web page1 is failed. (Query in webpage2 executes first, then only the query in webpage1) Can I use System. Transaction to solve this? Thanks in advance
View 2 Replies
View Related
Jun 23, 2006
I am attempting to write a Windows service that watches a database for uploaded files to import. When a new file is found, the corresponding SSIS package is run from the file system with variables passed through. I started development as a Windows app and copied the functionality to a service.
The app runs fine. The service does not. I get a "Failure" each time a package is executed. Everything is identical behind the scenes with the obvious exceptions that OnStart and OnStop handlers are buttons in the app. I added a script task at the beginning of one of the SSIS packages to notify me that it is even running at all. It doesn't even hit that initial task.
Again, the app will run all packages just fine. The data is imported and the results return as "Success."
The following is the code executing the package. Any help is appreciated. I've been banging my head on this one for a few days now. (Is there a tag to format a code sample?)
Dim pkgLocation As String
Dim pkg As New Package
Dim app As New Application
Dim pkgResults As DTSExecResult
pkgLocation = sPackageFolder & PackageName & ".dtsx"
pkg = app.LoadPackage(pkgLocation, Nothing)
Dim vars As Variables = pkg.Variables
vars("ImportId").Value = ImportId
vars("ProductionServer").Value = ProductionServer
vars("ProductionDatabase").Value = ProductionDatabase
vars("SourceFileName").Value = FileName
vars("SourceFilePath").Value = FilePath
pkgResults = pkg.Execute()
View 3 Replies
View Related
Jun 13, 2007
I have a dtsx package that is calling another dtsx package, however, if the called upon dtsx package fails with errors or what not, then the calling package does not continue as well. Is there any way to override this such that if the called upon package fails, the downstream actions in that package can stop, but the calling packages downstream actions to continue?
View 3 Replies
View Related
Nov 16, 2006
Hallo,
I have the following problem:
I can't connect with the Management Studio Express to my remote server, which is located in the internet. All firewalls are shutdowned and I can connect to the server via telnet and get an error in the event log on the server when I type some random characters.
The connection to another remote server in my LAN does not fail. Only TCP/IP and shared memory is activated.
Servername: mydomain.deSQLEXPRESS or 217.X.X.XSQLEXPRESS
Username: sa
Password: [password]
I get the following error message:
'Es kann keine Verbindung zum Server hergestellt werden.
Additional information:
Fehler beim Herstellen einer Verbindung mit dem Server. [...] error: 26'
Translation:
'No connection could be established.
Additional information:
Error during connection establishment to the server. The reason for the problem could be, that no remote connections are allowed in the default configuration. Error 26'
Do you need more information or do you have any idea about the reason causing the problems? A local connection via remote desktop and the management studio works perfectly.
Greetings and thanks
Martin Brenn
View 3 Replies
View Related
Aug 23, 2007
after moving off VS debugger and into management studio to exercise our SQLCLR sp, we notice that the 2nd execution gets an error suggesting that our static SqlCommand object is getting reused from the 1st execution (of the sp under mgt studio). If this is expected behavior, we have no problem limiting our statics to only completely reusable objects but would first like to know if this is expected? Is the fact that debugger doesnt show this behavior also expected?
View 4 Replies
View Related
Dec 7, 2005
Hi I am slowly getting to grips with SQL Server. As a part of this, I have been attempting to work on producing more efficient queries. This post is regarding what appears to be a discrepancy between the SQL Server execution plan and the actual time taken by a query to run. My brief is to produce an attendance system for an education establishment (I presume you know I'm not an A-Level student completing a project :p ). Circa 1.5m rows per annum, testing with ~3m rows currently. College_Year could strictly be inferred from the AttDateTime however it is included as a field because it a part of just about every PK this table is ever likely to be linked to. Indexes are not fully optimised yet. Table:CREATE TABLE [dbo].[AttendanceDets] ([College_Year] [smallint] NOT NULL ,[Group_Code] [char] (12) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,[Student_ID] [char] (8) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,[Session_Date] [datetime] NOT NULL ,[Start_Time] [datetime] NOT NULL ,[Att_Code] [char] (1) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ) ON [PRIMARY]GO CREATE CLUSTERED INDEX [IX_AltPK_Clust_AttendanceDets] ON [dbo].[AttendanceDets]([College_Year], [Group_Code], [Student_ID], [Session_Date], [Att_Code]) ON [PRIMARY]GO CREATE INDEX [All] ON [dbo].[AttendanceDets]([College_Year], [Group_Code], [Student_ID], [Session_Date], [Start_Time], [Att_Code]) ON [PRIMARY]GO CREATE INDEX [IX_AttendanceDets] ON [dbo].[AttendanceDets]([Att_Code]) ON [PRIMARY]GOALL inserts are via an overnight sproc - data comes from a third party system. Group_Code is 12 chars (no more no less), student_ID 8 chars (no more no less). I have created a simple sproc. I am using this as a benchmark against which I am testing my options. I appreciate that this sproc is an inefficient jack of all trades - it has been designed as such so I can compare its performance to more specific sprocs and possibly some dynamic SQL. Sproc:CREATE PROCEDURE [dbo].[CAMsp_Att] @College_Year AS SmallInt,@Student_ID AS VarChar(8) = '________', @Group_Code AS VarChar(12) = '____________', @Start_Date AS DateTime = '1950/01/01', @End_Date as DateTime = '2020/01/01', @Att_Code AS VarChar(1) = '_' AS IF @Start_Date = '1950/01/01'SET @Start_Date = CAST(CAST(@College_Year AS Char(4)) + '/08/31' AS DateTime) IF @End_Date = '2020/01/01'SET @End_Date = CAST(CAST(@College_Year +1 AS Char(4)) + '/07/31' AS DateTime) SELECT College_Year, Group_Code, Student_ID, Session_Date, Start_Time, Att_Code FROM dbo.AttendanceDets WHERE College_Year = @College_YearAND Group_Code LIKE @Group_CodeAND Student_ID LIKE @Student_IDAND Session_Date <= @End_DateAND Session_Date >=@Start_DateAND Att_Code LIKE @Att_CodeGOMy confusion lies with running the below script with Show Execution Plan:--SET SHOWPLAN_TEXT ON--Go DECLARE @Time as DateTime Set @Time = GetDate() select College_Year, group_code, Student_ID, Session_Date, Start_Time, Att_Code from attendanceDetswhere College_Year = 2005 AND group_code LIKE '____________' AND Student_ID LIKE '________'AND Session_Date <= '2005-11-16' AND Session_Date >= '2005-11-16' AND Att_Code LIKE '_' Print 'First query took: ' + CAST(DATEDIFF(ms, @Time, GETDATE()) AS VarCHar(5)) + ' milli-Seconds' Set @Time = GetDate() EXEC CAMsp_Att @College_Year = 2005, @Start_Date = '2005-11-16', @End_Date = '2005-11-16' Print 'Second query took: ' + CAST(DATEDIFF(ms, @Time, GETDATE()) AS VarCHar(5)) + ' milli-Seconds'GO --SET SHOWPLAN_TEXT OFF--GOThe execution plan for the first query appears miles more costly than the sproc yet it is effectively the same query with no parameters. However, my understanding is the cached plan substitutes literals for parameters anyway. In any case - the first query cost is listed as 99.52% of the batch, the sproc 0.48% (comparing the IO, cpu costs etc support this). BUT the text output is:(10639 row(s) affected) First query took: 596 milli-Seconds (10639 row(s) affected) Second query took: 2856 milli-SecondsI appreciate that logical and physical performance are not one and the same but can why is there such a huge discrepancy between the two? They are tested on a dedicated test server, and repeated running and switching the order of the queries elicits the same results. Sample data can be provided if requested but I assumed it would not shed much light. BTW - I know that additional indexes can bring the plans and execution time closer together - my question is more about the concept. If you've made it this far - many thanks.If you can enlighten me - infinite thanks.
View 10 Replies
View Related
Aug 3, 2007
Hello :
How to execute a procedure stored during execution of the report, that is before the poster the data.
Thnak you.
View 4 Replies
View Related