Neden Doktrin benim modeli verileri alamaz?

1 Cevap php

Yani, bazı verileri almak için Doktrini kullanmaya çalışıyorum. Ben bu gibi bazı temel kod var:

$conn = Doctrine_Manager::connection(CONNECTION_STRING);
$site = Doctrine_Core::getTable('Site')->find('00024');
echo $site->SiteName;

Ancak, bu 'sütun siteid yok' bir SQL hata atma tutar. Ben istisna baktığınızda SQL sorgu (Eğer kırık budur hata site kimliği için inner_tbl takma yani inner_tabl.siteid sorgulama, s__siteid ayarlanmış olmasıdır görebilirsiniz) şudur:

SELECT TOP 1 
    [inner_tbl].[siteid] AS [s__siteid]
FROM 
    (SELECT TOP 1 
        [s].[siteid] AS [s__siteid],
        [s].[name] AS [s__name], 
        [s].[address] AS [s__address], 
        [s].[city] AS [s__city], 
        [s].[zip] AS [s__zip], 
        [s].[state] AS [s__state], 
        [s].[region] AS [s__region], 
        [s].[callprocessor] AS [s__callprocessor], 
        [s].[active] AS [s__active], [s].[dateadded] AS [s__dateadded] 
    FROM [Sites] [s] 
    WHERE ([s].[siteid] = '00024')
    ) AS [inner_tbl] 

Neden sorgu bu şekilde üretiliyor? Bu Yaml şema ortaya koydu yolu olabilir mi?

Site:
  connection: 0
  tableName: Sites
  columns:
    siteid:
      type: string(5)
      fixed: true
      unsigned: false
      primary: true
      autoincrement: false
    name:
      type: string(300)
      fixed: false
      unsigned: false
      notnull: true
      primary: false
      autoincrement: false
    address:
      type: string(100)
      fixed: false
      unsigned: false
      notnull: false
      primary: false
      autoincrement: false
    city:
      type: string(100)
      fixed: false
      unsigned: false
      notnull: false
      primary: false
      autoincrement: false
    zip:
      type: string(5)
      fixed: false
      unsigned: false
      notnull: false
      primary: false
      autoincrement: false
    state:
      type: string(2)
      fixed: true
      unsigned: false
      notnull: true
      primary: false
      autoincrement: false
    region:
      type: integer(4)
      fixed: false
      unsigned: false
      notnull: true
      default: (5)
      primary: false
      autoincrement: false
    callprocessor:
      type: integer(4)
      fixed: false
      unsigned: false
      notnull: true
      primary: false
      autoincrement: false
    active:
      type: integer(1)
      fixed: false
      unsigned: false
      notnull: true
      primary: false
      autoincrement: false
    dateadded:
      type: timestamp(16)
      fixed: false
      unsigned: false
      notnull: true
      default: (getdate())
      primary: false
      autoincrement: false

1 Cevap

Ben IRC odasında geliştiricilerinden biri (Johnathan Ücret) konuştu ve SQL çalışabilir diyor, ama hata muhtemelen vardır ki (bu bir sayıyorum). O da Doktrin akılda MySQL ile özel olarak yazılmış olduğunu söyledi.