Why am I receiving a SQL Insert procedure ERROR. Msg 60060? - sql

I have the following query and error. Why am I receiving this error? I found nothing online via Google.
MSSQL query:
INSERT INTO [CEPrekyba].[dbo].[BK1$REFGoodUnit]
([GoodCode],[UnitCode],[UnitName],[IsCommon]
,[IsAccount],[Rate],[IsPack],[IsInteg]
,[IsSize],[Lenght],[Height],[Width]
,[Weight],[GrossWeight]
,[IsReusable],[ManualInserted])
VALUES ('530162','VNT','Gamintojas','1',
'1','1,00','0','0',
'0','0,00','0,00','0,00',
'0,00','0,00','0','1')
Error message:
Msg 60060, Level 16, State 1, Procedure sp_sRaiseError, Line 13
Msg 3609, Level 16, State 1, Line 1
The transaction ended in the trigger. The batch has been aborted.

Related

I am trying to copy from one column to another in same table but getting msg 50000 and error 3609 as well

UPDATE poitem_mst
SET Uf_TYRI_poitem_req_ship_date=promise_date
Should be simple, but I get these errors:
Msg 50000, Level 16, State 1, Procedure RaiseErrorSp, Line 121 [Batch Start Line 0]
Purchase Order that has [PO: P000010685] does not exist.
Msg 3609, Level 16, State 1, Line 1
The transaction ended in the trigger. The batch has been aborted.
The PO number changes every time I run that query.

Stored procedure for inserting the new records in the table from data table

