Call IF UPDATE ELSE INSERT
May 15, 2008
my Microsoft SQL Server 2005 Express Edition table:
name: tblShop
colums: txtDate datetime
txtTime datetime
txtDept nchar(8)
txtName nchar(11)
txtPiece nchar(15)
txtCut nchar(7)
txtGlue nchar(8)
txtMach nchar(8)
txtFab nchar(7)
txtInsp nchar(8)
Background:
This table receives data from exactly 5 different departments (cut, glue, mach, fab, insp). This creates 5 records.
Objective/issue:
Update the intitial record, with the new department.(instead of 5 records, 1 updated record).
Approach:
I've tried, but failed (most likely due to syntactical errors) using:
- variations of IF UPDATE ELSE INSERT
- placed the statement in a stored procedure (but didn't know where to call it from).
- placed the statement in a trigger.
- tried to call the stored procedure from the trigger.
View 29 Replies
ADVERTISEMENT
Mar 1, 2004
Hi
I am trying to use multiple insert for a table T1 to add multiple rows.
Ti has trigger for insert to add or update multiple rows in Table T2.
When I provide multiple insert SQL then only first insert works while rest insert statements does not work
Anybody have any idea about why only one insert works for T1
Thanks
View 10 Replies
View Related
Aug 13, 2015
I have following query which is created dynamically as -
UPDATE Â BUILDTABLE Â SET BUILD_ID = Â '984137' Â WHERE SET_NUMBER = '1889147436' AND SEND_DATE = '1941-03-04';Â
UPDATE Â BUILDTABLE Â SET BUILD_ID = Â '984137' Â WHERE SET_NUMBER = '1115509374' AND SEND_DATE = '1991-09-01';Â
UPDATE Â BUILDTABLE Â SET BUILD_ID = Â '984137' Â WHERE SET_NUMBER = '1515579671' AND SEND_DATE = '1941-05-24';Â
UPDATE Â BUILDTABLE Â SET BUILD_ID = Â '984137' Â WHERE SET_NUMBER = '1795509670' AND SEND_DATE = '1958-01-14';
UPDATE Â BUILDTABLE Â SET BUILD_ID = Â '984137' Â WHERE SET_NUMBER = '1915508672' AND SEND_DATE = '1961-09-07';
Here till " UPDATE BUILDTABLE SET BUILD_ID = Â '984137'" is the same clause for all queries, but "where" condition is different for all queries. I have to update more than 500 UPDATE statements(like above) in one call. Currently I am concatenating all the queries in string Builder which is time consuming.I want to increase performance of application.Any other class like BulkCopy ?
View 18 Replies
View Related
May 30, 2008
I was wondered what the most efficient way to do the following in MS SQL (2000, 2005, and above):
Psudo Code:
DECLARE @var1, @var2, @var3 VARCHAR(100)
SET @var1, @var2, @var3 = (SELECT var1, var2, var3 FROM Table WHERE [ID] = @someID) <-- Returns only one row
Right now I'm making a call for every variable. I should play around with temp tables but seems like allot of overhead code just to get 3 values. I'm thinking there's a simple way to do this.
Thanks for any ideas
View 3 Replies
View Related
Jul 3, 2006
Hi
i m trying to call a function in insert statment
Insert Into (value, value1)
Value(@value, dbo.function(@value1)
dbo.function returns a value,
when i test the function in querry builder all goes fine.
In my program i become a error
"Parameterized Query '' ' expects parameter @value1 , which was not supplied."
I m using visual studio , tableadapter.update function to insert datarecords in db
thx for help
View 3 Replies
View Related
Feb 22, 2006
hi,i had a small doubt , i have a table xxx with two columns (a int,b int) and i have inserted 5 rows my query is to add the two colums using astored procedure and the result has to be displayed in an separatecolumn --this has to be done only stored procedures ---i know how tosolve the problem using computed columns conceptlike thiscreate table yyy(a int ,b int ,total as a+b)insert into yyy values (12,13)select * from yyyi need the answer using stored procedures---is it possiblepls help mesatish
View 1 Replies
View Related
May 1, 2008
Hi
Wrote this snipet of code to use Insert Into. I have an ODBC connection to Oracle with the Tables linked. I can edit, add write querries and do everything I need to do except do an Insert Into. So I am thinking it is my code and seeking guidance.
I select add data from a button on the form. It then calls the code below. I know it is making it up to the db.execute statement and failing at that point. Funny thing is I only get the error "ODBC Call Failed" and no other snippets of information. On top of that I can not relink to the tables as they are now unaccessible and I have to completely close down the program and restart. Any help/assistance will be greatly appreciated. Thank you, Here is the code:
Code Start:
Private Sub btn_add_rca_record_Click()
On Error GoTo Err_btn_add_rca_record_Click
Dim db As Database
Dim rsCust As Recordset
Dim strSQL As String
Dim nbrRcaTicketId As Long
Set db = CurrentDb
nbrRcaTicketId = (100 + (DCount("*", "RCA_TABLE")))
strSQL = "Select * from RCA_TABLE "
Set rsCust = db.OpenRecordset(strSQL, DB_OPEN_DYNASET)
MsgBox "start of sql string"
strSQL = "INSERT INTO RCA_TABLE "
strSQL = strSQL & "( RCA_TICKET_ID, REPORT_AUTHOR_STAFF_ID, REPORT_START_DATE, REPORT_CLOSE_DATE, REPORTS_PARTICIPANTS_REVIEW, "
strSQL = strSQL & " INCIDENT_TICKET_NUMBER,INCIDENT_SEVERITY_LEVEL,INCIDENT_START_DATE_EVENT,INCIDENT_START_TIME_EVENT,INCIDENT_TIME_SERVICE_DOWN,INCIDENT_END_DATE_EVENT,INCIDENT_TIME_SERVICE_UP,INCIDENT_TIME_UP_TO_CUSTOMER,INCIDENT_OUTAGE_DURATION,INCIDENT_DETECTION_METHOD,INCIDENT_DISCOVERED_BY,INCIDENT_RESP_GROUP,INCIDENT_OWNER,INCIDENT_PRODUCTS_AFFECTED,INCIDENT_CUSTOMERS_AFFECTED, "
strSQL = strSQL & " CHANGE_EXTENT_AFFECTED, CHANGE_CAUSED_BY_CHANGE, CHANGE_RFC_NUMBER, CHANGE_BACK_OUT_INITIATED, CHANGE_RFC_FOLLOWUP_NUMBER, "
strSQL = strSQL & " PROBLEM_OWNER, PROBLEM_CATEGORY, PROBLEM_STATUS, PROBLEM_IMPACT, PROBLEM_URGENCY, "
strSQL = strSQL & " INCIDENT_SECONDARY_TICKET_NBR,INCIDENT_EVENT_DESCRIPTION,PROBLEM_DETAILS,DISCUSSION_DONE_RIGHT,DISCUSSION_PROCEDURAL_ISSUE,DISCUSSION_BETTER_NEXT_TIME,DISCUSSION_PREVENT_PROBLEM,PROBLEM_WWORKAROUND )"
strSQL = strSQL & " ALT_TICKET1,ALT_SYSTEM1,ALT_STATUS1,ALT_DATE_OPENED1,ALT_DATE_CLOSED1,ALT_SEVERITY_LEVEL1,ALT_PRIMARYOWNER1,ALT_LINK1,ALT_TICKET2, "
strSQL = strSQL & " ALT_SYSTEM2,ALT_STATUS2,ALT_DATE_OPENED2,ALT_DATE_CLOSED2,ALT_SEVERITY_LEVEL2,ALT_PRIMARYOWNER2,ALT_LINK2 )"
strSQL = strSQL & " values ('"
strSQL = strSQL & nbrRcaTicketId & "','"
strSQL = strSQL & Me!nbr_REPORT_AUTHOR_STAFF_ID & "','"
strSQL = strSQL & Me!dte_Report_Start_Date & "','"
strSQL = strSQL & Me!dte_Report_Close_date & "','"
strSQL = strSQL & Me!str_Report_Paticipants_In_Review & "','"
strSQL = strSQL & Me!nbr_Incident_Ticket_Number & "','"
strSQL = strSQL & Me!nbr_Incident_Severity_Level & "','"
strSQL = strSQL & Me!dte_Incident_Start_date & "','"
strSQL = strSQL & Me!dte_Incident_Start_Time_Event & "','"
strSQL = strSQL & Me!dte_Incident_Time_Service_Down & "','"
strSQL = strSQL & Me!dte_Incident_End_date & "','"
strSQL = strSQL & Me!dte_Incident_Time_Service_Up & "','"
strSQL = strSQL & Me!dte_Incident_Time_Up_To_Customer & "','"
strSQL = strSQL & Me!nbr_Incident_Outage_Duration & "','"
strSQL = strSQL & Me!nbr_Incident_Detection_Method & "','"
strSQL = strSQL & Me!nbr_Incident_Discovered_By & "','"
strSQL = strSQL & Me!nbr_Incident_Resp_Group & "','"
strSQL = strSQL & Me!str_Incident_Owner & "','"
strSQL = strSQL & Me!str_Incident_Products_Affected & "','"
strSQL = strSQL & Me!str_Incident_Customers_Affected & "','"
strSQL = strSQL & Me!str_Change_Extent_Affected & "','"
strSQL = strSQL & Me!str_Change_Caused_by_Change & "','"
strSQL = strSQL & Me!nbr_Change_RFC_Number & "','"
strSQL = strSQL & Me!str_Change_Back_out_Initiated & "','"
strSQL = strSQL & Me!nbr_Change_RFC_Followup_Number & "','"
strSQL = strSQL & Me!nbr_Problem_Owner & "','"
strSQL = strSQL & Me!nbr_Problem_Category & "','"
strSQL = strSQL & Me!nbr_Problem_Status & "','"
strSQL = strSQL & Me!nbr_Problem_Impact & "','"
strSQL = strSQL & Me!nbr_Problem_Urgency & "','"
strSQL = strSQL & Me!nbr_Incident_Secondary_Ticket_Numbers & "','"
strSQL = strSQL & Me!str_Incident_Event_Description & "','"
strSQL = strSQL & Me!str_Problem_Details & "','"
strSQL = strSQL & Me!str_Discussion_Done_Right & "','"
strSQL = strSQL & Me!str_Discussion_Procedural_Issue & "','"
strSQL = strSQL & Me!str_Discussion_Better_Next_Time & "','"
strSQL = strSQL & Me!str_Discussion_Prevent_Problem & "','"
strSQL = strSQL & Me!str_Problem_WWorkaround & "','"
strSQL = strSQL & Me!nbr_ALT_TICKET1 & "','"
strSQL = strSQL & Me!nbr_ALT_SYSTEM1 & "','"
strSQL = strSQL & Me!nbr_ALT_STATUS1 & "','"
strSQL = strSQL & Me!dte_ALT_DATE_OPENED1 & "','"
strSQL = strSQL & Me!dte_ALT_DATE_CLOSED1 & "','"
strSQL = strSQL & Me!nbr_ALT_SEVERITY_LEVEL1 & "','"
strSQL = strSQL & Me!nbr_ALT_PRIMARYOWNER1 & "','"
strSQL = strSQL & Me!str_ALT_LINK1 & "','"
strSQL = strSQL & Me!nbr_ALT_TICKET2 & "','"
strSQL = strSQL & Me!nbr_ALT_SYSTEM2 & "','"
strSQL = strSQL & Me!nbr_ALT_STATUS2 & "','"
strSQL = strSQL & Me!dte_ALT_DATE_OPENED2 & "','"
strSQL = strSQL & Me!dte_ALT_DATE_CLOSED2 & "','"
strSQL = strSQL & Me!nbr_ALT_SEVERITY_LEVEL2 & "','"
strSQL = strSQL & Me!nbr_ALT_PRIMARYOWNER2 & "','"
strSQL = strSQL & Me!str_ALT_LINK2 & "');"
db.Execute strSQL
MsgBox nbrRcaTicketId & " has been added to the Customer table."
Call ClearControls
rsCust.Close
db.Close
Exit_btn_add_rca_record_Click:
Exit Sub
Err_btn_add_rca_record_Click:
MsgBox Error$
rsCust.Close
db.Close
GoTo Exit_btn_add_rca_record_Click:
End Sub
Code End:
View 1 Replies
View Related
May 20, 2015
I have a function like below
CREATE FUNCTION [dbo].[UDF_GetCode]Â
(
@TableName NVARCHAR(50)
)
RETURNS NVARCHAR(50)
[code]...
This function is called in insert statement like below. exec sp_executesql N'INSERT INTO Table ([Code], [Name]) VALUES (dbo.UDF_ GetGlobal ConfigCode (''TableName''), @Name)'I am getting following error.Only functions and some extended stored procedures can be executed from within a function.
View 3 Replies
View Related
Feb 29, 2008
All-
Is there a way that I can embedd a call to a stored procedure into an existing INSERT section in a table adapter?
Say my objective is to call a stored procedure called personfill automatically RIGHT AFTER the TableAdapter inserts a row into the person table. One catch is that the stored procedure must be sent the value of unique identifier field person_id, which was created for the new person record automatically by the db. (If this is not possible to do, I might try using a TRIGGER in the person table.)
Below is the INSERT code of the TableAdapter. My guess is that if I could call a procedure, I would want to put the call between lines 12 and 13.
Your comments would be most appreciated!!!
-Kurt1 <InsertCommand>
2 <DbCommand CommandType="Text" ModifiedByUser="false">
3 <CommandText>INSERT INTO [person] ([family_id], [circle_id], [person_type_id], [last], [first], [username], [password]) VALUES (@family_id, @circle_id, @person_type_id, @last, @first, @username, @password)</CommandText>
4 <Parameters>
5 <Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int16" Direction="Input" ParameterName="@family_id" Precision="0" ProviderType="SmallInt" Scale="0" Size="0" SourceColumn="family_id" SourceColumnNullMapping="false" SourceVersion="Current" />
6 <Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int16" Direction="Input" ParameterName="@circle_id" Precision="0" ProviderType="SmallInt" Scale="0" Size="0" SourceColumn="circle_id" SourceColumnNullMapping="false" SourceVersion="Current" />
7 <Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="Int16" Direction="Input" ParameterName="@person_type_id" Precision="0" ProviderType="SmallInt" Scale="0" Size="0" SourceColumn="person_type_id" SourceColumnNullMapping="false" SourceVersion="Current" />
8 <Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@last" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="last" SourceColumnNullMapping="false" SourceVersion="Current" />
9 <Parameter AllowDbNull="false" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@first" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="first" SourceColumnNullMapping="false" SourceVersion="Current" />
10 <Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@username" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="username" SourceColumnNullMapping="false" SourceVersion="Current" />
11 <Parameter AllowDbNull="true" AutogeneratedName="" DataSourceName="" DbType="AnsiString" Direction="Input" ParameterName="@password" Precision="0" ProviderType="VarChar" Scale="0" Size="0" SourceColumn="password" SourceColumnNullMapping="false" SourceVersion="Current" />
12 </Parameters>
13 </DbCommand>
14 </InsertCommand>
15 <SelectCommand>
16 <DbCommand CommandType="Text" ModifiedByUser="true">
17
View 2 Replies
View Related
Mar 19, 2008
Hi I have asp.net page with approx 28 dropdowns. I need to insert these records using one stored procedure call. How can I do this while not sacrificing performance?
Thanks, Gary
View 9 Replies
View Related
Jun 26, 2007
I want to insert data calling a stored procedure and call this from a Data Flow destination object. Is it possible?
I understand that Ole Db Command transformation object can call stored procedure, but that will not rollback in the event of error in the middle.
I understand that Ole Db Destination object will rollback in middle of import, but I don't see how to do the insert by calling stored procedure. "Sql Command" option in Ole Db Destination object does not seem to present solution to the problem.
Am I missing something here or is Ssis / Microsoft demanding that Insert stored procedure not be used when using Data Flow destination object to insert data into target table?
View 8 Replies
View Related
Apr 16, 2015
If I have a table with 1 or more Nullable fields and I want to make sure that when an INSERT or UPDATE occurs and one or more of these fields are left to NULL either explicitly or implicitly is there I can set these to non-null values without interfering with the INSERT or UPDATE in as far as the other fields in the table?
EXAMPLE:
CREATE TABLE dbo.MYTABLE(
ID NUMERIC(18,0) IDENTITY(1,1) NOT NULL,
FirstName VARCHAR(50) NULL,
LastName VARCHAR(50) NULL,
[Code] ....
If an INSERT looks like any of the following what can I do to change the NULL being assigned to DateAdded to a real date, preferable the value of GetDate() at the time of the insert? I've heard of INSTEAD of Triggers but I'm not trying tto over rise the entire INSERT or update just the on (maybe 2) fields that are being left as null or explicitly set to null. The same would apply for any UPDATE where DateModified is not specified or explicitly set to NULL. I would want to change it so that DateModified is not null on any UPDATE.
INSERT INTO dbo.MYTABLE( FirstName, LastName, DateAdded)
VALUES('John','Smith',NULL)
INSERT INTO dbo.MYTABLE( FirstName, LastName)
VALUES('John','Smith')
INSERT INTO dbo.MYTABLE( FirstName, LastName, DateAdded)
SELECT FirstName, LastName, NULL
FROM MYOTHERTABLE
View 9 Replies
View Related
Nov 14, 2007
I have a web form with a text field that needs to take in as much as the user decides to type and insert it into an nvarchar(max) field in the database behind. I've tried using the new .write() method in my update statement, but it cuts off the text after a while. Is there a way to insert/update in SQL 2005 this without resorting to Bulk Insert? It bloats the transaction log and turning the logging off requires a call to sp_dboptions (or a straight-up ALTER DATABASE), which I'd like to avoid if I can.
View 6 Replies
View Related
Oct 23, 2014
I'm working on inserting data into a table in a database. The table has two separate triggers, one for insert and one for update (I don't like it this way, but that's how it's been for years). When there is a normal insert, done via a program, it looks like the triggers work fine. When I run an insert manually via a script, the first insert trigger will run, but the update trigger will fail. I narrowed down the issue to a root cause.
This root issue is due to both triggers using the same temporary table name. When the second trigger runs, there's an error stating that a few columns don't exist. I went to my test server and test db and changed the update trigger so that the temporary table is different than the insert trigger temporary table, the triggers work fine. The weird thing is that if the temporary table already exists, when the second trigger tries to create the temporary table, I would expect it to fail and say that it already exists.I'm probably just going to update the trigger tonight and change the temporary table name.
View 1 Replies
View Related
Feb 15, 2008
Hello
I've to write an trigger for the following action
When a entry is done in the table Adoscat79 having in the index field Statut_tiers the valeur 1 and a date in data_cloture for a customer xyz
all the entries in the same table where the no_tiers is the same as the one entered (many entriers) should have those both field updated
statut_tiers to 1
and date_cloture to the same date as entered
the same action has to be done when an update is done and the valeur is set to 1 for the statut_tiers and a date entered in the field date_clture
thank you for your help
I've never done a trigger before
View 14 Replies
View Related
Jul 23, 2005
Hello,I am writing a stored procedure that will take data from severaldifferent tables and will combine the data into a single table for ourdata warehouse. It is mostly pretty straightforward stuff, but there isone issue that I am not sure how to handle.The resulting table has a column that is an ugly concatenation fromseveral columns in the source. I didn't design this and I can't huntdown and kill the person who did, so that option is out. Here is asimplified version of what I'm trying to do:CREATE TABLE Source (grp_id INT NOT NULL,mbr_id DECIMAL(18, 0) NOT NULL,birth_date DATETIME NULL,gender_code CHAR(1) NOT NULL,ssn CHAR(9) NOT NULL )GOALTER TABLE SourceADD CONSTRAINT PK_SourcePRIMARY KEY CLUSTERED (grp_id, mbr_id)GOCREATE TABLE Destination (grp_id INT NOT NULL,mbr_id DECIMAL(18, 0) NOT NULL,birth_date DATETIME NULL,gender_code CHAR(1) NOT NULL,member_ssn CHAR(9) NOT NULL,subscriber_ssn CHAR(9) NOT NULL )GOALTER TABLE DestinationADD CONSTRAINT PK_DestinationPRIMARY KEY CLUSTERED (grp_id, mbr_id)GOThe member_ssn is the ssn for the row being imported. Each member alsohas a subscriber (think of it as a parent-child kind of relationship)where the first 9 characters of the mbr_id (as a zero-padded string)match and the last two are "00". For example, given the followingmbr_id values:1234567890012345678901123456789021111111110022222222200They would have the following subscribers:mbr_id subscriber mbr_id12345678900 1234567890012345678901 1234567890012345678902 1234567890011111111100 1111111110022222222200 22222222200So, for the subscriber_ssn I need to find the subscriber using theabove rule and fill in that ssn.I have a couple of ideas on how I might do this, but I'm wondering ifanyone has tackled a similar situation and how you solved it.The current system does an insert with an additional column for thesubscriber mbr_id then it updates the table using that column to joinback to the source. I could also join the source to itself in the firstplace to fill it in without the extra update, but I'm not sure if theextra complexity of the insert statement would offset any gains fromputting it all into one statement. I plan to test that on Monday.Thanks for any ideas that you might have.-Tom.
View 4 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
Mar 19, 2008
Hi,
I am producing a php report using SQL queries to show the SLA status of our calls. Each call has response, fix & completion targets. If any of these targets are breached, the whole SLA status is set as 'Breach'.
The results table should look like the one below:
CallRef.
Description
Severity
ProblemRef
Logged
Date
Call
Status
SLA Status
C0001
Approval for PO€™s not received
2
DGE0014
05-01-06 14:48
Resolved
Breach
C0002
PO€™s not published
2
DGE0014
06-01-06 10:21
Resolved
OK
C0003
Approval for PO€™s not received from Siebel.
2
n/a
05-01-06 14:48
Investigating
OK
Whereas I can pick the results for the first 6 columns from my Select query, the 'SLA Status' column requires the following calculation:
if (due_date < completed_date)
{ sla_status = 'OK';
}
else sla_status = 'Breach';
The Select statement in my query is looking like this...
Select Distinct CallRef, Description, Severity, ProblemRef, Logdate, Status, Due_date, Completed_date;
The problem is that my query is returning multiple entries for each stage of the call (see below), whereas I just want one entry for each call, with SLA status 'Breach' if any of the stages for the call were out of SLA.
CallRef.
Description
Severity
ProblemRef
Logged
Date
Call
Status
SLA Status
C0001
Approval for PO€™s not received
2
DGE0014
05-01-06 14:48
Resolved
Breach
C0001
Approval for PO€™s not received
2
DGE0014
05-01-06 14:48
Resolved
OK
C0001
Approval for PO€™s not received
2
DGE0014
05-01-06 14:48
Resolved
Breach
Any help will be much much appreciated, this issue has been bothering me for some time now!!!
View 7 Replies
View Related
Jan 29, 2008
I need to call a stored procedure to insert data into a table in SQL Server from SSIS data flow task.
I am currently trying to use OLe Db Destination, but I am not sure how to map inputs to OLE DB Destination to my stored procedure insert.
Thanks
View 6 Replies
View Related
Jul 7, 2006
Hi,
Can anyone explain what the difference is and the advantages or disadvantages of using the below statements in my SQL paramaters please. Is there a performance hit if I use the second option?
If myCustomer.Phone2 IsNot Nothing Then
versus
If myCustomer.Phone2.Length > 0 Then
Thanks
View 2 Replies
View Related
Dec 8, 2006
Is there an easy way with DTS to pump data from one table to another so that it will update the row if it exists (the source and destination have the same value for the ID colum) or insert it if it doesn't.
I know this can be done with stored procedures/sql by doing IF EXISTS UPDATE ELSE INSERT but there are many tables and columns and this will be very tiime consuming.
View 1 Replies
View Related
Feb 2, 2008
I have a page where the user can update stock records. it has 5 x 5 text boxes. If the user has already entered stock before that stock will show up and they can change it and clicking the button it will update, however if they have just entered new data i would assume they would need to insert it, so how do i go about doing this? do i need to use both insert and update in the same sql string?
View 7 Replies
View Related
Jul 15, 2005
greetings
I am developing an application for the marketing dept at my company.
Basically users can build the content of an email to be sent to our
subscriber database.
I am wanting the application to initailly save the content into a database, the update the most recently inserted row.
The save button uses the following SQL command:
Dim SqlMethod As String =
"INSERT INTO CZC_email (Offer, SendDate, Destinations, Copy, BannerURL)
VALUES ('" & txtCampaignName.Text & "','" &
calCampaignDate.SelectedDate.ToString("yy/dd/MM") & "','" &
DestinationsSelected & "','" & FreeTextBox2.Text & "', '"
& txtBannerPath.Text & "')SELECT @@IDENTITY AS 'CZ_ID'"
And my update button has this SQL command:
Dim SqlMethod As String =
"UPDATE CZC_email SET SendDate = '" &
calCampaignDate.SelectedDate.ToString("yy/dd/MM") & "', Offer = '"
& txtCampaignName.Text & "',Destinations = '" &
DestinationsSelected & "', BannerURL = '" & txtBannerPath.Text
& "' WHERE CZ_ID = @@IDENTITY "
but it doesnt seem to be updating. anyone know what I'm doing wrong?
Cheers
View 7 Replies
View Related
Nov 24, 2005
I have a GridView on a page, It contains data from 2 joined tables and a command column to Edit/Update. I want to update the data in only one of the tables. If the data exists in the table to be updated there seems to be no problem (obviously). But I get an error when trying to update a record that does not exist (I should think so). Is there a way of Inserting the record before the update is fired? I have tried to do an insert contained in a 'Try' in the GridView1_RowUpdating, but this does not seem to work. as I still get the same error. Object cannot be cast from DBNull to other types. 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.InvalidCastException: Object cannot be cast from DBNull to other types.
Source Error:
An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
Stack Trace:
[InvalidCastException: Object cannot be cast from DBNull to other types.] System.DBNull.System.IConvertible.ToInt32(IFormatProvider provider) +54 System.Convert.ChangeType(Object value, TypeCode typeCode, IFormatProvider provider) +293 System.Web.UI.WebControls.SqlDataSourceView.AddParameters(DbCommand command, ParameterCollection reference, IDictionary parameters, IDictionary exclusionList, String oldValuesParameterFormatString) +577 System.Web.UI.WebControls.SqlDataSourceView.ExecuteUpdate(IDictionary keys, IDictionary values, IDictionary oldValues) +400 System.Web.UI.DataSourceView.Update(IDictionary keys, IDictionary values, IDictionary oldValues, DataSourceViewOperationCallback callback) +78 System.Web.UI.WebControls.GridView.HandleUpdate(GridViewRow row, Int32 rowIndex, Boolean causesValidation) +1173 System.Web.UI.WebControls.GridView.HandleEvent(EventArgs e, Boolean causesValidation, String validationGroup) +1084 System.Web.UI.WebControls.GridView.OnBubbleEvent(Object source, EventArgs e) +88 System.Web.UI.Control.RaiseBubbleEvent(Object source, EventArgs args) +35 System.Web.UI.WebControls.GridViewRow.OnBubbleEvent(Object source, EventArgs e) +117 System.Web.UI.Control.RaiseBubbleEvent(Object source, EventArgs args) +35 System.Web.UI.WebControls.LinkButton.OnCommand(CommandEventArgs e) +83 System.Web.UI.WebControls.LinkButton.RaisePostBackEvent(String eventArgument) +136 System.Web.UI.WebControls.LinkButton.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +7 System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +11 System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +172 System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +4839
Protected Sub GridView1_RowUpdating(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewUpdateEventArgs) Handles GridView1.RowUpdating
Try
Dim eventid As Integer = CInt(GridView1.Rows(GridView1.EditIndex).Cells(7).ToString)
Dim userid As Integer = CInt(hfID.Value)
Dim guests As Integer = CInt(GridView1.Rows(GridView1.EditIndex).Cells(4).ToString)
Dim attending As Boolean = CBool(GridView1.Rows(GridView1.EditIndex).Cells(5).ToString)
Dim extra As String = Server.HtmlEncode(GridView1.Rows(GridView1.EditIndex).Cells(6).ToString)
InsertRecord(eventid, userid, guests, attending, extra)
Catch ex As Exception
End Try
End Sub
Function InsertRecord(ByVal eventID As Integer, ByVal userID As Integer, ByVal guests As Integer, ByVal attending As Boolean, ByVal extra As String) As Integer
Dim connectionString As String = "server='localhost'; trusted_connection=true; Database='AFRA'"
Dim sqlConnection As System.Data.SqlClient.SqlConnection = New System.Data.SqlClient.SqlConnection(connectionString)
Dim queryString As String = "INSERT INTO [AFRAAttendance] ([EventID], [UserID], [Guests], [Attending], [Extra]) VALUES (@EventID, @UserID, @Guests, @Attending, @Extra)"
Dim sqlCommand As System.Data.SqlClient.SqlCommand = New System.Data.SqlClient.SqlCommand(queryString, sqlConnection)
sqlCommand.Parameters.Add("@EventID", System.Data.SqlDbType.Int).Value = eventID
sqlCommand.Parameters.Add("@UserID", System.Data.SqlDbType.Int).Value = userID
sqlCommand.Parameters.Add("@Guests", System.Data.SqlDbType.Int).Value = guests
sqlCommand.Parameters.Add("@Attending", System.Data.SqlDbType.Bit).Value = attending
sqlCommand.Parameters.Add("@Extra", System.Data.SqlDbType.VarChar).Value = extra
Dim rowsAffected As Integer = 0
sqlConnection.Open()
Try
rowsAffected = sqlCommand.ExecuteNonQuery
Finally
sqlConnection.Close()
End Try
Return rowsAffected
End FunctionThank you
View 1 Replies
View Related
Jan 6, 2006
Is it possible to run a DTS package so that it just updates existing rows rather than a full on insert?
I have an HR db as a source and a health and safety db as destination. records of peoples H+S acheivments and assessments are maintained in the H+S db but i need to keep this topped up with the newly recruited staff details and the existing staff change of details. The DTS need to know to insert where its a new record and to update where its just a change of name or work location etc.
if DTS wont do this, what are my options?
TIA
View 2 Replies
View Related
Aug 22, 2004
I have a form that pulls existing information from a database and allows users to edit it. Every field can be left blank if the user wishes. I am having an issue with determining which SQL statement to run. There has to be an easier way to do this then what I am doing. For each filed I process the data this way:
SQL2="select * from 1985ClassList where MailingListID =" & Session("EID")
set aData = oConn.execute(SQL2)
SQL = "Update 1985ClassList SET "
if aData.Fields("FirstName") > " " and Request.QueryString("FirstName") > " " then
SQL = SQL & "'FirstName' = '" & Request.QueryString("FirstName") & "', "
end if
if aData.Fields("FirstName") = " " and Request.QueryString("FirstName") > " " then
strFSQL = strFSQL & "FirstName, "
strVSQL = strVSQL & Request.QueryString("FirstName") & ", "
end if
SQL = SQL & "where MailingListID =" & Session("EID")
set mData = oConn.execute(SQL)
if strFSQL > " " then
SQL1 = "Insert into 1985ClassList " & strFSQL & "VALUES " & strVSQL
end if
set mData = oConn.execute(SQL1)
It works fine for the UPDATE, but not for the INSERT.
View 9 Replies
View Related
Sep 1, 2004
Hi,
Is it possible to Read data From a Table while Insertion/Update is happening on the table??
In case if this is not possible,Is there anyway to do that??
Thanks,
Karthik
View 2 Replies
View Related
Dec 6, 2004
Is there a way to insert / update in SQL Server 2000 with one command..
I know with Oracle there is a merge command....
View 1 Replies
View Related
Feb 19, 2004
I need a query to make an insert or and update in the same query
thanks
View 6 Replies
View Related
Jun 4, 2008
Scenario :
MS SQL 2005
Tables:
DETAIL --Here are all the detailed transactions
Customer
Item
Amount
...MoreFields
TOTAL --Here are the accumulated values (1 record by Customer-Item
Customer
Item
Accumulated
...MoreFields
What I want to know is the general logic to
-Read all records from table DETAIL
-If relationship Customer-Item exists in TOTAL table then UPDATE the TOTAL.Accumulated field adding the DETAIL.Amount field
-If relationship Customer-Item doesn't exists in TOTAL table then INSERT a new ecord with the values from DETAIL table
Because of my experience in VB and ADO my first try is to use a Cursor and loop record by record
But I know that is not the only and better solution
May You post some hint or some sample querie on how could be done
Thanks
JG
View 2 Replies
View Related
Jul 20, 2005
I'm new to DTS. I read some docs before adventuring into this matter.I still haven't found in all the docs I read if there is some "built-in" DTStask or function or wathever, to do a mixed "insert/update" import from asource, giving a unique field as primary key.I'll try to be more specific. The problem I would like to solve is this:I have a source file (csv) but it could be any source. I must check thisfile for all the records and compare them with the ones in the db (giving aunique field as a way of checking), so that all the records that alreadyexist, are UPDATED, and the others are INSERTED.I guess this is one most common task to accomplish, when you have a localbased application that you regularly update and then you want to export thedata to another "slave" application without using replication. But even ifthis sounds to me like a common task, I found no "buil-in" function for thatin DTS. I read something about "lookups" but it don't know if it's relatedsomehow.. it wasn't very clean.Thanks in advance for suggestions.--:: Massimiliano Mattei:: Project Leader:: E.xtranet V.irtual A.pplication:: www.evagroup.net :: www.commy.biz
View 3 Replies
View Related
May 22, 2008
Hi Team,
I would like to import a .csv file into my existing table. On the DTS, I would like to check if the record already there then updated, on the other hand, if the record wasn't there then add it. How can I do that using DTS. Please help and thanks.
View 3 Replies
View Related
Apr 30, 2015
table2 is intially populated (basically this will serve as historical table for view); temptable and table2 will are similar except that table2 has two extra columns which are insertdt and updatedt
process:
1. get data from an existing view and insert in temptable
2. truncate/delete contents of table1
3. insert data in table1 by comparing temptable vs table2 (values that exists in temptable but not in table2 will be inserted)
4. insert data in table2 which are not yet present (comparing ID in t2 and temptable)
5. UPDATE table2 whose field/column VALUE is not equal with temptable. (meaning UNMATCHED VALUE)
* for #5 if a value from table2 (historical table) has changed compared to temptable (new result of view) this must be updated as well as the updateddt field value.
View 2 Replies
View Related