Problém s NetteDatabse v MSSQL 2012 – Table does not have a primary key

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
vEnCa-X
Člen | 6
+
0
-

Zdravim.

Snažím se připojit do MSSQL 2012 (připojení do MSSQL2008 mi fungovalo)

config.neon:

nette:
    database:
        sqlsrv2012:
            dsn: 'sqlsrv:Server=192.168.1.1\MSSQL2012;Database=nette'
            user: sa
            password: xxx

services:
    - SQLSrv2012Facade(@nette.database.sqlsrv2012)

Model:

class SQLSrv2012Facade
{

    private $database;


    function __construct(Nette\Database\Connection $database)
    {
        $this->database = $database;
    }

	function getMySelect()
	{
		 return $this->database->query( "SELECT * FROM table1" );
	}

    function getNetteDatabase()
    {
        return $this->database->table( "table1" );
    }

    public function getInfo()
    {
        dump( $this->database->getDsn() );
    }

}

Presenter

class HomepagePresenter extends BasePresenter
{
    private $sqlSrv2012Facade;

    public function __construct( SQLSrv2012Facade $sqlSrv2012Facade )
    {
        $this->sqlSrv2012Facade = $sqlSrv2012Facade;
    }

    public function renderDefault()
    {
        $this->sqlSrv2012Facade->getInfo();
        //$this->template->result = $this->sqlSrv2012Facade->getMySelect(); //funguje
        $this->template->result = $this->sqlSrv2012Facade->getNetteDatabase();//ERROR
    }

Chyba nastává když použiji funkci getNetteDatabase, která vrací tuto chybu: Table „table1“ does not have a primary key. Přitom, tabulka má primární klíč.
Funkce getMySelect, funguje korektně.

Šablona:

<tr n:foreach="$result as $row">
    <td>{$row->name}</td>
</tr>

Databáze:

CREATE TABLE [dbo].[table1] (
  [id] int NOT NULL,
  [name] varchar(50) COLLATE Czech_CI_AS NULL,
  PRIMARY KEY CLUSTERED ([id])
    WITH (
      PAD_INDEX = OFF, IGNORE_DUP_KEY = OFF, STATISTICS_NORECOMPUTE = OFF,
      ALLOW_ROW_LOCKS = OFF, ALLOW_PAGE_LOCKS = OFF)
)
ON [PRIMARY]
GO

Cache jsem promazal :-)

Dělám někde chybu, nebo je problém v Nette?

enumag
Člen | 2118
+
0
-

Jakou verzi Nette používáš? V driverech NDB se toho v masteru za poslední týden mnoho změnilo takže doporučuji zkusit to s úplně nejnovější verzí z githubu.

vEnCa-X
Člen | 6
+
0
-

@enumag : Používám nejnovější master z githubu.
Jak to vypadá s testama pro MSSQL? Jsou již někde napsané?

enumag
Člen | 2118
+
0
-

Tady, nevím zda už je to mergnuté v masteru.

vEnCa-X
Člen | 6
+
0
-

@enumag:
Vyřešeno. Na poslední verzi masteru to funguje.
Díky