在具有相同名称的数据库中创建表

时间:2017-03-16 21:54:16

标签: mysql database

我正在开发一个Web应用程序,其中有一个公共数据库,用户可以在该数据库中创建表,然后从中检索数据。用户只有在创建表时才能访问数据库中的表。所以我的问题是,如果两个不同的用户创建了一个具有相同名称的组,那么这不是一个问题,因为我的数据是通过引用表名来获取的吗?
如何解决这个问题?

编辑:这是我想在每次有人调用函数时运行的查询

CREATE TABLE `<name of table>` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`title` varchar(255) COLLATE utf8_bin NOT NULL,
`start` datetime NOT NULL,
`end` datetime DEFAULT NULL,
`url` varchar(255) COLLATE utf8_bin NOT NULL,
`allDay` varchar(255) COLLATE utf8_bin NOT NULL DEFAULT 'false',
 PRIMARY KEY (`id`)
 ) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=7 ;

1 个答案:

答案 0 :(得分:1)

如何使用用户的ID为表名添加前缀?

e.g. user_1_their-table-name

如果第一个字符是数字,那么您会遇到问题,所以我一开始就添加了user_。