Why does my raw query to count rows always returns -1?

c#, entity-framework, sql

Solution

`ExecuteSqlCommand` doesn't return data, it always returns an `Int32`, which is the number of rows processed by the SQL script when it's a `DDL/DML` command.

You want `SqlQuery<TElement>(String, Object[])` instead.

var count = db.Database.SqlQuery<int>(sql4).Single();

Problem

I'm trying to check if table exists, but not working correctly. For some reason, count always returns -1. I already have a table in the database. It should return 1? ``` SearchEntities db = new SearchEntities(); var qry3 = ""; var sql4 = "SELECT Count(*) FROM SearchDB.INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = 'portland'"; var count = db.Database.ExecuteSqlCommand(sql4); ```

Original source

Related problems