|
First, find active connection by using the procedures:
sp_who or sp_who2
this will return a list of all active connections,
then to stop a non-needed session, get the SPID of the session you want to end and use the KILL command like so..
KILL {SPID of connection you want terminated)
and there you go... to test this, use Query analyzer.
- Sage
|
|
|
|
|
Thanks for your reply, but i want to ask that how could we close sleeping database connection in Visual C++ (i.e programatically) by spid.Please tell if you have some knowledge about it.
|
|
|
|
|
I have added a component that access database using ADO into an existiong application which used Pro-C to connect to an oracle database. I have tested with both MS Access and MS SQL Server are working fine, however when I tried to connect to oracle with the ADO component, the Pro-C which also connect to oracle database will give an exception error while disconnecting, the error is something like access voilation of NTDLL.dll. I noticed that both the connection with Pro-C and ADO seems not to be allow to exist at the same time. Any idea ?
|
|
|
|
|
I have done some research on some different newsgroups
and website and think I have figured out how to upload a
document file into my SQL Server. below is the code I am
using, but it never store the data into the database. I
do not get any error messages so I assume it works, but when
I check the table, there is no data. Is there something I am missing?
Thanks for your help.
<br />
Public Function StoreFile(ByVal FileData As Byte(), ByVal ServerName As String, ByVal SqlPassword As String, ByVal SqlUser As String)<br />
'Make the Connection to the SQL server<br />
Dim ConnectionString As String = ""<br />
ConnectionString = ConnectionString & "data source=" & ServerName & ";"<br />
ConnectionString = ConnectionString & "password=" & SqlPassword & ";"<br />
ConnectionString = ConnectionString & "persist security info=False;"<br />
ConnectionString = ConnectionString & "user id=" & SqlUser & ";"<br />
'ConnectionString = ConnectionString & "packet(Size = 4096)"<br />
<br />
Try<br />
'Declare the Connection Object.<br />
Dim Conn As SqlConnection = New SqlConnection(ConnectionString)<br />
'Open the Connection.<br />
Conn.Open()<br />
<br />
<br />
'Declare a DataAdapter.<br />
Dim DA As SqlDataAdapter = New SqlDataAdapter()<br />
<br />
'Set the Select,Delete,Insert, and Update Command for this DataAdapter<br />
DA.SelectCommand = New SqlCommand("SELECT DOC_Type, DOC_Data, DOC_ID FROM EDIAPPS.dbo.Documents_All", Conn)<br />
DA.InsertCommand = New SqlCommand("INSERT INTO EDIAPPS.dbo.Documents_All(DOC_Type, DOC_Data) VALUES (@DOC_Type, @DOC_Data); SELECT DOC_Type, DOC_Data, DOC_ID FROM EDIAPPS.dbo.Documents_All WHERE (DOC_ID = @@IDENTITY)", Conn)<br />
DA.UpdateCommand = New SqlCommand("UPDATE EDIAPPS.dbo.Documents_All SET DOC_Type = @DOC_Type, DOC_Data = @DOC_Data WHERE (DOC_ID = @Original_DOC_ID) AND (DOC_Type = @Original_DOC_Type); SELECT DOC_Type, DOC_Data, DOC_ID FROM EDIAPPS.dbo.Documents_All WHERE (DOC_ID = @DOC_ID)", Conn)<br />
DA.DeleteCommand = New SqlCommand("DELETE FROM EDIAPPS.dbo.Documents_All WHERE (DOC_ID = @Original_DOC_ID) AND (DOC_Type = @Original_DOC_Type)", Conn)<br />
<br />
'Delclare a dataSet Object.<br />
Dim DS As New DataSet()<br />
<br />
'Fill the Dataset with the Table data from the Database.<br />
DA.Fill(DS)<br />
<br />
'Delclare a New DataRow Object.<br />
Dim DR As DataRow = DS.Tables(0).NewRow<br />
<br />
'Populate the new row with our information.<br />
DR("DOC_Type") = 1<br />
DR("DOC_Data") = FileData<br />
<br />
'Add New Row to out DataSet.<br />
DS.Tables(0).Rows.Add(dr)<br />
DS.AcceptChanges()<br />
<br />
'Update the Database with our changes.<br />
DA.Update(DS)<br />
Conn.Close()<br />
Catch Ex As Exception<br />
MessageBox.Show(Ex.Message, "Application Error", MessageBoxButtons.OK)<br />
Return False<br />
Catch DBE As SqlClient.SqlException<br />
MessageBox.Show(DBE.Message, "SQL Error", MessageBoxButtons.OK)<br />
Return False<br />
Finally<br />
End Try<br />
<br />
End Function<br />
=================================
When I was in school, all I wanted was to get out into the real world.
Now that I'm in the real world, all I want is to go back to school.
|
|
|
|
|
Here's my situation. I'm binding a DataView to a DataGrid, but I only want the first n number of rows to show up. As far as I can see there's no expression I could put in the RowFilter expression that would allow me to select, say, only rows 10 - 22. I can think of a couple other ways of doing this, but they seem way more complicated than this should be.
I would greatly appreciate any suggestions or advice.
Travis Merkel
---------------------------------
"Many times when you start on a project you think, "Boy, this is never going to be finished," but then it is finished, and you think, "Wow, it wasn't even worth it." - Jack Handey
|
|
|
|
|
If there is no proper expression for the RowFilter available why don't you make a function to produce a temporary table to use as a DataGrid's source. It's pretty simple (even though not too subtile ) and, if you don't need to edit you data in the DataGreed, it will not leed to any further complications.
Good luck.
|
|
|
|
|
Hi all,
I'm new to the SQL world, just getting comfortable with stored procedures now, so forgive me if this is a newbie question.
Is there a way to know on the client machine when a change has been made to a table in the server's SQL database? My C# app is running on multiple machines, accessing the same SQL database on the server, and each machine must know when a change has been made to the database. Could someone point me in the right direction?
The graveyards are filled with indispensible men.
|
|
|
|
|
If you are looking for automatic updates to data in datatables on the client, you are out of luck. ADO.Net is a disconnected framework: once a dataset is populated with copies of database data, it disconnects from the server...
Genius may have its limitations, but stupidity is not thus handicapped. - Elbert Hubbard
|
|
|
|
|
|
I have following query:
Insert table2(field2,field3,field4)
select field2,field3,field4 from table1
My field1 is identity. I wanted to insert data and increment identity by 1 for spesific field2 value.
I was able to do if I inserted by 1 record:
SET IDENTITY_INSERT field1 ON
DECLARE @rID int
SELECT @rID = max(field1) + 1 from table2 where field2 = @field2
insert referral_main (field2,field3,field4)
values (field2,field3,field4)
SET IDENTITY_INSERT field1 OFF
Please help me do for more then 1.
|
|
|
|
|
OK, what happens if I have already inserted the following:
field1 field2 field3 field4
------ ------ ------ ------
1 A B C
2 A D E
3 B C E and I try to run your query setting @field2 to 'A'? I already have a row where field1 is 3. If there's a primary key (or a UNIQUE constraint) on field1 , the INSERT will fail.
Do not use IDENTITY in cases where you need to manipulate values like this. It's just a simple way to get a unique identifier for a row which otherwise cannot be identified uniquely - if it needs some higher meaning, you need to think more closely about your data.
Also, you need to think about locking for this query. What happens if two processes execute this procedure simultaneously? If the situation happens as follows:
Process 1 Process 2
--------- ---------
SELECT - @rID = 4
SELECT - @rID = 4
INSERT - success
INSERT - failure one of your inserts will fail. This is even more likely if running on a multiprocessing-capable server (either a server with multiple processors, or potentially on a server with hyperthreading enabled).
If you need to impose an ordering on results, it's better to use ORDER BY in a SELECT . You can always order by multiple columns - for example, ORDER BY field2, field1 to get results in the order of insertion. IIRC, IDENTITY will always add new rows with higher identifiers than are currently present in the table, so long as you haven't reseeded the column with DBCC CHECKIDENT .
|
|
|
|
|
Is there a way, without buying a third party tool, to monitor SQL Server programatically using stored procedure calls or even via straight ODBC/JDBC calls?
I need to gain access to a SQL Server 2000 box's information such as how much a given database has grown, how much space is available for it to grow, etc., and I need to be able to do this from a web application.
If there is a way to do gain acces to this sort of information via a stored procedure or ODBC/JDBC, then I'm in business!
Thanks.
Darrin
|
|
|
|
|
Lookup sp_helpdb in the SQL Server Books Online. It provides exactly what you are looking for.
OldFartRant: Is it really so long ago that the sp_help series of sprocs typed into an ISQL session were the primary means of ad-hoc administration? Kids and their GUI tools these days... when we were young we had to walk a mile up hill in the snow to school, both ways.
--
-Blake (com/bcdev/blake)
|
|
|
|
|
Thanks. I really appreciate it.
|
|
|
|
|
Is there a way to make DAO programs "transportable"? When I compile programs and move them to a machine other than the one where they were compiled, I often get a "DAO/DB" error.
How can I make my programs work with other versions of the JET engine?
Richard
|
|
|
|
|
(1) Search in MSDN for "Redistributing Microsoft Visual C++ 6.0 Applications". Read subitem "Redistributing Database Support Files".
(2) Search in MSDN for "AfxDaoInit 0x0601".
The topic is handled in the "Q+A: C++" section of the January 2000 issue of Microsoft Systems Journal.
|
|
|
|
|
Thanks for the response. You helped me a bunch!
Dick
|
|
|
|
|
I use the Express OLE DB Library for the database interaction.I open database connection by using above mentioned library and also close the database connection by close method of the library. But when I go to SQL Enterprise Manager, then there in process list it is showing those connections in sleeping state. It is a memory leak. All these connections remain in sleep state until we close the application in which we are using Express OLEDB Library. I also try this by making local objects of connection and record set and by deleting the pointer to these objects. I want to close these sleeping state connections while my application remains open to avoid this memory leak of sleeping state database connections.Is there any method to kill the sleeping database connections of SQL.I am thankful in advance if anyone help me to resolve this issue of SQL.
|
|
|
|
|
Many libraries support connection pooling - where the library maintains a pool of open connections, so that a new connection requested by the application opens quickly.
Consult your library's documentation for advice on disabling or managing the size of the connection pool.
|
|
|
|
|
Is there any way to kill sleeping database connections of SQL programmatically because library documentation,there is no way to manage the size of connection pool.
|
|
|
|
|
When I run a query in my program, I got this exception
"General network error. Check your network documentation."
After I tried it again and again, I found that sometimes it works, sometimes it has the exception.
My network is absolutely ok. I don't think there's a problem with network. I guess it's a bug or something in ADO.NET
Anyone knows why?
Thanks in advance.
|
|
|
|
|
|
hello all of u
me and some other guy r doing a RDBMS from scratch both for our personal use and for a competition. wanna know what kinda strategy is better for storing relvars . do they all have to be dobne in a single file as access does or do they have to be done like oracle . also that what kind of information to store abt the database
i mean meta data like users, queries, views, i/o requests, indices etc
i need feedback from experienced DBMS users
thnx
|
|
|
|
|
Your typical DBMS user hasn't got a clue how the database is implemented - that's the job of the DBMS
I recommend Inside SQL Server 2000 by Kalen Delaney (MS Press) for some information on how a DBMS is implemented.
|
|
|
|
|
Hi
I have used this for the slq statem
SELCT FirtName, LastName, ID,From Coustomer WHERE FirstName LIKE '[A-Z]'
C#
private void button1_Click(object sender, System.EventArgs e)
{
oleDbConnection1.Open();
oleDbDataAdapter2.SelectCommand.Parameters["LastName"].Value = textBox1.Text;
dataSet11.Clear();
oleDbDataAdapter2.Fill(dataSet11)
oleDbConnection1.Close();
}
But when I run it gave a and error
can u help me anyone
Harrison Brock
|
|
|
|