CLR Stored Procedure Crashing SQL Server
Mar 29, 2007
I had the following erroneous code in a SQL Server stored C# procedure:
class P
{
private DateTime? e;
public P(
DateTime? e)
{
this.e= e;
}
public DateTime? E
{
get
{
return E; // correction return e;
}
set
{
E= value; // correction e = value;
}
}
}
Calling the getter of E of the class P creates an infinite number of method calls. This causes the .NET stack overflow. This sometimes caused our SQL crash. Here's the log:
29.3.2007 9:46:08 A fatal error occurred in .NET Framework runtime. The server is shutting down.
29.3.2007 9:46:10 Microsoft SQL Server 2005 - 9.00.2153.00 (X64)
May 9 2006 13:58:37
Copyright (c) 1988-2005 Microsoft Corporation
In my opinion an error in SQL server CLR stored procedure must not be able to crash the whole SQL Server, as it seems to do. Could someone verify this?
What makes finding problems like this problematic is that the only error is like ".NET stack overflow". No pointer to where in the code the error occured. It took hours for me to find the problem
View 11 Replies
ADVERTISEMENT
Jan 29, 2015
I have some code that I need to run every quarter. I have many that are similar to this one so I wanted to input two parameters rather than searching and replacing the values. I have another stored procedure that's executed from this one that I will also parameter-ize. The problem I'm having is in embedding a parameter in the name of the called procedure (exec statement at the end of the code). I tried it as I'm showing and it errored. I tried googling but I couldn't find anything related to this. Maybe I just don't have the right keywords. what is the syntax?
CREATE PROCEDURE [dbo].[runDMQ3_2014LDLComplete]
@QQ_YYYY char(7),
@YYYYQQ char(8)
AS
begin
SET NOCOUNT ON;
select [provider group],provider, NPI, [01-Total Patients with DM], [02-Total DM Patients with LDL],
[Code] ....
View 9 Replies
View Related
Sep 19, 2006
I have a requirement to execute an Oracle procedure from within an SQL Server procedure and vice versa.
How do I do that? Articles, code samples, etc???
View 1 Replies
View Related
Sep 26, 2014
I have a stored procedure and in that I will be calling a stored procedure. Now, based on the parameter value I will get stored procedure name to be executed. how to execute dynamic sp in a stored rocedure
at present it is like EXECUTE usp_print_list_full @ID, @TNumber, @ErrMsg OUTPUT
I want to do like EXECUTE @SpName @ID, @TNumber, @ErrMsg OUTPUT
View 3 Replies
View Related
Jul 30, 2001
I am running SMS ontop of SQL 7. I keep getting these SQL dump files and cant figure out where to begin. Can somebody help and put me on the right path?
2001-07-22 12:08:55.46 spid12 Process ID 12 attempting to unlock unowned resource PAG: 7:1:507423..
2001-07-22 12:13:21.29 spid8 Error: 1203, Severity: 20, State: 1
2001-07-22 12:13:21.29 spid8 Process ID 8 attempting to unlock unowned resource PAG: 7:1:505802..
2001-07-22 15:15:48.20 spid11 Using 'sqlimage.dll' version '4.0.5'
Dump thread - spid = 11, PSS = 0x700634b4, EC = 0x216da084
Stack Dump being sent to D:MSSQL7logSQL02866.dmp
************************************************** *****************************
*
* BEGIN STACK DUMP:
* 07/22/01 15:16:00 spid 11
*
* Input Buffer 417 bytes -
* INSERT INTO Summarizers_Status (SiteCode, MessageDLL, MessageID, Status,
* Updated, GUID_ID) SELECT DISTINCT SiteCode, "SMS_RES1.DLL", 40, (SELECT
* ISNULL(MAX(x.Status), 0) FROM Summarizer_SiteSystem x WHERE x.SiteCode
* = a.SiteCode), (SELECT ISNULL(MAX(x.TimeReported), '1/1/1998 01:00') FRO
* M Summarizer_SiteSystem x WHERE x.SiteCode = a.SiteCode), "{78B42510-ABB
* D-11d1-BB12-3A84C6000000}" FROM Summarizer_SiteSystem a
*
************************************************** *****************************
-------------------------------------------------------------------------------
Short Stack Dump
0x77f67a6b Module(ntdll+7a6b) (ZwGetContextThread+b)
0x00784f83 Module(sqlservr+384f83) (utassert_fail+19f)
0x005b572c Module(sqlservr+1b572c) (ExecutionContext::Cleanup+9d)
0x004eb421 Module(sqlservr+eb421) (ExecutionContext::Purge+45)
0x004eb182 Module(sqlservr+eb182) (stopsubprocess+e5)
0x004e9d4e Module(sqlservr+e9d4e) (subproc_main+174)
0x41092a47 Module(ums+2a47) (ProcessWorkRequests+ec)
0x4109326b Module(ums+326b) (ThreadStartRoutine+138)
0x7800bee4 Module(MSVCRT+bee4) (beginthread+ce)
0x77f04ede Module(KERNEL32+4ede) (lstrcmpiW+be)
2001-07-22 15:16:01.24 kernel SQL Server Assertion: File: <proc.c>, line=1927
Failed Assertion = 'm_activeSdesList.Head () == NULL'.
2001-07-22 15:16:01.31 spid11 Using 'sqlimage.dll' version '4.0.5'
Dump thread - spid = 11, PSS = 0x700634b4, EC = 0x216da084
Stack Dump being sent to D:MSSQL7logSQL02867.dmp
View 1 Replies
View Related
Nov 7, 2000
Help!!!
our sql server (7.0) crashed today because it's running out of space, apparently as a result of some process(es) loading data onto it that left less than one mb of free space on the C/ drive. Most of the data and backups are on the D/ drive which has tons of free space. The swap file was on C/ but the dba moved it after today's episode. His diagnosis is that there are files being created in the server's cache that are clogging it up.
What I really need to find out if there are any temp files generated by scheduled packages that could cause this to happen? We are relatively new to executing jobs on the sql server, so this was not an anticipated situation. Essentially, this server has about 12 jobs that import and transform data from an AS/400 server onto the SQL Server every week. We've been running the jobs for about 4 months and just about 3 weeks ago I noticed a big degradation in the server's performance. Also, how can I find out which physical drive the jobs are residing on? Could anyone suggest on the best course of action please?
Irene
out if there are some sort of temp files that are generated when the scheduler executes jobs on the server.
View 2 Replies
View Related
Apr 3, 2006
Hi All
Last to last friday, the server crashed.We had to restart the machine to bring up the sql server.Initially we thought this as a one odd instance.This friday, almost the same time, it crashed again. By the time users complained saying they are not able to acces the application, the server froze.I was not able to see the processes running during this time.
Now I realised there is a potential problem.
I check all the logs - > SQL Server log, SQL Agent log, Event viewer.
I dont see any error messages related to this.
Since both weekends it happened at the same time, I assume that there might be some job running on the friday evening which is bringing the server down.
I checked for all the scheduled jobs and didnt find anything. So I assume this might be because of some adhoc jobs ran from the application which is causing this issue.
This have been highly escalated by the users and I have to act :mad:
I am planning to put a trace to see the happenings during this time.
Questions
1) What all parameters(in the profiler) should i take into consideration
2) Any other ways of troubleshooting the same.
3) Any whitepapers / documents to similar issues
Plz respond,my job is at stake :(
Thanks
Sree
View 10 Replies
View Related
Mar 22, 2000
Please direct me to detailed causes of SQL server crashing after a 17805 Invalid Buffer Received From Client. Our production server goes down, following this msg.
We applied service pack 5a, and it is still crashing. It crashes using either NAMED PIPES or TCP/IP protocol (via ODBC) The driver versions are older, ODBC 3.0 and SQL Server 2.65, respectively.
I need some direction on this. I'm leaning towards the possibility that this is an application problem.
Any help, any configuration setting changes, upgrades, workarounds, will be accepted. Thank you much!
View 1 Replies
View Related
Mar 17, 2004
Hi
We're having trouble with Enterprise manager when trying to view views or table data/properties, we get an access violation error and the database crashes sometimes corrupting tables.
Ive seen some posts stating a post SP3 for SQL Server is required and some posts saying client access should be modfied.
However our enterprise manager clients are registered with SA so I dont think that is an issue.
Can anyone give me some help with this and/or direct me to the hotfix please.
Cheers
Louise
View 2 Replies
View Related
May 20, 2004
I got a server that Crashed. My network group was able to get it up and running but it's vary fragile. One of the disk is done. What's the best way to get the my database:tables,views,stored procedured,dts packages, jobs off the bad server without crashing it again? I used the databae copy utility but found out that some of the database are replicated and it wont allow it to copy.
Thanks
Just another day in the life of a dba
View 2 Replies
View Related
May 24, 2007
i have my SQL server 2005 crashing when Events log is full
I have a hacker attacking my DB with a brut force tool but whereas he does not have the password, event log registers his access attempts as Failure Audit.
I have thousands of lines of "Failure Audit" in my event log
The event logs are set to be overwritten automatically when they reach 16Mb but it's not working correctly, they r not overwriting their content.
in SQL 2005 ERRORLOG file i see:
2007-05-14 01:57:11.57 spid80 Error: 17054, Severity: 16, State: 1.
2007-05-14 01:57:11.57 spid80 The current event was not reported to the Windows Events log. Operating system error = 1502(The event log file is full.). You may need to clear the Windows Events log if it is full.
SQL Agent cannot starts because it's not able to write in the event log that it's starting and when it cannot write in event log, it does not start and my sql server crashed
My Question is simply how to fix this issue once for all
View 3 Replies
View Related
Nov 15, 2000
I've installed the client tools on my notebook, and EM normally works properly. However, sometimes Enterprise Manager will crash on me for no obvious reason(it generates errors, but this takes forever, so i kill it). It is not consistent, nor can I reproduce the error, but it happens about once a day, never at the same time. Anyone else see this? My pc has win2K professional on it.
View 1 Replies
View Related
Jan 31, 2007
I just recently replaced my old HP laptop with a Sony VAIO. I installed all of my development software on it, including SQL Server 2005 and the studio. At some point when I am using the studio on this new laptop, if I try to resize any of the columns to better fit the data, it crashes my laptop. I get the infamous Blue Screen of Death.
The laptop is a Sony Vaio BX670P and it has Win XP SP2 with all of the latest and greatest updates loaded on it.
The BSD blames a driver for causing the crash and points out "win32k.exe" specifically. This has never happened to me before.
Does anyone know why this might be happening?
- - - -
- Will -
- - - -
http://www.strohlsitedesign.com
View 20 Replies
View Related
May 30, 2006
Hi,I'm accessing a pair of databases with ASP/ADO,and using stored procedures on the first access.The first access works OK - everything gets writtento where it's supposed to be.On attempting to write to a pair of database tablesin the second database (second access attempt),the server crashes, as does the app, and I get the following error:--------------------------------------------------------------------Server Error in '/Webfolder01' Application.Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.Exception Details: System.Data.SqlClient.SqlException: A transport-level error has occurred when receiving results from the server. (provider: Shared Memory Provider, error: 0 - The pipe has been ended.)--------------------------------------------------------------------After this, I have to go into the services panel and restart SQL 2005.This doesn't happen if I use small test data sets in the first access,and I can comment out the second access attempt, and the first accessexecutes just fine with both the large and small data sets,so I'm thinking that this has something to do with synchronisation:Perhaps the second attempt is being made before the server is ready.Is there something that I need to do to make certain that SQL 2005is ready to receive data?I'm using SqlBulkCopy with both accesses, but I don't see how thatcould be a problem.--------------------------------------------------------------------[SqlException (0x80131904): A transport-level error has occurred when receiving results from the server. (provider: Shared Memory Provider, error: 0 - The pipe has been ended.)] System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection) +857370 System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection) +734982 System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) +188 System.Data.SqlClient.TdsParserStateObject.ReadSniError(TdsParserStateObject stateObj, UInt32 error) +556 System.Data.SqlClient.TdsParserStateObject.ReadSni(DbAsyncResult asyncResult, TdsParserStateObject stateObj) +164 System.Data.SqlClient.TdsParserStateObject.ReadPacket(Int32 bytesExpected) +34 System.Data.SqlClient.TdsParserStateObject.ReadBuffer() +30 System.Data.SqlClient.TdsParserStateObject.ReadByte() +17 System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj) +59 System.Data.SqlClient.SqlBulkCopy.WriteToServerInternal() +1327 System.Data.SqlClient.SqlBulkCopy.WriteRowSourceToServer (Int32 columnCount) +916 System.Data.SqlClient.SqlBulkCopy.WriteToServer(DataTable table, DataRowState rowState) +176 System.Data.SqlClient.SqlBulkCopy.WriteToServer(DataTable table) +6 Database_control.DB_ctrl_class.load_datatable_to_DB_table(DB_ref_class src_table) in i:Virtual WebfoldersDBctrl.cs:978--------------------------------------------------------------------THANK YOU VERY MUCH!!!
View 4 Replies
View Related
Mar 18, 2008
I'm having many many issues installing sql server management tools. i had visual studio 2005 installed first, but uninstalled and sql related things before trying to install sql server management tools again - i also deleted the program files/microsoft sql server/ folder so there are no references.
Firstly the system configuration check gives me a warning that the system doesn't meet the recommended hardware requirements - this is wrong... i've got 2.33Ghz dual core + 1gb of ram...
I select just management tools + client connectivity to install and click next -> the setup support files/native client/owc11 etc all install fine but workstation components etc fail and the setup log appears to either be empty and not available
and MSXML6 fails... after clicking finish the installer appears to crash - : "Microsoft SQL Server 2005 Setup has encountered a problem and needs to close. We are sorry for the inconvenience"... I have tried all sorts of variations on this install and have had no problems in the past - please help!
The setup log from the MSXML6 failure -
=== Verbose logging started: 18/03/2008 12:34:09 Build type: SHIP UNICODE 3.01.4000.4039 Calling process: C:Program FilesMicrosoft SQL Server90Setup Bootstrapsetup.exe ===
MSI (c) (5C:78) [12:34:09:067]: Resetting cached policy values
MSI (c) (5C:78) [12:34:09:067]: Machine policy value 'Debug' is 0
MSI (c) (5C:78) [12:34:09:067]: ******* RunEngine:
******* Product: {AEB9948B-4FF2-47C9-990E-47014492A0FE}
******* Action:
******* CommandLine: **********
MSI (c) (5C:78) [12:34:09:067]: Client-side and UI is none or basic: Running entire install on the server.
MSI (c) (5C:78) [12:34:09:067]: Grabbed execution mutex.
MSI (c) (5C:78) [12:34:09:067]: Cloaking enabled.
MSI (c) (5C:78) [12:34:09:067]: Attempting to enable all disabled priveleges before calling Install on Server
MSI (c) (5C:78) [12:34:09:067]: Incrementing counter to disable shutdown. Counter after increment: 0
MSI (s) (28:E4) [12:34:09:113]: Grabbed execution mutex.
MSI (s) (28:74) [12:34:09:113]: Resetting cached policy values
MSI (s) (28:74) [12:34:09:113]: Machine policy value 'Debug' is 0
MSI (s) (28:74) [12:34:09:113]: ******* RunEngine:
******* Product: {AEB9948B-4FF2-47C9-990E-47014492A0FE}
******* Action:
******* CommandLine: **********
MSI (s) (28:74) [12:34:09:113]: Machine policy value 'DisableUserInstalls' is 0
MSI (s) (28:74) [12:34:09:113]: MainEngineThread is returning 1605
MSI (c) (5C:78) [12:34:09:113]: Decrementing counter to disable shutdown. If counter >= 0, shutdown will be denied. Counter after decrement: -1
MSI (c) (5C:78) [12:34:09:113]: MainEngineThread is returning 1605
=== Verbose logging stopped: 18/03/2008 12:34:09 ===
The log summary:
Microsoft SQL Server 2005 9.00.1399.06
==============================
OS Version : Microsoft Windows XP Professional Service Pack 2 (Build 2600)
Time : Tue Mar 18 12:05:06 2008
EOC429 : The current system does not meet recommended hardware requirements for this SQL Server release. For detailed hardware requirements, see the readme file or SQL Server Books Online.
Machine : EOC429
Product : Microsoft SQL Server Setup Support Files (English)
Product Version : 9.00.1399.06
Install : Successful
Log File : C:Program FilesMicrosoft SQL Server90Setup BootstrapLOGFilesSQLSetup0001_EOC429_SQLSupport_1.log
--------------------------------------------------------------------------------
Machine : EOC429
Product : Microsoft SQL Server Native Client
Product Version : 9.00.1399.06
Install : Successful
Log File : C:Program FilesMicrosoft SQL Server90Setup BootstrapLOGFilesSQLSetup0001_EOC429_SQLNCLI_1.log
--------------------------------------------------------------------------------
Machine : EOC429
Product : Microsoft Office 2003 Web Components
Product Version : 11.0.6558.0
Install : Successful
Log File : C:Program FilesMicrosoft SQL Server90Setup BootstrapLOGFilesSQLSetup0001_EOC429_OWC11_1.log
--------------------------------------------------------------------------------
Machine : EOC429
Product : Microsoft SQL Server 2005 Backward compatibility
Product Version : 8.05.1054
Install : Successful
Log File : C:Program FilesMicrosoft SQL Server90Setup BootstrapLOGFilesSQLSetup0001_EOC429_BackwardsCompat_1.log
--------------------------------------------------------------------------------
SQL Server Setup failed. For more information, review the Setup log file in %ProgramFiles%Microsoft SQL Server90Setup BootstrapLOGSummary.txt.
Time : Tue Mar 18 12:19:20 2008
List of log files:
C:Program FilesMicrosoft SQL Server90Setup BootstrapLOGFilesSQLSetup0001_EOC429_Core(Local).log
C:Program FilesMicrosoft SQL Server90Setup BootstrapLOGFilesSQLSetup0001_EOC429_SQLSupport_1.log
C:Program FilesMicrosoft SQL Server90Setup BootstrapLOGFilesSQLSetup0001_EOC429_SQLNCLI_1.log
C:Program FilesMicrosoft SQL Server90Setup BootstrapLOGFilesSQLSetup0001_EOC429_OWC11_1.log
C:Program FilesMicrosoft SQL Server90Setup BootstrapLOGFilesSQLSetup0001_EOC429_BackwardsCompat_1.log
C:Program FilesMicrosoft SQL Server90Setup BootstrapLOGFilesSQLSetup0001_EOC429_MSXML6_1.log
C:Program FilesMicrosoft SQL Server90Setup BootstrapLOGFilesSQLSetup0001_EOC429_Datastore.xml
C:Program FilesMicrosoft SQL Server90Setup BootstrapLOGFilesSQLSetup0001_EOC429_.NET Framework 2.0.log
C:Program FilesMicrosoft SQL Server90Setup BootstrapLOGFilesSQLSetup0001_EOC429_Core.log
C:Program FilesMicrosoft SQL Server90Setup BootstrapLOGSummary.txt
C:Program FilesMicrosoft SQL Server90Setup BootstrapLOGFilesSQLSetup0001_EOC429_.NET Framework 2.0 LangPack.log
C:Program FilesMicrosoft SQL Server90Setup BootstrapLOGFilesSQLSetup0001_EOC429_.NET Framework Upgrade Advisor.log
C:Program FilesMicrosoft SQL Server90Setup BootstrapLOGFilesSQLSetup0001_EOC429_.NET Framework Upgrade Advisor LangPack.log
C:Program FilesMicrosoft SQL Server90Setup BootstrapLOGFilesSQLSetup0001_EOC429_.NET Framework Windows Installer.log
C:Program FilesMicrosoft SQL Server90Setup BootstrapLOGFilesSQLSetup0001_EOC429_.NET Framework Windows Installer LangPack.log
C:Program FilesMicrosoft SQL Server90Setup BootstrapLOGFilesSQLSetup0001_EOC429_SNAC.log
C:Program FilesMicrosoft SQL Server90Setup BootstrapLOGFilesSQLSetup0001_EOC429_Support.log
C:Program FilesMicrosoft SQL Server90Setup BootstrapLOGFilesSQLSetup0001_EOC429_SCC.log
C:Program FilesMicrosoft SQL Server90Setup BootstrapLOGFilesSQLSetup0001_EOC429_WI.log
View 3 Replies
View Related
Jan 21, 2014
On SQL 2012 (64bit) I have a CLR stored procedure that calls another, T-SQL stored procedure.
The CLR procedure passes a sizeable amount of data via a user defined table type resp.table values parameter. It passes about 12,000 rows with 3 columns each.
For some reason the call of the procedure is verz very slow. I mean just the call, not the procedure.
I changed the procdure to do nothing (return 1 in first line).
So with all parameters set from
command.ExecuteNonQuery()to
create proc usp_Proc1
@myTable myTable read only
begin
return 1
end
it takes 8 seconds.I measured all other steps (creating the data table in CLR, creating the SQL Param, adding it to the command, executing the stored procedure) and all of them work fine and very fast.
When I trace the procedure call in SQL Profiler I get a line like this for each line of the data table (12,000)
SP:StmtCompleted -- Encrypted Text.
As I said, not the procedure or the creation of the data table takes so long, really only the passing of the data table to the procedure.
View 5 Replies
View Related
Nov 1, 2007
Hi all - I'm trying to optimized my stored procedures to be a bit easier to maintain, and am sure this is possible, not am very unclear on the syntax to doing this correctly. For example, I have a simple stored procedure that takes a string as a parameter, and returns its resolved index that corresponds to a record in my database. ie
exec dbo.DeriveStatusID 'Created'
returns an int value as 1
(performed by "SELECT statusID FROM statusList WHERE statusName= 'Created')
but I also have a second stored procedure that needs to make reference to this procedure first, in order to resolve an id - ie:
exec dbo.AddProduct_Insert 'widget1'
which currently performs:SET @statusID = (SELECT statusID FROM statusList WHERE statusName='Created')INSERT INTO Products (productname, statusID) VALUES (''widget1', @statusID)
I want to simply the insert to perform (in one sproc):
SET @statusID = EXEC deriveStatusID ('Created')INSERT INTO Products (productname, statusID) VALUES (''widget1', @statusID)
This works fine if I call this stored procedure in code first, then pass it to the second stored procedure, but NOT if it is reference in the second stored procedure directly (I end up with an empty value for @statusID in this example).
My actual "Insert" stored procedures are far more complicated, but I am working towards lightening the business logic in my application ( it shouldn't have to pre-vet the data prior to executing a valid insert).
Hopefully this makes some sense - it doesn't seem right to me that this is impossible, and am fairly sure I'm just missing some simple syntax - can anyone assist?
View 1 Replies
View Related
Oct 14, 2007
I am calling a stored procedure (say X) and from that stored procedure (i mean X) i want to call another stored procedure (say Y)asynchoronoulsy. Once stored procedure X is completed then i want to return execution to main program. In background, Stored procedure Y will contiue his work. Please let me know how to do that using SQL Server 2000 and ASP.NET 2.
View 3 Replies
View Related
Mar 3, 2008
Hi all,
I have 2 sets of sql code in my SQL Server Management Stidio Express (SSMSE):
(1) /////--spTopSixAnalytes.sql--///
USE ssmsExpressDB
GO
CREATE Procedure [dbo].[spTopSixAnalytes]
AS
SET ROWCOUNT 6
SELECT Labtests.Result AS TopSixAnalytes, LabTests.Unit, LabTests.AnalyteName
FROM LabTests
ORDER BY LabTests.Result DESC
GO
(2) /////--spTopSixAnalytesEXEC.sql--//////////////
USE ssmsExpressDB
GO
EXEC spTopSixAnalytes
GO
I executed them and got the following results in SSMSE:
TopSixAnalytes Unit AnalyteName
1 222.10 ug/Kg Acetone
2 220.30 ug/Kg Acetone
3 211.90 ug/Kg Acetone
4 140.30 ug/L Acetone
5 120.70 ug/L Acetone
6 90.70 ug/L Acetone
/////////////////////////////////////////////////////////////////////////////////////////////
Now, I try to use this Stored Procedure in my ADO.NET-VB 2005 Express programming:
//////////////////--spTopSixAnalytes.vb--///////////
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim sqlConnection As SqlConnection = New SqlConnection("Data Source = .SQLEXPRESS; Integrated Security = SSPI; Initial Catalog = ssmsExpressDB;")
Dim sqlDataAdapter As SqlDataAdapter = New SqlDataAdaptor("[spTopSixAnalytes]", sqlConnection)
sqlDataAdapter.SelectCommand.Command.Type = CommandType.StoredProcedure
'Pass the name of the DataSet through the overloaded contructor
'of the DataSet class.
Dim dataSet As DataSet ("ssmsExpressDB")
sqlConnection.Open()
sqlDataAdapter.Fill(DataSet)
sqlConnection.Close()
End Sub
End Class
///////////////////////////////////////////////////////////////////////////////////////////
I executed the above code and I got the following 4 errors:
Error #1: Type 'SqlConnection' is not defined (in Form1.vb)
Error #2: Type 'SqlDataAdapter' is not defined (in Form1.vb)
Error #3: Array bounds cannot appear in type specifiers (in Form1.vb)
Error #4: 'DataSet' is not a type and cannot be used as an expression (in Form1)
Please help and advise.
Thanks in advance,
Scott Chang
More Information for you to know:
I have the "ssmsExpressDB" database in the Database Expolorer of VB 2005 Express. But I do not know how to get the SqlConnection and the SqlDataAdapter into the Form1. I do not know how to get the Fill Method implemented properly.
I try to learn "Working with SELECT Statement in a Stored Procedure" for printing the 6 rows that are selected - they are not parameterized.
View 11 Replies
View Related
Nov 14, 2014
I am new to work on Sql server,
I have One Stored procedure Sp_Process1, it's returns no of columns dynamically.
Now the Question is i wanted to get the "Sp_Process1" procedure return data into Temporary table in another procedure or some thing.
View 1 Replies
View Related
Dec 28, 2005
I have a sub that passes values from my form to my stored procedure. The stored procedure passes back an @@IDENTITY but I'm not sure how to grab that in my asp page and then pass that to my next called procedure from my aspx page. Here's where I'm stuck: Public Sub InsertOrder() Conn.Open() cmd = New SqlCommand("Add_NewOrder", Conn) cmd.CommandType = CommandType.StoredProcedure ' pass customer info to stored proc cmd.Parameters.Add("@FirstName", txtFName.Text) cmd.Parameters.Add("@LastName", txtLName.Text) cmd.Parameters.Add("@AddressLine1", txtStreet.Text) cmd.Parameters.Add("@CityID", dropdown_city.SelectedValue) cmd.Parameters.Add("@Zip", intZip.Text) cmd.Parameters.Add("@EmailPrefix", txtEmailPre.Text) cmd.Parameters.Add("@EmailSuffix", txtEmailSuf.Text) cmd.Parameters.Add("@PhoneAreaCode", txtPhoneArea.Text) cmd.Parameters.Add("@PhonePrefix", txtPhonePre.Text) cmd.Parameters.Add("@PhoneSuffix", txtPhoneSuf.Text) ' pass order info to stored proc cmd.Parameters.Add("@NumberOfPeopleID", dropdown_people.SelectedValue) cmd.Parameters.Add("@BeanOptionID", dropdown_beans.SelectedValue) cmd.Parameters.Add("@TortillaOptionID", dropdown_tortilla.SelectedValue) 'Session.Add("FirstName", txtFName.Text) cmd.ExecuteNonQuery() cmd = New SqlCommand("Add_EntreeItems", Conn) cmd.CommandType = CommandType.StoredProcedure cmd.Parameters.Add("@CateringOrderID", get identity from previous stored proc) <------------------------- Dim li As ListItem Dim p As SqlParameter = cmd.Parameters.Add("@EntreeID", Data.SqlDbType.VarChar) For Each li In chbxl_entrees.Items If li.Selected Then p.Value = li.Value cmd.ExecuteNonQuery() End If Next Conn.Close()I want to somehow grab the @CateringOrderID that was created as an end product of my first called stored procedure (Add_NewOrder) and pass that to my second stored procedure (Add_EntreeItems)
View 9 Replies
View Related
May 23, 2007
Hello to all,
I have a stored procedure. If i give this command exce ShortestPath 3418, '4125', 5 in a script and excute it. It takes more 30 seconds time to be excuted.
but i excute it with the same parameters direct in Microsoft SQL Server Management Studio , It takes only under 1 second time
I don't know why?
Maybe can somebody help me?
thanks in million
best Regards
Pinsha
My Procedure Codes are here:set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,>
-- Description: <Description,,>
-- =============================================
ALTER PROCEDURE [dbo].[ShortestPath] (@IDMember int, @IDOther varchar(1000),@Level int, @Path varchar(100) = null output )
AS
BEGIN
if ( @Level = 1)
begin
select @Path = convert(varchar(100),IDMember)
from wtcomValidRelationships
where wtcomValidRelationships.[IDMember]= @IDMember
and PATINDEX('%'+@IDOther+'%',(select RelationshipIDs from wtcomValidRelationships where IDMember = @IDMember) ) > 0
end
if (@Level = 2)
begin
select top 1 @Path = convert(varchar(100),A.IDMember)+'-'+convert(varchar(100),B.IDMember)
from wtcomValidRelationships as A, wtcomValidRelationships as B
where A.IDMember = @IDMember and charindex(convert(varchar(100),B.IDMember),A.RelationshipIDS) > 0
and PATINDEX('%'+@IDOther+'%',B.RelationshipIDs) > 0
end
if (@Level = 3)
begin
select top 1 @Path = convert(varchar(100),A.IDMember)+ '-'+convert(varchar(100),B.IDMember)+'-'+convert(varchar(100),C.IDMember)
from wtcomValidRelationships as A, wtcomValidRelationships as B, wtcomValidRelationships as C
where A.IDMember = @IDMember and charindex(convert(varchar(100),B.IDMember),A.RelationshipIDS) > 0
and charindex(convert(varchar(100),C.IDMember),B.RelationshipIDs) > 0 and PATINDEX('%'+@IDOther+'%',C.RelationshipIDs) > 0
end
if ( @Level = 4)
begin
select top 1 @Path = convert(varchar(100),A.IDMember)+ '-'+convert(varchar(100),B.IDMember)+'-'+convert(varchar(100),C.IDMember)+'-'+convert(varchar(100),D.IDMember)
from wtcomValidRelationships as A, wtcomValidRelationships as B, wtcomValidRelationships as C, wtcomValidRelationships as D
where A.IDMember = @IDMember and charindex(convert(varchar(100),B.IDMember),A.RelationshipIDS) > 0
and charindex(convert(varchar(100),C.IDMember),B.RelationshipIDs) > 0 and charindex(convert(varchar(100),D.IDMember), C.RelationshipIDs) > 0
and PATINDEX('%'+@IDOther+'%',D.RelationshipIDs) > 0
end
if (@Level = 5)
begin
select top 1 @Path = convert(varchar(100),A.IDMember)+ '-'+convert(varchar(100),B.IDMember)+'-'+convert(varchar(100),C.IDMember)+'-'+convert(varchar(100),D.IDMember)+'-'+convert(varchar(100),E.IDMember)
from wtcomValidRelationships as A, wtcomValidRelationships as B, wtcomValidRelationships as C, wtcomValidRelationships as D, wtcomValidRelationships as E
where A.IDMember = @IDMember and charindex(convert(varchar(100),B.IDMember),A.RelationshipIDS) > 0
and charindex(convert(varchar(100),C.IDMember),B.RelationshipIDs) > 0 and charindex(convert(varchar(100),D.IDMember), C.RelationshipIDs) > 0
and charindex(convert(varchar(100),E.IDMember),D.RelationshipIDs) > 0 and PATINDEX('%'+@IDOther+'%',E.RelationshipIDs) > 0
end
if (@Level = 6)
begin
select top 1 @Path = '' from wtcomValidRelationships
end
END
View 6 Replies
View Related
Mar 28, 2007
I have a stored procedure that calls a msdb stored procedure internally. I granted the login execute rights on the outer sproc but it still vomits when it tries to execute the inner. Says I don't have the privileges, which makes sense.
How can I grant permissions to a login to execute msdb.dbo.sp_update_schedule()? Or is there a way I can impersonate the sysadmin user for the call by using Execute As sysadmin some how?
Thanks in advance
View 9 Replies
View Related
Jan 23, 2008
Has anyone encountered cases in which a proc executed by DTS has the following behavior:
1) underperforms the same proc when executed in DTS as opposed to SQL Server Managemet Studio
2) underperforms an ad-hoc version of the same query (UPDATE) executed in SQL Server Managemet Studio
What could explain this?
Obviously,
All three scenarios are executed against the same database and hit the exact same tables and indices.
Query plans show that one step, a Clustered Index Seek, consumes most of the resources (57%) and for that the estimated rows = 1 and actual rows is 10 of 1000's time higher. (~ 23000).
The DTS execution effectively never finishes even after many hours (10+)
The Stored procedure execution will finish in 6 minutes (executed after the update ad-hoc query)
The Update ad-hoc query will finish in 2 minutes
View 1 Replies
View Related
Mar 10, 2005
I didn't want to maintain similar/identical tables in a legacy FoxPro system and another system with SQL Server back end. Both systems are active, but some tables are shared.
Initially I was going to use a Linked Server to the FoxPro to pull the FP data when needed. This works. But, I've come up with what I believe is a better solution. Keep in mind that these tables are largely static - occassional changes, edits.
I will do a 1 time DTS from FP into SQL Server tables.
I then create INSERT and UPDATE triggers within FoxPro.
These triggers fire a stored procedure in FoxPro that establishes a connection to the SQL Server and fire the appropriate stored procedure on SQL Server to CREATE and/or UPDATE the corresponding table there.
In the end - the tables are local to both apps.
If the UPDATES or TRIGGERS fail I write to an error log - and in that rare case - I can manually fix. I could set it up to email me from within FoxPro as well if needed.
Here's the FoxPro and SQL Server code for reference for the Record Insert:
FOXPRO employee.dbf InsertTrigger:
employee_insert_trigger(VAL(Employee.ep_pk),Employ ee.fname,Employee.lname,Employee.email,Employee.us er_login,Employee.phone)
FOXPRO corresponding Stored Procedure:
FUNCTION EMPLOYEE_INSERT_TRIGGER
PARAMETERS wepk,wefname,welname,weemail,WEUSERID,WEPHONE
nhandle=SQLCONNECT('SS_PDITHP3','userid','password ')
IF nhandle<0
m.errclose=.f.
IF !USED("errorlog")
USE tisdata!errorlog IN SELECT(1)
m.errclose=.t.
ENDIF
SELECT errorlog
INSERT INTO errorlog (date, time, program,source,user) ;
values (DATE(), TIME(), 'EMPLOYEE_INSERT_TRIGGER','nhandle<0 PARAMS: '+STR(wepk)+wefname+welname+weemail+WEUSERID+WEPHO NE,GETENV("username"))
IF m.errclose
USE IN errorlog
ENDIF
RETURN
ENDIF
nquery="exec ewo_sp_insertNewEmployee @WEPK ="+STR(wepk)+",@WEFNAME ='"+wefname+"',@WELNAME ='"+welname+"',@WEEMAIL ='"+weemail+"',@WEUSERID ='"+weuserid+"',@WEPHONE='"+wephone+"',@RETCODE =0"
nsucc=SQLEXEC(nhandle,nquery)
SQLDISCONNECT(nhandle)
IF nSucc<0
m.errclose=.f.
IF !USED("errorlog")
USE tisdata!errorlog IN SELECT(1)
m.errclose=.t.
ENDIF
SELECT errorlog
INSERT INTO errorlog (date, time, program,source,user) ;
values (DATE(), TIME(), 'EMPLOYEE_INSERT_TRIGGER','nSucc<0 PARAMS: '+STR(wepk)+wefname+welname+weemail+WEUSERID+WEPHO NE,GETENV("username"))
IF m.errclose
USE IN errorlog
ENDIF
ENDIF
RETURN
SQL SERVER Stored Procedure called from FOXPRO Stored Procedure
CREATE procedure ewo_sp_insertNewEmployee (
@WEPK int,
@WEFNAME char(20),
@WELNAME char(20),
@WEEMAIL char(50),
@WEUSERID char(15),
@WEPHONE char(25),
@RETCODE int OUTPUT
)
AS
insert into WO_EMP (
WE_PK,
WE_FNAME,
WE_LNAME,
WE_EMAIL,
WE_USERID,
WE_PHONE
)
VALUES (
@WEPK,
@WEFNAME,
@WELNAME,
@WEEMAIL,
@WEUSERID,
@WEPHONE
)
IF @@ERROR <> 0
BEGIN
SET @RETCODE=@@ERROR
END
ELSE
BEGIN
-- SUCCESS!!
SET @RETCODE=0
END
return @RETCODE
GO
View 2 Replies
View Related
Sep 13, 2007
Hi all,
I am trying to debug stored procedure using visual studio. I right click on connection and checked 'Allow SQL/CLR debugging' .. the store procedure is not local and is on sql server.
Whenever I tried to right click stored procedure and select step into store procedure> i get following error
"User 'Unknown user' could not execute stored procedure 'master.dbo.sp_enable_sql_debug' on SQL server XXXXX. Click Help for more information"
I am not sure what needs to be done on sql server side
We tried to search for sp_enable_sql_debug but I could not find this stored procedure under master.
Some web page I came accross says that "I must have an administratorial rights to debug" but I am not sure what does that mean?
Please advise..
Thank You
View 3 Replies
View Related
Oct 9, 2007
Can someone help me with my SQL stored procedure? I am trying to do a query. The query will return one record. I then want to set a single valuedepending on the record returned from the query. Here is my sql stored proc. And below it is the error message. Please can someone help me?
USE [QMS07]GO/****** Object: StoredProcedure [dbo].[GetQuarterIdBasedOnDescription] ******/SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGO
ALTER PROCEDURE [dbo].[GetQuarterIdBasedOnDescription]( @QuarterString nvarchar(10), @TheQuarterId int output)AS
BEGIN SELECT QuarterId from Quarter WHERE Description=@QuarterString @TheQuarterId = QuarterId END
------------------------------------------------------------Msg 102, Level 15, State 1, Procedure GetQuarterIdBasedOnDescription, Line 10Incorrect syntax near ','.
View 2 Replies
View Related
Jan 20, 2004
Here is my problem:
I am designing Support System. I have a stored procedure for storing new Support Ticket. This stored procedure internally gets next ticket number and inserts Support Ticket
CREATE PROCEDURE [sp_SaveSupportTicket]
(
@pid int,
@uidGen int,
@status VarChar (100),
@probDes text,
@probSol text,
@guestName VarChar (100),
@os VarChar (100),
@roomNum VarChar (100)
)
AS
DECLARE @ticNum int
SELECT @ticNum = MAX(ticNum) + 1 FROM sup_TicDetails
INSERT INTO sup_TicDetails ( ticNum, pid, uidGen, status, probDes, probSol, guestName, os, roomNum,dateofsub)
VALUES (@ticNum, @pid, @uidGen, @status, @probDes, @probSol, @guestName, @os, @roomNum, CONVERT(VARCHAR,GETDATE(),101))
GO
Now... before this happens, on my ASP.NET Page I have a label Ticket# . This label displays next ticket number
CREATE PROCEDURE [sp_GetNextTicketNumber] AS
SELECT max (ticNum) + 1
FROM sup_TicDetails
GO
Now.. how can I have only 1 stored Procedure so that I can obtain next ticket number and display it on ASP.NET page and when I hit "Submit Ticket" sp_SaveSupportTicket gets executed ??
I hope I have made my problem clear !! If not let me know.......
View 18 Replies
View Related
Jan 28, 2004
please can someone provide some useful links where i can get powerful
documentation for using stored procedures with microsoft SQL Server
rgds.
View 4 Replies
View Related
Jul 20, 2005
This one's really got me. I have a VB.NET (version 1.1.4322) projectthat provides an easy way to execute stored procedures on a genericlevel. When I run the code on computer A (running SQL Server 2000version 08.00.0194) the code works great. However, computer B(running SQL Server 2000 version 08.00.0534) bombs when I try toexecute the sproc saying 'Could not find stored procedure'spmw_ReadByPage'. My thought process went as follows...1. Does the procedure really exist. Yes it did. (I tried fullyqualifying it too...'dbo.spmw_ReadByPage')2. Do I have permission to execute the procedure with the way I'mlogging into the database. Yes I did.3. Can I execute a different stored procedure in that db with theexact same code. Yes I could.4. Can I run the same procedure simpliefied to just return a value andno parameters. YES I COULD!!5. So it must be an error in the stored procedure. NO, it executeswith the same parameters in Query Analyzer just fine.6. At this point I guess that what I've come to is....that in version08.00.0534 of SQL SERVER 2000, I could NOT execute any storedprocedure in VB.NET if it accepted parameters (Of course, I mean byusing the OleDBCommand object)Is this true? Is it just me? Any help would be greatly appreciated.Here's what my code looks like. (By the way, the Parameters collectionjust has some home-made objects that have the same properties as aOleDBParameter object, so you don't need it to try the example. Anysproc that takes parameters should reproduce the error.)Public Function ExecuteProc(ByVal ExecutionStyle As ExecutionStyle,Optional ByVal sSQL As String = "") As Boolean'Create a command objectDim oCommand As New OleDbCommand'Create a connection to our default database and open itDim oConn As New OleDbConnection(DBConn.DefaultConnectString)oConn.Open()Try'Go ahead and assing our connection to our Command objectoCommand.Connection = oConn'OK. Did they pass us an SQL statement?If sSQL.Trim <> "" And IsNothing(Parameters) ThenTry to use the sql statementoCommand.CommandType = CommandType.TextoCommand.CommandText = sSQLElse'Don't sweat it, we'll do it for yaoCommand.CommandType = CommandType.StoredProcedure'What's the name of the procedure?oCommand.CommandText = ProcedureName'Use the Parameters the user has specified to createthe'command object parametersFor l = 1 To Parameters.CountWith Parameters(l)Dim oParm As New OleDb.OleDbParameter'Create a new parameteroParm = oCommand.CreateParameter()'Set our parm propertiesoParm.ParameterName = .NameoParm.Direction = .DirectionoParm.OleDbType = .TypeoParm.Value = .Value'Add parameter to our commandoCommand.Parameters.Add(oParm)End WithNextEnd If'Execute our command the way we specifiedSelect Case ExecutionStyleCase ExecutionStyle.ExecuteNonQuerymRowsAffected = oCommand.ExecuteNonQueryCase ExecutionStyle.ExecuteResultSet'Throw that guy in a table so that we canDim oAdapter As New OleDbDataAdapter(oCommand)Dim oSet As New DataSet'Use our data adapter to fill our data setoAdapter.Fill(oSet, "ResultSet")'User our new data table to set our propertiesmResultSet = oSet.Tables("ResultSet")mRowsAffected = 0mResultCount = oSet.Tables("ResultSet").Rows.CountCase ExecutionStyle.ExecuteScalar'Execute this guy returning a single value as anobjectmScalarValue = oCommand.ExecuteScalar()If Not IsNothing(mScalarValue) ThenmResultCount = 1End IfEnd Select'Now that we have executed our commands, we need to'populate the value property for our Output and ReturnvaluesFor l = 0 To oCommand.Parameters.Count - 1With oCommand.Parameters(l)If .Direction = ParameterDirection.InputOutput _Or .Direction = ParameterDirection.Output ThenParameters(l).Value = .ValueEnd IfEnd WithNext'CleanupoConn.Close()ExecuteProc = TrueCatch ex As ExceptionmResultDesc = ex.MessagemResultCode = Err.NumberEnd TryEnd Function
View 3 Replies
View Related
Dec 19, 2005
Has anybody here seen and resolved the following error?
The MS DTC Transaction Manager is in an inconsistent state and cannot proceed. Please contact Microsoft Product Support. (null)
File: . mtx.cpp, Line: 2570.
We've had this just crop up on a server over the last week. Not finding a lot.
View 4 Replies
View Related
Sep 27, 2007
I have a linked server from Sql Server 2000 to Sybase Adaptive Server 12.5.1.
When i try to call a stored procedure on Sybase from Sqlserver i get the following message:
"could not execute procedure sp_who on remote server 'linked server name'(42000,7212)
command executed from sql server:
exec <linked_server>.<database>..sp_who
i am able to user open openquery for selects and inserts, successfully
Help appreciated
Thanks.
View 4 Replies
View Related
Apr 18, 2008
Hi there,
I was wondering if someone can point out the error or the thing I shouldn't be doing in a stored procedure on SQL Server 2005. I want to switch from SQL Server 2000 to SQL Server 2005 which all seems to work just fine, but one stored procedure is causing me headache.
I could pin the problem down to this query:
DECLARE @Package_ID bigint
DECLARE @Email varchar(80)
DECLARE @Customer_ID bigint
DECLARE @Payment_Type tinyint
DECLARE @Payment_Status tinyint
DECLARE @Booking_Type tinyint
SELECT @Package_ID = NULL
SELECT @Email = NULL
SELECT @Customer_ID = NULL
SELECT @Payment_Type = NULL
SELECT @Payment_Status = NULL
SELECT @Booking_Type = NULL
CREATE TABLE #TempTable(
PACKAGE_ID bigint,
PRIMARY KEY (PACKAGE_ID))
INSERT INTO
#TempTable
SELECT
PACKAGE.PACKAGE_ID
FROM
PACKAGE (nolock) LEFT JOIN BOOKING ON PACKAGE.PACKAGE_ID = BOOKING.PACKAGE_ID
LEFT JOIN CUSTOMER (nolock) ON PACKAGE.CUSTOMER_ID = CUSTOMER.CUSTOMER_ID
LEFT JOIN ADDRESS_LINK (nolock) ON ADDRESS_LINK.SOURCE_TYPE = 1 AND ADDRESS_LINK.SOURCE_ID = CUSTOMER.CUSTOMER_ID
LEFT JOIN ADDRESS (nolock) ON ADDRESS_LINK.ADDRESS_ID = ADDRESS.ADDRESS_ID
WHERE
PACKAGE.PACKAGE_ID = ISNULL(@Package_ID,PACKAGE.PACKAGE_ID)
AND PACKAGE.CUSTOMER_ID = ISNULL(@Customer_ID,PACKAGE.CUSTOMER_ID)
AND PACKAGE.PAYMENT_TYPE = ISNULL(@Payment_Type,PACKAGE.PAYMENT_TYPE)
AND PACKAGE.PAYMENT_STATUS = ISNULL(@Payment_Status,PACKAGE.PAYMENT_STATUS)
AND BOOKING.BOOKING_TYPE = ISNULL(@Booking_Type,BOOKING.BOOKING_TYPE)
-- If this line below is included the request will take about 90 seconds whereas it takes 1 second if it is outcommented
--AND ADDRESS.EMAIl LIKE '%' + ISNULL(@Email, ADDRESS.EMAIL) + '%'
GROUP BY
PACKAGE.PACKAGE_ID
DROP TABLE #TempTable
The request is performing quite well on the SQL Server 2000 but on the SQL Server 2005 it takes much longer. I already installed the SP2 x64, I'm running the SQL Server 2005 on a x64 environment.
As I stated in the comment in the query it takes 90 seconds to finish with the line included, but if I exclude the line it takes 1 second.
I think there must be something wrong with the join's or something else which has maybe changed in SQL Server 2005. All the tables joined have a primary key.
Maybe you folks can spot the error / mistake / wrong type of doing things easily.
I would appreciate any help you can offer me to solve this problem.
On the web I saw that there is a Cumulative Update 4 for the SP2 which fixes the following:
942659 (http://support.microsoft.com/kb/942659/)
FIX: The query performance is slower when you run the query in SQL Server 2005 than when you run the query in SQL Server 2000
Anyhow I think the problem is something else, I haven't tried out the cumulative update yet, as I think it is something different, more general why this query takes ages to process.
Thanks again for any help
Best regards,
Pascal
View 9 Replies
View Related