SQL自动创建表和自动插入字段实例
USE [UMoney]
GO
/****** Object: StoredProcedure [dbo].[WCL_WorkerStatDailyWrite] Script Date: 10/08/2013 14:28:26 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
------------------------------------
--用途:根据日期生成用户个人信息日统计表并插入数据
--王朝理
--时间:2013/10/6 18:02:53
------------------------------------
ALTER proc [dbo].[WCL_WorkerStatDailyWrite]
@WorkerID bigint
as
begin tran
set nocount on declare @tb_name nvarchar(100),@sql nvarchar(1000)
declare @cou int
-- 表的名称
set @tb_name='WorkerStatDaily'+REPLACE(CONVERT(VARCHAR(10),GETDATE(),120),'-','') -- 如果表不存在,就建立表
if not exists(select 1 from sysobjects where name=@tb_name and xtype='U')
begin
set @sql='create table dbo.['+@tb_name+']([ID] [bigint] IDENTITY (1, 1) NOT NULL,
[WorkerID] [bigint] NULL,
[StatDate] [datetime] NULL,
[FinishedTask] [int] NULL,
[NewTaskCount] [int] NULL,
[GetPoint] [int] NULL,
[SubWorkers] [int] NULL,
[OnlineHours] [int] NULL,
[SignFlag] [int] NULL)'
--print @sql
exec(@sql)
end
set @sql= N'select top 1 @WorkerID2=WorkerID from ['+@tb_name+'] where WorkerID=@WorkerID and DATEDIFF(day,StatDate,GETDATE())=0'
exec sp_executesql @sql, N'@WorkerID2 int out,@WorkerID bigint', @cou out ,@WorkerID IF ISNULL(@cou,'')=''
BEGIN
set @sql='insert into ['+@tb_name+'] values ('+convert(varchar,@WorkerID)+','''+convert(varchar,GETDATE())+''',0,0,0,0,0,0)'
exec(@sql)
END set nocount off
commit tran
SQL自动创建表和自动插入字段实例的更多相关文章
- SQL Server ->> 自动创建表并从文件加载数据
这个存储过程自动创建表并从文件加载数据. 有一点需要说明的是Excel 12.0驱动是兼容了Excel 97-2003和Excel 2007两者格式的Excel文件. CREATE PROCEDURE ...
- sql自动创建表并复制数据
---------------自动创建表并复制数据sql,需要自己设置主键----------- select * into 新表 from 旧表
- Hibrenate实现根据实体类自动创建表或添加字段
Hibernate支持自动建表,在开发阶段很方便,可以保证hbm与数据库表结构的自动同步. 实现: 在配置hibernate的配置文件中将hbm2ddl.auto设置为update,如:Xml代码&l ...
- Hibernate连接mysql数据库并自动创建表
天才第一步,雀氏纸尿裤,Hibernate第一步,连接数据库. Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个 ...
- Access sql语句创建表及字段类型
创建一张空表: Sql="Create TABLE [表名]" 创建一张有字段的表: Sql="Create TABLE [表名]([字段名1] MEMO NOT NUL ...
- Access sql语句创建表及字段类型(转)
http://www.cnblogs.com/hnyei/archive/2012/02/23/2364812.html 创建一张空表: Sql="Create TABLE [表名]&quo ...
- mysql 按照月份自动创建表,以年和月为表明,动态生成。
需求:mysql5.5 数据库,想要根据月份自动创建表,每个月创建一张表,需要数据库自动创建,并根据当前年和月动态生成表名称. 解决办法:1 连接数据库工具为Navicat 2 首先创建存储过程, ...
- Hibernate 自动创建表bug问题解决
我在hibernate.cfg.xml配置文件中添加了自动创建表的的属性:(这样当数据库中没有此表是,hibernate就会自动帮我们创建一张表) <property name="hb ...
- Hibernate自动创建表
只要在hibernate.cfg.xml添加这句话,就可以自动生成数据表 <property name="hibernate.hbm2ddl.auto">update& ...
随机推荐
- 不可或缺的企业OA面临问题,以及解决建议 软件定制开发 森普演示平台
---恢复内容开始--- 随着信息时代的来临,企业管理也相应的信息化,各种管理软件相继而出,各行各业的信息化有过成功,也有过失败(注:是以该项目是否达到用户的预期目标而言).据统计在信息化失败的案例中 ...
- poj 1986 Distance Queries(LCA)
Description Farmer John's cows refused to run in his marathon since he chose a path much too long fo ...
- IOS 定位 单例
+ (SCLocationController *)sharedController { static SCLocationController *sharedController = nil; st ...
- Dice Notation(模拟)
Dice Notation Time Limit:2000MS Memory Limit:65536KB 64bit IO Format:%lld & %llu Submit ...
- C++中如何建立一个顺序表
准备数据 #define MAXLEN 100 //定义顺序表的最大长度 struct DATA { char key[10]; //结点的关键字 char name[20]; int age; }; ...
- pl/sql连接远程服务器
1.oracle提供了instantclient,下载instantclient-basic-win32-10.2.0.4.zip,将包解压存放到本地,如:D:\STUDY\instantclient ...
- EF查询数据库框架的搭建
一个简单的EF查询框架除了运行项目外,大概需要5个类库项目,当然这个不是一定要这样做,这可以根据自己的需要设置有多少个项目.这里介绍的方法步骤只适合EF零基础的人看看就是了. 在开始之前,先建立一个运 ...
- 使用 Camtasia Recorder显示 “ camtasia an error occurred in the recorder: video codec open failed ”
这是因为本机没有codec的缘故,可以下载一个:tscc解码器(TechSmith Screen Capture Codec) 2.0.3.0 安装版 http://www.cngr.cn/dir/2 ...
- PL/SQL分页查询
create or replace procedure fenye(tabelname in varchar2,currentpage in number,pageSize in number,inW ...
- 【Remoting-5代码实现】
服务端 class RemotingServiceHelper { private static string m_protocolType; private static string urlStr ...