INSERT Statements
To create new records, use INSERT statements.
INSERT Syntax
The INSERT statement specifies the columns to be inserted and the new column values. You can specify the column values in a comma-separated list in the VALUES clause, as shown in the following example:
INSERT INTO <table_name>
( <column_reference> [ , ... ] )
VALUES
( { <expression> | NULL } [ , ... ] )
<expression> ::=
| @ <parameter>
| ?
| <literal>
You can use the ExecuteNonQuery method to execute data manipulation commands and retrieve the rows affected, as shown in the following example:
C#
String connectionString = "SubscriptionKey=test;CountryVersion=2021.R2.AU;CompanyFile=Q:/CData Software.QBW;User=test;Password=test;InitiateOAuth=GETANDREFRESH;CallbackURL=http://localhost:33333;OAuthClientId=MyOAuthClientID;OAuthClientSecret=MyOAuthClientSecret;"; using (ReckonAccountsHostedConnection connection = new ReckonAccountsHostedConnection(connectionString)) { int rowsAffected; ReckonAccountsHostedCommand cmd = new ReckonAccountsHostedCommand("INSERT INTO Customers (Name) VALUES ('Hook, Captain')", connection); rowsAffected = cmd.ExecuteNonQuery(); }
VB.NET
Dim connectionString As [String] = "SubscriptionKey=test;CountryVersion=2021.R2.AU;CompanyFile=Q:/CData Software.QBW;User=test;Password=test;InitiateOAuth=GETANDREFRESH;CallbackURL=http://localhost:33333;OAuthClientId=MyOAuthClientID;OAuthClientSecret=MyOAuthClientSecret;" Using connection As New ReckonAccountsHostedConnection(connectionString) Dim rowsAffected As Integer Dim cmd As New ReckonAccountsHostedCommand("INSERT INTO Customers (Name) VALUES ('Hook, Captain')", connection) rowsAffected = cmd.ExecuteNonQuery() End Using
Retrieving Generated Ids
In order to retrieve the Id of the last inserted record, use the SCOPE_IDENTITY function, as shown in the following example:C#
cmd = connection.CreateCommand(); cmd.CommandText = "SELECT SCOPE_IDENTITY()"; Object returnedValues = cmd.ExecuteScalar(); String Id = (String)returnedValues;
VB.NET
cmd = connection.CreateCommand() cmd.CommandText = "SELECT SCOPE_IDENTITY()" Dim returnedValues As [Object] = cmd.ExecuteScalar() Dim Id As [String] = returnedValues