I am getting an error while creating the below stored-procedure which would insert the new records in the table from the data table
CREATE PROCEDURE [dbo].[SP_Cde_SecureList_Upsert]
#SecureList SecureList READONLY,
#ListType varchar(20)
AS
BEGIN
IF(#ListType='FETCHDETAILS')
SELECT * FROM TBL_TICKETING_ALTERNATE_CREDIT_CARD_LIST
ELSE
BEGIN
INSERT INTO TBL_TICKETING_ALTERNATE_CREDIT_CARD_LIST([CardRefID], [KEY], [MIS_Field1], [MIS_Field2], [ValidatingCarrier]
, [OtherCarriers], [Card Vendor], [Card], [Expiration], [Precedence], [AlertEmail], [maxTktAmt], [IRP_remark])
SELECT [CardRefID], [KEY], [MIS_Field1], [MIS_Field2], [ValidatingCarrier]
, [OtherCarriers], [Card Vendor], [Card], [Expiration], [Precedence], [AlertEmail], [maxTktAmt], [IRP_remark] FROM #SecureList;
END
END
GO
Error:
Msg 207, Level 16, State 1, Procedure SP_Cde_SecureList_Upsert, Line 12 [Batch Start Line 60]
Invalid column name 'CardRefID'.
Msg 207, Level 16, State 1, Procedure SP_Cde_SecureList_Upsert, Line 12 [Batch Start Line 60]
Invalid column name 'MIS_Field1'.
Msg 207, Level 16, State 1, Procedure SP_Cde_SecureList_Upsert, Line 12 [Batch Start Line 60]
Invalid column name 'MIS_Field2'.
Msg 207, Level 16, State 1, Procedure SP_Cde_SecureList_Upsert, Line 12 [Batch Start Line 60]
Invalid column name 'ValidatingCarrier'.
Msg 207, Level 16, State 1, Procedure SP_Cde_SecureList_Upsert, Line 13 [Batch Start Line 60]
Invalid column name 'OtherCarriers'.
Msg 207, Level 16, State 1, Procedure SP_Cde_SecureList_Upsert, Line 13 [Batch Start Line 60]
Invalid column name 'Card Vendor'.
Msg 207, Level 16, State 1, Procedure SP_Cde_SecureList_Upsert, Line 13 [Batch Start Line 60]
Invalid column name 'Card'.
Msg 207, Level 16, State 1, Procedure SP_Cde_SecureList_Upsert, Line 13 [Batch Start Line 60]
Invalid column name 'Expiration'.
Msg 207, Level 16, State 1, Procedure SP_Cde_SecureList_Upsert, Line 13 [Batch Start Line 60]
Invalid column name 'Precedence'.
Msg 207, Level 16, State 1, Procedure SP_Cde_SecureList_Upsert, Line 13 [Batch Start Line 60]
Invalid column name 'AlertEmail'.
Msg 207, Level 16, State 1, Procedure SP_Cde_SecureList_Upsert, Line 13 [Batch Start Line 60]
Invalid column name 'maxTktAmt'.
Msg 207, Level 16, State 1, Procedure SP_Cde_SecureList_Upsert, Line 13 [Batch Start Line 60]
Invalid column name 'IRP_remark'.
Completion time
which is strange since the column names are correct
Below is the screenshot of my SP and header/columns of the table wherein I am trying to insert the data from the data table
SP and table column details screenshot
If I do select * from the data table
CREATE PROCEDURE [dbo].[SP_Cde_SecureList_Upsert]
#SecureList SecureList READONLY,
#ListType varchar(20)
AS
BEGIN
IF(#ListType='FETCHDETAILS')
SELECT * FROM [dbo].[TBL_TICKETING_ALTERNATE_CREDIT_CARD_LIST]
ELSE
BEGIN
INSERT INTO [dbo].[TBL_TICKETING_ALTERNATE_CREDIT_CARD_LIST](CardRefID, [KEY], MIS_Field1, MIS_Field2, ValidatingCarrier
, OtherCarriers, [Card Vendor], Card, Expiration, Precedence, AlertEmail, maxTktAmt, IRP_remark)
SELECT * FROM #SecureList;
END
END
GO
I am getting an error as
Msg 120, Level 15, State 1, Procedure SP_Cde_SecureList_Upsert, Line 10 [Batch Start Line 60]
The select list for the INSERT statement contains fewer items than the insert list. The number of SELECT values must match the number of INSERT columns.
This doesn't have anything to do with C# so you should remove the tag from your question. Could you provide the error message?

Msg 102, Level 15, State 1, Line 5 Incorrect syntax near '‌'. insert statement SQL Server

Hi i am getting this error Msg 102, Level 15, State 1, Line 5 Incorrect syntax near '‌' and i dont know from where is the problem. That is the code and also i attached a screenshot.
USE CobornSalesDB;
GO
INSERT INTO SalesActivity
VALUES ('AC00001','05-12-2016','AG16170','C000001',
'P0001','S00002'‌​,1,200000.00,NULL,‌1.2220,20,100000.00,
'12-25-2016','12-30-2016','12-31-2016','A000001','PR00001');
GO
![SCREENSHOT][1]
You have a hidden character
If I convert to ANSI in NotePad++
INSERT INTO
SalesActivity
VALUES
(
'AC00001',
'05-12-2016',
'AG16170',
'C000001',
'P0001',
'S00002'‌​, --this bad boy
1 ,
200000.00,
NULL,
1.2220,
20 ,
100000.00,
'12-25-2016',
'12-30-2016',
'12-31-2016',
'A000001',
'PR00001');
GO

How do I create an eventlog event upon a SQL connectivity issue? Here's my concrete example:

I need to connect to an external database and the connectivity may sometimes fail. However, I am seeing that if the SELECT statement below fails, the IF statement after that does not execute at all:
SELECT COUNT(*) FROM [DB].[View]
IF ##ERROR <> 0
BEGIN
EXEC xp_logevent 63000, 'Issue!', error
END
Here's the error message:
Msg 8180, Level 16, State 1, Line 32
Statement(s) could not be prepared.
Msg 4413, Level 16, State 1, Line 32
Could not use view or function 'DB.view' because of binding errors.
Msg 208, Level 16, State 1, Procedure Servers2Switchs, Line 60
Invalid object name xxx.

The multi-part identifier could not be bound using a linked server with ODBC connection to a DB2

when I run this simple query
select [B00BF4CR].[IWSE4S8].[SCTRN].[STCOMP],
[EPAK].[B00BF4CR].[IWSE4S8].[SCTRN].[STDATE],
[EPAK].[B00BF4CR].[IWSE4S8].[SCTRN].[STUNM],
[EPAK].[B00BF4CR].[IWSE4S8].[SCTRN].[STQTY]
FROM [EPAK].[B00BF4CR].[IWSE4S8].[SCTRN]
WHERE [EPAK].[B00BF4CR].[IWSE4S8].[SCTRN].[STCOMP]='51'
AND [EPAK].[B00BF4CR].[IWSE4S8].[SCTRN].[STDATE] = 20140211
AND [EPAK].[B00BF4CR].[IWSE4S8].[SCTRN].[STVOID] = 'N'
ORDER BY [EPAK].[B00BF4CR].[IWSE4S8].[SCTRN].[STTCKT]
in my sql I got the below errors
Msg 4104, Level 16, State 1, Line 3
The multi-part identifier "EPAK.B00BF4CR.IWSE4S8.SCTRN.STCOMP" could not be bound.
Msg 4104, Level 16, State 1, Line 4
The multi-part identifier "EPAK.B00BF4CR.IWSE4S8.SCTRN.STDATE" could not be bound.
Msg 4104, Level 16, State 1, Line 4
The multi-part identifier "EPAK.B00BF4CR.IWSE4S8.SCTRN.STVOID" could not be bound.
Msg 4104, Level 16, State 1, Line 1
The multi-part identifier "B00BF4CR.IWSE4S8.SCTRN.STCOMP" could not be bound.
Msg 4104, Level 16, State 1, Line 1
The multi-part identifier "EPAK.B00BF4CR.IWSE4S8.SCTRN.STDATE" could not be bound.
Msg 4104, Level 16, State 1, Line 1
The multi-part identifier "EPAK.B00BF4CR.IWSE4S8.SCTRN.STUNM" could not be bound.
Msg 4104, Level 16, State 1, Line 2
The multi-part identifier "EPAK.B00BF4CR.IWSE4S8.SCTRN.STQTY" could not be bound.
Msg 4104, Level 16, State 1, Line 5
The multi-part identifier "EPAK.B00BF4CR.IWSE4S8.SCTRN.STTCKT" could not be bound.
when I do double clic on the 1st one it highlight this section
FROM [EPAK].[B00BF4CR].[IWSE4S8].[SCTRN]
WHERE [EPAK].[B00BF4CR].[IWSE4S8].[SCTRN].[STCOMP]='51' AND
the 2nd and the 3rd ones
[EPAK].[B00BF4CR].[IWSE4S8].[SCTRN].[STDATE] = 20140211
AND [EPAK].[B00BF4CR].[IWSE4S8].[SCTRN].[STVOID] = 'N' ORDER BY
4, 5 and 6
select [B00BF4CR].[IWSE4S8].[SCTRN].[STCOMP],
[EPAK].[B00BF4CR].[IWSE4S8].[SCTRN].[STDATE],
[EPAK].[B00BF4CR].[IWSE4S8].[SCTRN].[STUNM],
7
[EPAK].[B00BF4CR].[IWSE4S8].[SCTRN].[STQTY]
8
[EPAK].[B00BF4CR].[IWSE4S8].[SCTRN].[STTCKT]
At most, you can have a four part notation. Your query is invalidating that rule for the column names. A table alias comes in handy to avoid this issue.
[LINKEDSERVER].[DATABASE].[OWNER].[OBJECT]
Here is a rewrite of the query.
-- Use a table alias
SELECT
S.[STCOMP],
S.[STDATE],
S.[STUNM],
S.[STQTY]
FROM
[EPAK].[B00BF4CR].[IWSE4S8].[SCTRN] AS S
WHERE
S.[STCOMP]='51' AND
S.[STDATE] = 20140211 AND
S.[STVOID] = 'N'
ORDER BY
S.[STTCKT]
There are some issues with updates and deletes using Distributed Query Processing (DQP) through DB2OLEDB.
See article below for warning about this as well as examples of pass thru query vs linked server.
http://support.microsoft.com/kb/222937