sql笨办法同步数据
Helpers.SqlHelper sqlHelper = new Helpers.SqlHelper("server=***;database=Cms;user id=sa;password=123"); string[] tableNames = { "A", "B", "C", "D", "E" };
var sb = new StringBuilder();
foreach (var tableName in tableNames)
{
var dt = sqlHelper.ExecuteDataTable("select * from "+tableName+" where 0=0"); sb.AppendLine("set identity_insert "+tableName+" on");
sb.AppendLine("truncate table " + tableName + " ");
if (dt != null)
{
var val = string.Empty; for (int i = ; i < dt.Rows.Count; i++)
{
if (i% == )
{
sb.AppendLine("insert into [" + tableName + "](");
for (int r = ; r< dt.Columns.Count; r++)
{
if (r > )
sb.Append(",");
sb.Append(dt.Columns[r].ColumnName);
}
sb.Append(")");
sb.AppendLine("values");
}
else
sb.AppendLine(","); sb.Append("(");
for (int j = ; j < dt.Columns.Count; j++)
{
if (j > )
sb.Append(","); val = dt.Rows[i][j].ToString();
if (dt.Columns[j].DataType == typeof (DateTime) || dt.Columns[j].DataType == typeof (int) ||
dt.Columns[j].DataType == typeof (long))
{
if (string.IsNullOrEmpty(val))
{
sb.Append("null");
}
else
{
sb.Append("'" + val + "'");
}
}
else
{
sb.Append("'" + val.Replace("'", "''") + "'");
}
}
sb.Append(")");
}
}
sb.AppendLine();
sb.AppendLine("set identity_insert " + tableName + " off");
sb.AppendLine();
}
var sql = sb.ToString(); Console.Write(sql);
Console.Read();
identity表导入失败,所以就用了这种笨办法来同步数据
sql笨办法同步数据的更多相关文章
- 使用 Python 在 Caché 和 Sql Server 之间同步数据
任务目标:抽取 Caché 中的数据,导入 Sql Server 中. 遇到的问题: 1.UnicodeEncodeError: ‘ascii’ codec can’t encode characte ...
- SQL数据同步到ELK(四)- 利用SQL SERVER Track Data相关功能同步数据(上)
一.相关文档 老规矩,为了避免我的解释误导大家,请大家务必通过官网了解一波SQL SERVER的相关功能. 文档地址: 整体介绍文档:https://docs.microsoft.com/en-us/ ...
- SQL Sever AlwaysOn的数据同步原理
1. SQL Server AlwaysOn数据同步基本工作 AlwaysOn 副本同步需要完成三件事: 1.把主副本上发生的数据变化记录下来. 2.把这些记录传输到各个辅助副本. 3.把数据变化在辅 ...
- java.sql.SQLException: ORA-01578: ORACLE 数据块损坏问题解决办法
错误信息: java.sql.SQLException: ORA-01578: ORACLE 数据块损坏 (文件号 17, 块号 315703) ORA-01110: 数据文件 17: 'D:\ORA ...
- 分享Sql Server 2008 r2 数据备份,同步服务器数据(二.本地发布,订阅)
上一篇文章中写到了数据库的本地备份,这一篇主要分享一下关于不同服务器的数据备份,主要是使用sql server中的本地发布,本地订阅功能,在数据库的读写分离中,也会经常性的用到这个功能. 复制-> ...
- mysql主从架构,IO、SQL线程运行为YES,从库没有同步数据
mysql基于binlog主从复制架构,IO.SQL线程运行为YES,从库没有同步数据 Slave_IO_Running: Yes Slave_SQL_Running: Yes Replicate_D ...
- SQL Server AlwaysON 同步模式的疑似陷阱
原文:SQL Server AlwaysON 同步模式的疑似陷阱 SQL Server 2012 推出的最重要的功能之一Alwayson,是一个集之前Cluster和Mirror于一体的新功能,即解决 ...
- (转)SQLServer_十步优化SQL Server中的数据访问 三
原文地址:http://tech.it168.com/a2009/1125/814/000000814758_all.shtml 第六步:应用高级索引 实施计算列并在这些列上创建索引 你可能曾经写过从 ...
- ROW模式的SQL无法正常同步的问题总结
转自:http://blog.chinaunix.net/uid-20639775-id-4664792.html#_Toc29623 ROW模式的SQL无法正常同步的问题总结 一. 问题起因.... ...
随机推荐
- 遇到的Exception/error及解决办法记录汇总
一.java.net.SocketException 1.java.net.SocketException:Connection reset 首先,如果一端的Socket被关闭(或主动关闭,或因为异常 ...
- Tensorflow 官方版教程中文版
2015年11月9日,Google发布人工智能系统TensorFlow并宣布开源,同日,极客学院组织在线TensorFlow中文文档翻译.一个月后,30章文档全部翻译校对完成,上线并提供电子书下载,该 ...
- Linux下使用crontab定时备份日志
上周学习了Linux,其中有使用crontab定时备份日志的内容,现把主要步骤记录如下: 首先需要备份的日志的源目录位于/opt/lampp/logs/access_log 备份到/tmp/logs下 ...
- 绘制扇形效果线条小Bug解决
绘制线条基本代码: 变量: CPoint m_ptOrigin;//起点坐标 bool m_bTrue;//检查鼠标左键是否按下 CPoint m_ptOldOrigin;//记录上一次绘制终点坐标, ...
- phpstudy配置伪静态的方法
mod_rewrite是Apache的一个非常强大的功能,它可以实现伪静态页面.下面我详细说说它的使用方法1.检测Apache是否支持mod_rewrite通过php提供的phpinfo()函数查看环 ...
- [LeetCode] Design Hit Counter 设计点击计数器
Design a hit counter which counts the number of hits received in the past 5 minutes. Each function a ...
- [LeetCode] Second Highest Salary 第二高薪水
Write a SQL query to get the second highest salary from the Employee table. +----+--------+ | Id | S ...
- Less的使用
Less为css预处理器 首先先去下载一个koala编译器软件,然后运行打开 新建一个项目目录,在css文件夹中新建一个后缀为less的文件,然后拉入koala软件中,然后运行 ,你的css文件夹中就 ...
- java使用tomcat7的maven插件发布到服务器
服务器容器使用tomcat7的maven插件,使用该插件不需要使用tomcat服务器.以下示例均以paycore项目为例. 一.使用tomcat7-maven-plugin 首先在主pom(payco ...
- jQuery 模态对话框示例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...