如何动态创建表名

a456852 2003-09-22 10:30:33
生成一个数据表,但是表名要动态创建。
如每天生成一个名为table_yyyymmdd的表,yyyymmdd为当天日期。
...全文
38 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
welyngj 2003-09-22
  • 打赏
  • 举报
回复
up
zjcxc 元老 2003-09-22
  • 打赏
  • 举报
回复
用exec执行sql语句就行了.

delclare @sql varchar(8000)
set @sql='create table table_'+convert(varchar,getdate(),112)+'(id int)'
exec(@sql)
happydreamer 2003-09-22
  • 打赏
  • 举报
回复


declare @table varchar(100)


select @table=convert(varchar(8),getdate(),112)

exec ('create table table1_'+@table+ ' (a int )')
txlicenhe 2003-09-22
  • 打赏
  • 举报
回复
declare @a varchar(100)
set @a='table'+convert(char(8),getdate(),112)
exec('create table '+@a+' (字段1 类型,字段2 类型)')

yujohny 2003-09-22
  • 打赏
  • 举报
回复
用存储过程
create proc createtable
as
declare @TableName nvarchar(50)
set @TableName='Table_'+convert(char(8),getdate(),112)
exec('create table '+@TableName+ '(ID int,a nvarchar(30))')

调用存储过程
exec createtable
pengdali 2003-09-22
  • 打赏
  • 举报
回复
declare @a varchar(100)
set @a='表名'+convert(char(8),getdate(),112)
exec('create table '+@a+'(xx int)')
aierong 2003-09-22
  • 打赏
  • 举报
回复


--用存储过程吧
create proc proc_add_table
as
declare @sql nvarchar(4000)
select @sql='create table table_'+convert(char(8),getdate(),112)+' (i int)'
exec sp_executesql @sql

--run
exec proc_add_table

你今天的表就出来啦
哈哈

34,874

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