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& ...
随机推荐
- 通过项目逐步深入了解Mybatis<三>
Mybatis 高级知识 安排:对订单商品数据模型进行分析 订单商品数据模型 数据模型分析思路: 1.每张表记录的数据内容(分模块对每张表记录的内容进行熟悉,相当于学习系统需求的过程) 2.每张表重要 ...
- 了解XSS攻击
XSS又称CSS,全称Cross SiteScript,跨站脚本攻击,是Web程序中常见的漏洞,XSS属于被动式且用于客户端的攻击方式,所以容易被忽略其危害性.其原理是攻击者向有 XSS漏洞的网站中输 ...
- The Building Blocks- Components of EA Part 2- Process, People, Network and Time
1. Zachman Framework Information (Data) - Answer the Question 'What?' Contextual: List of Things imp ...
- 一起talk GDB吧(第七回:GDB监视功能)
各位看官们.大家好.上一回中我们说的是GDB改动程序执行环境的功能.而且说了怎样使用GDB改动变量 的值.这一回中.我们继续介绍GDB的调试功能:监视功能.当然了,我们也会介绍怎样使用GDB的监视功 ...
- c-version:null]] could not deserialize the servlet-context scoped attribute with name: "MENU_LIST"
<Jul 26, 2013 10:45:02 AM CST> <Error> <HTTP> <BEA-101362> <[ServletConte ...
- 【树形贪心】【UVA1267】Network
重要意义:复习好久没写的邻接表了. Network, Seoul 2007, LA3902 Consider a tree network with n nodes where the interna ...
- linux下ACE使用epoll
select和epoll的比较就不用多说了.ACE在linux下默认使用select来实现Reactor的.如何在linux下让ACE使用epoll. 1.加一个编译宏,告诉ACE不要使用默认的sel ...
- 在spring+hibernaet+mysql事务处理中遇到的一些坑
spring的事务处理本来就是依赖于底层的实现,比如hibernate及数据库本身. 所以,当使用mysql数据库时,首先要确定的是,所操作的对象表是innodb格式的. 1. read-only方法 ...
- JS转换Decimal带千分号的字符串显示
var numberChars = "0123456789"; /* Convert to decimal string */ function toDecimalString(v ...
- Oracle闪回详解
1.问题定义 闪回是dba做的工作.现在也可授权给某个用户. 闪回的定义:就是将用户错误的操作回恢到以前的状态.即使你的事务提交的commit. 如果你删除了一个表.Drop table(DDL) ...