So now, I’m pretty confident that I have parsed my schema. I had to completely comment out the createSchema() function from Bob’s snippet in order to get it to not overwrite my current schema.
So..Bob..at least in my situation &createSchema = ’0’ did not work. I even further tested it by adding a conditional to the function that would always inevitably evaluate false (e.g.
if($createSchema = "pigLegs") {... ), and that still overwrote my schema. The only thing I could do to get it to bypass that was to comment it out. Not sure if it is something specific to me, or what? Is this confirmed working for you or anyone else?
I’m not however fully confident that my relationships are correctly established. They seem to make sense, but who knows? As suggested by SplittingRed... I did a composite/aggregate relationship (or so I think I did). Does this look off at all?
<?php // <-- Just here for code coloring
<object class="Product" table="product" extends="xPDOObject">
<field key="product_id" dbtype="int" precision="11" phptype="integer" null="false" index="pk" generated="native" />
<field key="model" dbtype="varchar" precision="64" phptype="string" null="false" />
<field key="sku" dbtype="varchar" precision="64" phptype="string" null="false" />
<field key="location" dbtype="varchar" precision="128" phptype="string" null="false" />
<field key="quantity" dbtype="int" precision="4" phptype="integer" null="false" default="0" />
<field key="stock_status_id" dbtype="int" precision="11" phptype="integer" null="false" />
<field key="image" dbtype="varchar" precision="255" phptype="string" null="true" />
<field key="manufacturer_id" dbtype="int" precision="11" phptype="integer" null="false" />
<field key="shipping" dbtype="int" precision="1" phptype="integer" null="false" default="1" />
<field key="price" dbtype="decimal" precision="15,4" phptype="float" null="false" default="0.0000" />
<field key="tax_class_id" dbtype="int" precision="11" phptype="integer" null="false" />
<field key="date_available" dbtype="date" phptype="date" null="false" />
<field key="weight" dbtype="decimal" precision="5,2" phptype="float" null="false" default="0.00" />
<field key="weight_class_id" dbtype="int" precision="11" phptype="integer" null="false" default="0" />
<field key="length" dbtype="decimal" precision="5,2" phptype="float" null="false" default="0.00" />
<field key="width" dbtype="decimal" precision="5,2" phptype="float" null="false" default="0.00" />
<field key="height" dbtype="decimal" precision="5,2" phptype="float" null="false" default="0.00" />
<field key="length_class_id" dbtype="int" precision="11" phptype="integer" null="false" default="0" />
<field key="status" dbtype="int" precision="1" phptype="integer" null="false" default="0" />
<field key="date_added" dbtype="datetime" phptype="datetime" null="false" default="0000-00-00 00:00:00" />
<field key="date_modified" dbtype="datetime" phptype="datetime" null="false" default="0000-00-00 00:00:00" />
<field key="viewed" dbtype="int" precision="5" phptype="integer" null="false" default="0" />
<field key="sort_order" dbtype="int" precision="11" phptype="integer" null="false" default="0" />
<field key="subtract" dbtype="int" precision="1" phptype="integer" null="false" default="1" />
<field key="minimum" dbtype="int" precision="11" phptype="integer" null="false" default="1" />
<field key="cost" dbtype="decimal" precision="15,4" phptype="float" null="false" default="0.0000" />
<index alias="PRIMARY" name="PRIMARY" primary="true" unique="true" type="BTREE" >
<column key="product_id" length="" collation="A" null="false" />
</index>
<composite alias="ProductDescription" class="ProductDescription" local="product_id" foreign="product_id" cardinality="many" owner="local" />
</object>
<object class="ProductDescription" table="product_description" extends="xPDOObject">
<field key="product_id" dbtype="int" precision="11" phptype="integer" null="false" index="pk" generated="native" />
<field key="language_id" dbtype="int" precision="11" phptype="integer" null="false" index="pk" />
<field key="name" dbtype="varchar" precision="255" phptype="string" null="false" index="index" />
<field key="meta_keywords" dbtype="varchar" precision="255" phptype="string" null="false" />
<field key="meta_description" dbtype="varchar" precision="255" phptype="string" null="false" />
<field key="description" dbtype="text" phptype="string" null="false" />
<index alias="PRIMARY" name="PRIMARY" primary="true" unique="true" type="BTREE" >
<column key="product_id" length="" collation="A" null="false" />
<column key="language_id" length="" collation="A" null="false" />
</index>
<index alias="name" name="name" primary="false" unique="false" type="BTREE" >
<column key="name" length="" collation="A" null="false" />
</index>
<aggregate alias="Product" class="Product" local="product_id" foreign="product_id" cardinality="one" owner="foreign" />
</object>
Aside from this, I’m at a complete loss.. maybe it has something to do with my query?
Thanks!
-Jared