|
Hi All,
I am working on the datagridview control. It has datagridviewcomboboxcolumns and I try to add the "selectedIndexchanged" event to the code by writing the foll. line in the gridview's EditingControlShowing event.
Dim comboBox1 As ComboBox = CType(e.Control, ComboBox)
This works ok when I click on combobox column of the grid but gives me an error if I click on any other column. Can anyone please let me know how I can check for this??
Thanks a lot!!
|
|
|
|
|
What does the @ do in the following statement?
Is this used to pick the particular DB field associated
with the row in the update statement?
Dim strSQL As String = _
"UPDATE [Products] SET [ProductName] = @ProdName, " & _
"[UnitPrice] = @UnitPrice, [ProductDescription] = @ProdDesc, [LastUpdated] = @LastUpdated " & _
"WHERE [ProductID] = @ProductID"
|
|
|
|
|
That's SQL stored procedure syntax. The items with '@' in front refer to parameters being supplied to a stored procedure. The only reason you should ever see this in VB code is if the code is attempting to create the stored procedure on the SQL Server - I can't see that this would ever work if you attempt to run it as an update statement directly from a VB app.
It's possible that someone's copied and pasted the code from a stored procedure directly into VB as an attempt to do an update, but I don't believe it can possibly work.
|
|
|
|
|
Craster wrote: The items with '@' in front refer to parameters being supplied to a stored procedure.
Among other things. See also Guffa's reply to the Original Poster.
Craster wrote: The only reason you should ever see this in VB code is if the code is attempting to create the stored procedure on the SQL Server - I can't see that this would ever work if you attempt to run it as an update statement directly from a VB app.
This is incorrect.
Craster wrote: It's possible that someone's copied and pasted the code from a stored procedure directly into VB as an attempt to do an update, but I don't believe it can possibly work.
Yes, it can work. You pass parameters for any SQL Statement through the SqlCommand object. For example. The SQL:
SELECT * FROM MyTable WHERE name=@name Can be accessed in VB as:
Dim cmd As SqlCommand
cmd = New SqlCommand()
cmd.CommandText="SELECT * FROM MyTable WHERE name=@name"
cmd.Parameters.Add("@name", "John Smith")
cmd.Connection = MyConnection
Dim reader As SqlDataReader
reader = cmd.ExecuteReader()
ColinMackay.net
Scottish Developers are looking for speakers for user group sessions over the next few months. Do you want to know more?
|
|
|
|
|
No, they are parameter names. When excuting the query, you also have to add parameter objects to the command object for each parameter in the query.
Example:
command.Parameters.Add("@ProductID", SqlDbType.Int).Value = 42;
---
b { font-weight: normal; }
|
|
|
|
|
:(i am using toolbar component .net ver 2 (not toolstrip) in vb.net 2005.
if i give application.enablevisualstyle command to enable xp style interface
then icons on my toolbar will not come. if i disabel xp visual style it will
come? how can i show this toolbar in xp style settings?
pls help me....
ajo
|
|
|
|
|
This is a bug in the .NET framework. You can work-around it by calling Application.DoEvents() after EnableVisualStyles.
|
|
|
|
|
Hi all,
Can anyone tell me if database triggers are possible with msde 2000? I want to have a trigger in my vb.net(2003) application whenever someone inserts a row in a particular table i get a trigger. Working example would be more than welcome or direct me to some articles.
thanx in advance
Qaiser
|
|
|
|
|
This is a quote from MSDN[^] which I found using this Google search: msde 2000 trigger .
When to Choose MSDE<br />
<br />
MSDE is an attractive option for upgrading existing Jet applications to improve scalability or for creating new desktop and shared database solutions that can be easily migrated to full SQL Server, as the solutions must need to scale.<br />
<br />
SQL Server compatibility<br />
<br />
MSDE data engines are fully compatible with SQL Server. Thus, tables, stored procedures, triggers, and any other database objects created in MSDE will operate without modification in a SQL Server database. In contrast many Jet objects, such as queries, cannot be migrated to SQL Server without modification. If you are considering migrating to SQL Server in the future, or it is likely that your database application will exceed the limitations of Jet, you should choose MSDE. Doing so will provide you with the simplest path to upsizing the database to SQL Server without changing a single line of code.
...Steve
1. quod erat demonstrandum
2. "Give a man a fish and you've fed him for a day. Teach him how to fish and you've fed him for life." I read that somewhere once
(Translation: I'll show you the way, but not write the code for you.)
|
|
|
|
|
Hi,
Creating a trigger using the Server Explorer window.
Write the following code in the trigger text editor.
CREATE TRIGGER SampleTrigger
ON dbo.Fresh
INSTEAD OF INSERT
AS
DECLARE @id varchar (10)
SELECT @id=id FROM Inserted
IF (NOT EXISTS (SELECT Fresh.id FROM Fresh WHERE Fresh.id=@id))
INSERT INTO Fresh
SELECT id,sname FROM inserted
ELSE
PRINT 'can not add to the database'
A trigger is a procedure that SQL server invokes automatically when certain changes applied to the data. We can think of triggers as VB>Net event handlers for onUpdate,onInsert, and onDelete events.
More:Refer this title: "Database programming using vb.net and sql server 2000"
http://www.vkinfotek.com
Regards
Bhar
|
|
|
|
|
Hi Krisky,
Thanx for your reply but i already know this bit creating a trigger in database. Thing i want to know is how to get this event in you vb.net application? Say i created a trigger in a table called sales and when ever someone insert a row in it i get an event in my application. I know this makes database slow, it's not a recommended way etc etc but every thing is on a local system, there are few applications running on a system and eachone updates/insert records in the database, so i want in my application whenever some other application enters data in a specific table in database(i know other ways of interprocess communication in .net but those other apps are third party on which i have no control) i get an event in my vb.net/c# application.
Qaiser.
|
|
|
|
|
You won't get an event fired in your VB.NET app. It just does not work that way for the reasons you have already stated plus more - including the fact that SQL Server and your app are in different processes.
What you could do is run a CMD, BAT or EXE from your trigger code which itself calls your app to do whatever, but even that gets tricky and prone to performance issues.
You could just monitor the SQL transaction log (no forget that - you'll probably need 3rd party software to do it or else delve very deep into SQL Server innards).
How about writing a row to a separate table whenever your trigger fires? Your app can then monitor that table for new entries every 30 seconds or so and act accordingly.
I think there are some very basic examples of how to do soem of these things in the SQL Books Online - installed when you install SQL Server client and/or dev tools on your machine.
...Steve
1. quod erat demonstrandum
2. "Give a man a fish and you've fed him for a day. Teach him how to fish and you've fed him for life." I read that somewhere once
(Translation: I'll show you the way, but not write the code for you.)
|
|
|
|
|
Steve,
Thanx for your reply, your suggestion is good but it is not applicable in my situation, why? because i need the trigger/event in my app as soon as database entry is entered so can't wait for 30 seconds etc.
Anyway thanx for you guys to help.
Qaiser.
|
|
|
|
|
What's so important about trapping the event during the trigger execution?
...Steve
1. quod erat demonstrandum
2. "Give a man a fish and you've fed him for a day. Teach him how to fish and you've fed him for life." I read that somewhere once
(Translation: I'll show you the way, but not write the code for you.)
|
|
|
|
|
Steve,
Thanx for your reply, your suggestion is good but it is not applicable in my situation, why? because i need the trigger/event in my app as soon as database entry is entered so can't wait for 30 seconds etc.
Anyway thanx for you guys to help.
Qaiser.
|
|
|
|
|
You're thinking about SQL Server Notification Services[^].
But I don't know if it'll work with the Express or MSDE editions of SQL Server.
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
Yes Dave it is msde, i know it is possible with new .net 2.0 but i m developing in .net 1.1(vs.net 2003)
Qaiser
|
|
|
|
|
You mis-understood.
Triggers do not call your VB.NET program. Trigers are fired internal to the database when certain events happen, in the database. For instance, if you setup a Trigger to run when a record is added to a table, the Trigger can call a stored procedure you write in the database, not your VB.NET code.
Now, in SQL Server 2005 (any edition), stored procedures can now be written in any managed language, but they are still stored procedures stored and called inside the database.
Notification Server is something that runs on top of SQL Server that provides the funtionality to send notifications of database changes to external applications. This has nothing to do with Triggers! A Notification is completely independant of a Trigger.
How this works is your application code creates an object that contacts the Notification Server and subscribes to certain notification events that you define for your database. When those events occur, the object you created will fire off events you can handle in your VB.NET code.
You can find out more about how this works, complete with examples(!), by reading through the documentation on Notification Server. All you have to do is follow the link in my previous post.
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
Hi dave,
By events i did meant same thing which you just mentioned, i know it is going to be some object attached or register with the sql server to get trigger(or whatever you call). The problem is that how to do this-haven't found any working example code, which am looking for...
Qaiser
|
|
|
|
|
You mean the samples and links found under these[^] links...
I would highly suggest reading through the Getting Started section before you move on the Development section or even double-click Visual Studio.
RageInTheMachine9532
"...a pungent, ghastly, stinky piece of cheese!" -- The Roaming Gnome
|
|
|
|
|
Many thanx dave,
your reply helps solve my problem.
Qaiser.
|
|
|
|
|
You can use the SQL intrinsic stored procedure xp_cmdshell in a trigger to call an external app. That app could then notify your app that a change has occured.
Or you could write an app that monitors the windows event log and put xp_logevent call in your trigger to send an alert to the event log.
'--8<------------------------
Ex Datis:
Duncan Jones
Merrion Computing Ltd
|
|
|
|
|
Thanx Duncan,
I red on a few places to use xp_cmdshell but it don't know how to do it, haven't found any sample code and also i think it can only be done with c++(non .net languages). Can you please refer me to somewhere where i can find some sort of an example
Qaiser
|
|
|
|
|
I have developed a Windows Service, which send daily SMS using Clickatell SMS Gateway and getting values from remote MS SQL server but the problem is service works fine for some time like 10 days, some times 5 days, some times just for 2 days but the service is not stable, it don’t work for a long time, I am in a deep trouble kindly help me as soon as possible, I'll be very thankful to you all, especially a person who will help me.
|
|
|
|
|
Hisham Javed,
Check to see if you are using the right kind of timer for the job..
or you could post the code so we can see what your service is doing.
progload
|
|
|
|