I keep running the code/debugger and even set break points so I can step through the code and haven't been able to find where what the syntax error is I know its within this C# method for creating a new table in the c-tree database.
Here's the code:
/*
Define() method
where specific data definitions are established also will include the definition of the table
being created as well as defining rows and columns of the table
*/
public static void Define()
{
Console.WriteLine("DEFINE");
try
{
//Creation of the table with the specified data types and the column Names
Console.WriteLine("\tCreating table...");
cmd.CommandText = "CREATE TABLE testData (" +
"Trackingid VARCHAR(35)," +
"dates DATETIME," +
"Name_Of_Recipient VARCHAR(35)," +
"addresss VARCHAR(35)," +
"address2 VARCHAR(31)," +
"City VARCHAR(34)," +
"Town VARCHAR(23)," +
"states VARCHAR(5)," +
"ZipCode INT )";
cmd.ExecuteNonQuery();
}
catch(CtreeSqlException e)
{
Console.WriteLine(e + " could not define this table");
}
catch(Exception e)
{
Console.WriteLine(e + "Error the table could not be defined");
}
}
Like I have mentioned before I did try and step through the code multiple times, I am assuming that it could be that I have to many column entries? or Relying on the VARCHAR data type heavily?
Exception message being thrown:
" Creating table...
Ctree.Data.SqlClient.CtreeSqlException (0x7FFFB1DD): Syntax error ---> Ctree.SqlClient.Common.FcSqlException: Syntax error
at Ctree.SqlClient.FcSqlXApi.SQLExec(FcStatement stmt, Int32 InStatementType, FcSqlDA ida, FcSqlDA oda, FcSqlCA sqlca)
at Ctree.SqlClient.FcSqlXApi.Prepare(FcStatement stmt, FcSqlDA input_sqlda, FcSqlDA output_sqlda, Int32 fetchSize)
at Ctree.SqlClient.FcConnection.Prepare(FcStatement statement, FcSqlDA inputDA, FcSqlDA outputDA, Int32 fetchSize)
at Ctree.SqlClient.FcPreparedStatement..ctor(FcConnection connexion, String sql, Int32 fetchSize, Int32 timeout)
at Ctree.Data.SqlClient.CtreeSqlCommand.InternalPrepare(Boolean resultSet)
at Ctree.Data.SqlClient.CtreeSqlCommand.ExecuteNonQuery()
at Ctree.Data.SqlClient.CtreeSqlCommand.ExecuteNonQuery()
at DBbeta.Program.Define() in C:\Users\WVX0DYQ\source\repos\DBbeta\DBbeta\Program.cs:line 76 could not define this table"
First check whether table exists or not. If not exists then it create the table.
This is running example put your values and run this
And use INTEGER not int See this for Datatypes
Find reference