Linq批量建表
public JsonResult CreateTable()
{
db = new RZBDbContext();
var query = (from c in db.Clients
select new {
pre = c.Prefix
}).ToList();
foreach (var d in query)
{
//遍历循环client 生成表
//创建数据表
var file = Server.MapPath("~/App_Data/create_log.sql");
var sql = System.IO.File.ReadAllText(file);
sql = sql.Replace("{t}", d.pre);
db.Database.ExecuteSqlCommand(sql);
_log.Info("建立表:"+ d.pre+"_Log");
//Thread.Sleep(1000);
}
ResultModel model = new ResultModel();
model.StrMessage = "Welcome";
return Json(model, JsonRequestBehavior.AllowGet);
}
sql文件:
CREATE TABLE [{t}_QueryLog](
[ID] [uniqueidentifier] NOT NULL,
[LoginUserID] [uniqueidentifier] NOT NULL,
[IdentityID] [nvarchar](50) NOT NULL,
[IdentityName] [nvarchar](200) NOT NULL,
[QueryTime] [datetime] NOT NULL,
[IsHistory] [bit] NOT NULL,
[IsCharge] [bit] NOT NULL,
[IsSimpleCheck] [bit] NOT NULL,
[ext1] [nvarchar](50) NULL,
[ext2] [nvarchar](50) NULL,
[CreateUser] [nvarchar](50) NULL,
[CreateTime] [datetime] NULL,
[UpdateUser] [nvarchar](50) NULL,
[UpdateTime] [datetime] NULL
) ON [PRIMARY] ; /****** Object: Index [IX_{t}_QueryLog_IdentityID] Script Date: 03/06/2014 11:07:13 ******/
CREATE NONCLUSTERED INDEX [IX_{t}_QueryLog_IdentityID] ON [dbo].[{t}_QueryLog]
(
[IdentityID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
; /****** Object: Index [IX_{t}_QueryLog_IdentityName] Script Date: 03/06/2014 11:07:13 ******/
CREATE NONCLUSTERED INDEX [IX_{t}_QueryLog_IdentityName] ON [dbo].[{t}_QueryLog]
(
[IdentityName] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
; /****** Object: Index [IX_{t}_QueryLog_QueryTime] Script Date: 03/06/2014 11:07:13 ******/
CREATE NONCLUSTERED INDEX [IX_{t}_QueryLog_QueryTime] ON [dbo].[{t}_QueryLog]
(
[QueryTime] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, DROP_EXISTING = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
; ALTER TABLE [dbo].[{t}_QueryLog] ADD CONSTRAINT [DF_{t}_QueryLog_ID] DEFAULT (newid()) FOR [ID]
; ALTER TABLE [dbo].[{t}_QueryLog] ADD CONSTRAINT [DF_{t}_QueryLog_QueryTime] DEFAULT (getdate()) FOR [QueryTime]
; ALTER TABLE [dbo].[{t}_QueryLog] ADD CONSTRAINT [DF_{t}_QueryLog_IsHistory] DEFAULT ((0)) FOR [IsHistory]
; ALTER TABLE [dbo].[{t}_QueryLog] ADD CONSTRAINT [DF_{t}_QueryLog_IsCharge] DEFAULT ((1)) FOR [IsCharge]
; ALTER TABLE [dbo].[{t}_QueryLog] ADD CONSTRAINT [DF_{t}_QueryLog_IsSimpleCheck] DEFAULT ((1)) FOR [IsSimpleCheck]
; ALTER TABLE [dbo].[{t}_QueryLog] ADD CONSTRAINT [DF_{t}_QueryLog_CreateTime] DEFAULT (getdate()) FOR [CreateTime]
; ALTER TABLE [dbo].[{t}_QueryLog] ADD CONSTRAINT [DF_{t}_QueryLog_UpdateTime] DEFAULT (getdate()) FOR [UpdateTime]
;
Linq批量建表的更多相关文章
- sql2000分享 批量建表dev_编号
批量建表dev_3970000000014到dev_3970000000035 declare @i bigint declare @j int ) ) ) ) set @sql = '' set @ ...
- Mysql 批量建表存储过程
最近项目中用到了使用存储过程批量建表的功能,记录下来: USE db_test_3; drop procedure if EXISTS `createTablesWithIndex`; create ...
- mysql创建存储过程,批量建表分表00到99
这里以sqlyong为软件示例: --创建存储过程DELIMITER $$ CREATE PROCEDURE `createTablesWithIndex`() BEGIN DECLARE `@i` ...
- 原!mysql5.6 存储过程 批量建表
由于业务需求,需要按天分表,因此写了个存储过程,根据时间生成表. 根据createTime 的时间,以及 while循环的变量设置范围,生成该指定日期及之后的多张表. BEGIN ); ); ; '; ...
- Mysql 存储过程批量建表
CREATE DEFINER=`root`@`%` PROCEDURE `createTables`() begin declare i int; declare suffix varchar(20) ...
- SqlServer 循环建表、删除表、更新表
常用于分库分表 1.批量删除 declare @outter int declare @inner int ) ) ) begin set @tablePrefix='BankPayOrder_'+c ...
- mysql 常用命令,连接数据库,查看建表语句,批量导入数据,批量更新数据,连接查询
1. 1)MySQL 连接本地数据库,从cmd中进入mysql命令编辑器: root root分别为用户名和密码 mysql -uroot -proot 2)MySQL 连接本地数据库,用户名为“ro ...
- 批量导出hive表的建表语句
转的这里的 首先先导出所有的table表 hive -e "use xxxdb;show tables;" > tables.txt 然后再使用hive内置语法导出hive表 ...
- Excel VBA ——批量工作表重命名
虽然平常在用excel 2010重命名工作表的时候,一般可能会用"双击工作表"的方法来重名,但是遇到大批量重名的时候就很麻烦. 我的方法,先建一张新表,然后在第一列写好要命名的表名 ...
随机推荐
- python 库 、包 、模块
概念: 模块: 模块是一种以.py为后缀的文件,在.py文件中定义了一些常量和函数.模块的名称是该.py文件的名称.模块的名称作为一个全局变量__name__的取值可以被其他模块获取或导入. 模块的导 ...
- SpringCloud---服务容错保护---Spring Cloud Hystrix
1.概述 1.1 在分布式架构中,存在着许多的服务单元,若一个单元出现故障,很容易因依赖关系引发故障的蔓延,最终导致整个系统的瘫痪: 为了解决这样的问题,产生了断路器等服务保护机制: 1.2 分布式架 ...
- 数据备份及恢复(mongodump/mongorestore)
说明 1.mongodump创建高保真的BSON文件,mongorestore可以用其恢复数据库.对于小型数据库的备份和恢复,这两个工具非常简单和高效,但对于大型数据库的备份并不理想.2.mongod ...
- JAVA统计一定范围内的质数个数
public class TestNumber{ public static void main(String[] args){ System.out.println(roundPrimeCount( ...
- python中 datetime模块的详解(转载)
Python提供了多个内置模块用于操作日期时间,像calendar,time,datetime.time模块我在之前的文章已经有所介绍,它提供 的接口与C标准库time.h基本一致.相比于time模块 ...
- Delphi下OpenGL2d绘图(02)-画点
一.前言 图形的绘制可以使用glBegin().glEnd()之间完成,绘制的框架代码可以使用 Delphi下OpenGL2d绘图(01)-初始化 中的代码.修改的部份为 Draw 函数的内容. 二. ...
- 架构实战项目心得(三):JAVA和MAVEN的环境配置
1 java环境配置: 1 下载并安装jdk1.82 配置java环境变量: vi /etc/profile,在文件底部增加以下内容:export JAVA_HOME=/data/program/so ...
- spring web.xml基本配置
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://xmln ...
- VS快捷键设置无效
使用Resharper 后发现有些快捷键冲突,但是在工具-选项-键盘 设置后不管用,后来发现有一个移除功能,即移走原来的快捷键; 先选择下拉框1中自己用不到的快捷键,然后移除掉; 备注: 注意观察 快 ...
- Javascript屏蔽鼠标的右键的两种方法。
方法一:利用鼠标button的键值 <script language="javascript"> function blockright(oEvent) { var o ...