【发布时间】:2009-10-05 11:59:39
【问题描述】:
我们可以在 MySQL 中动态创建表吗?如果是这样,怎么做? 动态意味着在运行时....ie via procedure AND HOW???? 我正在使用 dotnet Ans--> 是的,我们可以创建......但问题是我想在每次调用过程时更改表的名称......
【问题讨论】:
-
“动态”到底是什么意思?一旦你能回答这个问题,你就几乎可以回答你的问题了。
我们可以在 MySQL 中动态创建表吗?如果是这样,怎么做? 动态意味着在运行时....ie via procedure AND HOW???? 我正在使用 dotnet Ans--> 是的,我们可以创建......但问题是我想在每次调用过程时更改表的名称......
【问题讨论】:
如果您有sufficient privileges,您只需使用与在管理界面中创建表相同的SQL statement(s)。
【讨论】:
是的,您可以在程序执行之前、期间或之后的任何时间在 MySQL 中构建表。
根据您的需要,您可能希望在执行期间将表创建为临时表,以便在会话结束时自动清理它们。请注意,这些表对其他会话不可见,因为每个会话都有自己的临时表的私有版本,并且在会话结束时您将无法查看。创建后,您可以像任何其他表一样在程序中索引和访问它们。如果您需要数据在会话中持久且可用,您应该坚持使用普通的旧表。
【讨论】:
是的,有可能。
【讨论】:
动态??比如是否执行了插入、更新或删除语句...我不知道这是否是您的意思,但您可以查看triggers
【讨论】:
是的。这只是一个简单的 MYSQL 语句。假设您使用的是 PHP。
q = "CREATE TABLE..";
然后您在 PHP 中执行该语句。
当然,这假设您有特权。
【讨论】:
绝对是的,尽管我可能会质疑这样做是否明智,除非它是为了某种实际的数据库管理组件。
【讨论】: