0

不幸的是,我所有的 RDMS 经验都来自使用我公司的专有数据库技术,我正在努力寻找将我的知识转移到 PHP/MySQL 实践的类似物。

在我的公司,我们定义了定义表、字段、键等的“数据字典”配置:

orders_Dct.cfg
trades_Dct.cfg
profiles_Dct.cfg

一个这样的配置文件可能如下所示:

table
{
    name   ORDERS
    fields (ORDER_ID, ORDER_VS, PRICE, QUANTITY)

    key
    {
        name ORDERS_BY_ID_VS
        sort (ORDER_ID, ORDER_VS)
    }
}

field
{
    name ORDER_ID
    type CHARARRAY
    size 8
}

field
{
    name ORDER_VS
    type I32
}

field
{
    name PRICE
    type F64
}

field
{
    name QUANTITY
    type F64
}

此外,我们定义“静态数据”,例如profiles_Static.cfg

table
{
    name PROFILES

    entry
    {
        USER_ID    0
        USER_NAME  SYSTEM
        SUPER_USER Y
    }

    entry
    {
        USER_ID    1
        USER_NAME  TEST
        SUPER_USER N
    }
}

然后,我们运行诸如 、 和 之类的命令InstallRemap根据LoadStatic这些配置文件更新数据库。

现在,我当然可以编写脚本,甚至可以复制我公司做事的方式,但我认为在 PHP/MySQL 中必须有一些标准的方式来做到这一点。我想知道我是否在使用错误的术语进行搜索,因为基于诸如“mysql”、“database”、“dictionary”、“configuration”和“rollout”之类的术语,我发现只有这个关于创建实用程序的问题database dictionary,至少乍一看,这似乎不是我要找的。我想要一种简单的、基于配置文件的方法来设置数据库表、字段、键和静态数据。有人会指出我正确的方向吗?

如果没有这样的“标准”做法,那么一定有充分的理由,我愿意适应不同的做事方式。但是为此目的编写自定义脚本绝对是愚蠢的!

提前致谢。

4

1 回答 1

3

你很幸运!有一整套语言专门用于描述数据库表的创建和向其中插入数据。它还支持对现有表的修改

这种语言称为.... SQL。


还有一个命令,mysqldump可以从活动数据库生成 SQL。

于 2012-10-25T07:27:01.480 回答