AXMLS检查约束

时间:2015-06-29 20:28:10

标签: adodb concrete5

我正在使用Conreate 5 CMS创建q站点。 我正在创建一个新块,我必须使用AXMLS来创建数据库表。 我已经能够创建一个基本表,但我想扩展它以添加一个检查约束。下面是我到目前为止编写的代码。

<?xml version="1.0"?>
<schema version="0.3">
    <table name="btAddVehicle">
        <field name="bID" type="I">
            <key />
            <unsigned />
        </field>
        <field name="title" type="C" size="100">
            <NOTNULL />
        </field>
        <field name="imgLocation" type="X"></field>
        <field name="year" type="I" size="4"></field>
        <field name="desciption" type="X"></field>

    </table>
</schema>

所以对于我想要的那一行,大小=“4”会将值的数量限制为4.例如1990,1999,但这没有工作

我已阅读此http://phplens.com/lens/adodb/docs-datadict.htm#foreignkey

但似乎不清楚 它说     CONSTRAINTS Additional constraints defined at the end of the field definition."

所以它会是这样的         <field name="year" type="I" constraint="check([year] LIKE REPLICATE ('[0-9]', 4)) "></field>

或者我需要在此代码的末尾添加一个

`<sql>
    add some kind of alter table to add the constraint 
AlTER tblTable etc....
</sql>`

1 个答案:

答案 0 :(得分:0)

size = 4只将它限制在0到9999之间的数字。所以不,这不会起作用。

我也不知道如何使用CONSTRAINTS,但我从来没有需要。通常我使用Concrete5&#39; validation helper来验证值,然后再将它们保存到数据库中。如果需要,使用validation error helper

还可以更轻松地将其打印到视图中的用户

希望这可以帮助你...

相关问题