不幸的是,我的所有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
}
}
然后我们运行Install
,Remap
和LoadStatic
等命令来根据这些配置文件更新数据库。
现在,我可以编写脚本,甚至可以复制我公司的工作方式,但我认为在PHP / MySQL中必须有一些标准的方法来实现。我想知道我是否在用错误的术语进行搜索,因为基于“mysql”,“database”,“dictionary”,“configuration”和“rollout”这样的术语,我发现只有this question about a utility to create a database dictionary,至少在第一眼看来,似乎并不像我在寻找什么。 我想要一种简单的,基于配置文件的方法来设置数据库表,字段,键和静态数据。有人会指出我正确的方向吗?
如果没有这样的“标准”练习,那么必须有充分的理由,而且我愿意适应不同的做事方式。但是看起来确实很愚蠢为此目的编写自定义脚本!
提前致谢。
答案 0 :(得分:3)
你好运!有一整套语言专门用于描述creation of database tables和insertion of data into them。它还支持modification of existing tables。
这种语言被称为...... SQL。
还有一个命令mysqldump
,它可以从活动数据库生成SQL。