怎样在sqlserver中按日期每天生成一个数据表 表名为“20090417” 这种形式?
系统按日期每天自动的创建 有什么好的解决方法吗?'------------表结构-----------
id int 自动增加
uid varchar(50)
ip vachar(50)
intime datetime
ture int
inout int
click vachar(200)
系统按日期每天自动的创建 有什么好的解决方法吗?'------------表结构-----------
id int 自动增加
uid varchar(50)
ip vachar(50)
intime datetime
ture int
inout int
click vachar(200)
declare @tb varchar(10),@str varchar(8000)
select @tb=convert(varchar(10),getdate(),112)
set @str='create table ['+ @tb +'](id int identity(1,1),uid varchar(50), ip varchar(50),intime datetime,[ture] int ,inout int , click varchar(200))'
print @str
exec (@str)
--SQL SERVER2000为例企业管理器—>数据库服务器—>管理目录—>SQL SERVER代理—>作业—>右键 选—>新建常规选项页—>输入作业名称—>选中所有者。步骤选项页—>新建—>输入步骤名—>类型 TSQL脚本—>选择需要执行的数据库—>在命令框里输入你的SQL 脚本:如:update tb set 状态= ... where 日期...........你可以点左下角的【分析】按钮,分析一下语法,分析无误,按确定。调度选项页—>新建调度—>输入调度名称—>调度类型 你可以选择也可以点右下角的【更改】按钮进行更改,确定。任务栏 SQL SERVER服务器的小图标 双击 服务 选中 SQL SERVER AGENT,点【开始/继续】,选中当启动OS时,自动启动服务,就可以了。到你定的那个时间点,SQL SERVER会自动去执行你的脚本的。
declare @tb varchar(10),@str varchar(8000)
select @tb=convert(varchar(10),getdate(),112)
set @str='create table ['+ @tb +'](id int identity(1,1),uid varchar(50), ip varchar(50),intime datetime,[ture] int ,inout int , click varchar(200))'
print @str
exec (@str)
--SQL SERVER2000为例企业管理器—>数据库服务器—>管理目录—>SQL SERVER代理—>作业—>右键 选—>新建常规选项页—>输入作业名称—>选中所有者。步骤选项页—>新建—>输入步骤名—>类型 TSQL脚本—>选择需要执行的数据库—>在命令框里输入你的SQL 脚本:如:update tb set 状态= ... where 日期...........你可以点左下角的【分析】按钮,分析一下语法,分析无误,按确定。调度选项页—>新建调度—>输入调度名称—>调度类型 你可以选择也可以点右下角的【更改】按钮进行更改,确定。任务栏 SQL SERVER服务器的小图标 双击 服务 选中 SQL SERVER AGENT,点【开始/继续】,选中当启动OS时,自动启动服务,就可以了。到你定的那个时间点,SQL SERVER会自动去执行你的脚本的
declare @sql varchar(1000)
set @sql='create table ['+convert(varchar(8),getdate()+1,112)+'] (a int)'建明天的表
set @a = CONVERT(varchar(10),getdate(),112)
declare @b varchar(8000)
set @b=
'create table [' + @a + '](id int identity(1,1),[uid] varchar(50),
ip varchar(50),intime datetime,ture int,inout int,
click varchar(200))'
print @b
exec (@b)
declare @tb varchar(10),@str varchar(8000)
select @tb=convert(varchar(10),getdate(),112)
set @str='create table ['+ @tb +'](id int identity(1,1),uid varchar(50), ip varchar(50),intime datetime,[ture] int ,inout int , click varchar(200))'
print @str
exec (@str)
--SQL SERVER2000为例企业管理器—>数据库服务器—>管理目录—>SQL SERVER代理—>作业—>右键 选—>新建常规选项页—>输入作业名称—>选中所有者。步骤选项页—>新建—>输入步骤名—>类型 TSQL脚本—>选择需要执行的数据库—>在命令框里输入你的SQL 脚本:
declare @tb varchar(10),@str varchar(8000)
select @tb=convert(varchar(10),getdate(),112)
set @str='create table ['+ @tb +'](id int identity(1,1),uid varchar(50), ip varchar(50),intime datetime,[ture] int ,inout int , click varchar(200))'
print @str
exec (@str)
你可以点左下角的【分析】按钮,分析一下语法,分析无误,按确定。调度选项页—>新建调度—>输入调度名称—>调度类型 你可以选择也可以点右下角的【更改】按钮进行更改,选择每天凌晨如1点:确定。任务栏 SQL SERVER服务器的小图标 双击 服务 选中 SQL SERVER AGENT,点【开始/继续】,选中当启动OS时,自动启动服务,就可以了。到你定的那个时间点,SQL SERVER会自动去执行你的脚本的。
set @tb=convert(varchar(8),getdate(),112)set @sql='
[id] int identity(1,1),
[uid] varchar(50),
[ip] varchar(50),
[intime] datetime,
[ture] int,
[inout] int,
[click] varchar(200)
'
exec ('create table ['+@tb+']('+@sql+')')select * from [20090418]/**
id uid ip intime ture inout click
----------- -------------------------------------------------- -------------------------------------------------- ------------------------------------------------------ ----------- ----------- -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- (所影响的行数为 0 行)
**/
谢谢sdhdy ,感觉你的应该能搞定!
我做好了 明天测试测试就行了
谢谢~
'------------表结构-----------
id int 自动增加
uid varchar(50)
ip vachar(50) 默认0.0.0.0
intime datetime 默认当前系统时间
ture int 默认是0
inout int 默认是10
click vachar(200) 默认是0
declare @tb varchar(10),@str varchar(8000)
select @tb=convert(varchar(10),getdate(),112)
set @str='create table ['+ @tb +'](id int identity(1,1),uid varchar(50), ip varchar(50) default(''0.0.0.0''),
intime datetime default(getdate()),[ture] int default(0) ,inout int default(10) , click varchar(200) default(0))'
print @str
exec (@str)
/*
--这是打印出来的建表语句
create table [20090418](id int identity(1,1),uid varchar(50), ip varchar(50) default('0.0.0.0'),
intime datetime default(getdate()),[ture] int default(0) ,inout int default(10) , click varchar(200) default(0))
*/
Create Table 表名
(
ID int identity(1,1),
Uid varchar(50),
Ip varchar(50) NOT NULL DEFAULT '0.0.0.0',
Intime datetime DEFAULT GETDATE(),
Ture int DEFAULT 0,
Inout int DEFAULT 10,
Click varchar(200) DEFAULT '0'
)