Error running datainsert to insert row in sqlserver database

3 visualizaciones (últimos 30 días)
Basem Nabil
Basem Nabil el 12 de Mayo de 2019
Respondida: Piyush Kumar el 26 de Jul. de 2024
Hello,
I'm trying to insert a row into my sql server database using datainsert but I keep getting errors everytime I run.
Annotation 2019-05-13 003654.png
I know my connection is correct as it works in fetching data.
conn = database('SqlServer','','');
data = {1 'Deposit' 500};
columns = {'CardID' 'Type' 'Amount'};
table = 'HakunaMatata.dbo.Transcations';
datainsert(conn,table,columns ,data);
close(conn);

Respuestas (1)

Piyush Kumar
Piyush Kumar el 26 de Jul. de 2024
The error you’re encountering with the datainsert function in MATLAB when inserting a row into a SQL Server database might be related to transaction handling.
Here are some steps to troubleshoot and resolve the issue:
  1. Check Transaction Statements: Ensure that your code includes proper BEGIN TRANSACTION and COMMIT TRANSACTION statements. The error indicates a ROLLBACK without a corresponding BEGIN.
  2. Try sqlwrite function instead of datainsert
  3. Verify Data Types: Ensure that the data types of the columns in your MATLAB table match those in the SQL Server table.
  4. Check this link - ROLLBACK TRANSACTION request has no corresponding BEGIN TRANSACTION error in sql server - Stack Overflow. The error statement is similar here.

Productos


Versión

R2017b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by