创建动态表的想法

时间:2013-05-02 12:00:38

标签: asp.net sql sql-server sql-server-2008 dynamic-tables

是否可以动态地在SQL中创建表。在我的Web应用程序中,我需要将数据存储在今年(即2013)的名为“INFO_2013”​​的表中。当系统日期更改为2014时,则必须创建新表作为“INFO_2014”,必须在该表中添加值。

注意:表格也必须在同一个数据库中。

2 个答案:

答案 0 :(得分:6)

我会避免使用这种方法。

为什么不创建一个包含YEAR列的单个表格,以确定它来自哪一年?

除此之外,如果你担心桌子会变大,你可能想看看Creating Partitioned Tables and Indexes

也可以看看这些

Index Basics

Types of Indexes

答案 1 :(得分:0)

试试这个:

DECLARE @sql NVARCHAR(2000) 
DECLARE @table NVARCHAR(100)

SET @table = 'INFO_2013'

SET @sql = N'CREATE TABLE '+@table+'
(
RollNumber INT
,Name VARCHAR(50)
)'

EXECUTE SP_EXECUTESQL @sql