mysql to sql sersver
USE SCK_PARA
GO
/****** Object: StoredProcedure [dbo].[syncdata_mysql2sqlserver] Script Date: 08/19/2015 13:26:53 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author: <Author,,Name>
-- Create date: <Create Date,,> -- Description: <Description,,>
-- ============================================= ALTER PROCEDURE [dbo].[syncdata_mysql2sqlserver]
CREATE PROCEDURE [dbo].[syncdata_mysql2sqlserver]
AS
declare @sql nvarchar(4000);
declare @sql2 nvarchar(4000);
declare @sql3 nvarchar(4000);
declare @columns nvarchar(4000);
declare @columns2 nvarchar(4000);
declare @identity int;
BEGIN --声明一个游标,查询数据库的所有表名
declare tableNameCursor cursor for SELECT name FROM SysObjects Where XType='U' ORDER BY Name
--打开
open tableNameCursor
--声明一个变量,用于读取游标中的值
declare @tableName varchar(200)
fetch next from tableNameCursor into @tableName --循环读取
while @@fetch_status=0
begin
--开启显示插入标识值的sql
set @sql2 = 'set IDENTITY_INSERT '+@tableName+' ON'; --关闭显示插入标识值的sql
set @sql3 = 'set IDENTITY_INSERT '+@tableName+' OFF'; --查询出该表包含的字段名并拼接
select @columns = stuff((select ',"'+COLUMN_NAME+'"'
from INFORMATION_SCHEMA.columns
WHERE TABLE_NAME=@tableName order by ORDINAL_POSITION
for xml path('')),1,1,'')
select @columns2 = stuff((select ','+COLUMN_NAME
from INFORMATION_SCHEMA.columns
WHERE TABLE_NAME=@tableName
order by ORDINAL_POSITION
for xml path('')),1,1,'')
Select @identity=OBJECTPROPERTY(OBJECT_ID(@tableName),'TableHasIdentity')
print @tableName
--有标识列
if @identity=1
begin
set @sql = @sql2 +' insert into '+ @tableName +'('+@columns+') select * from OPENQUERY (MySQL ,''select '+@columns2+' from '+ @tableName+''' )';
exec(@sql)
exec(@sql3)
end
--没有标识列
else
begin
set @sql = ' insert into '+ @tableName +'('+@columns+') select * from
OPENQUERY (MySQL ,''select * from '+ @tableName+''' )';
exec(@sql)
end
fetch next from tableNameCursor into @tableName
end
close tableNameCursor --关闭游标
deallocate tableNameCursor --删除游标
END
mysql to sql sersver的更多相关文章
- Mysql 常用 SQL 语句集锦
Mysql 常用 SQL 语句集锦 基础篇 //查询时间,友好提示 $sql = "select date_format(create_time, '%Y-%m-%d') as day fr ...
- PHP+MYSQL网站SQL Injection攻防
程序员们写代码的时候讲究TDD(测试驱动开发):在实现一个功能前,会先写一个测试用例,然后再编写代码使之运行通过.其实当黑客SQL Injection时,同样是一个TDD的过程:他们会先尝试着让程序报 ...
- 【转】MySQL批量SQL插入各种性能优化
原文:http://mp.weixin.qq.com/s?__biz=MzA5MzY4NTQwMA==&mid=403182899&idx=1&sn=74edf28b0bd29 ...
- Mysql 常用 SQL 语句集锦 转载(https://gold.xitu.io/post/584e7b298d6d81005456eb53)
Mysql 常用 SQL 语句集锦 基础篇 //查询时间,友好提示 $sql = "select date_format(create_time, '%Y-%m-%d') as day fr ...
- MySQL数据库sql语句的一些简单优化
1.查询条件的先后顺序 有多个查询条件时,要把效率高能更精确筛选记录的条件放在后边.因为MySQL解析sql语句是从后往前的(不知是否准确). 例: select a.*,b.* from UsrIn ...
- HP+MYSQL网站SQL Injection攻防
WebjxCom提示:程序员们写代码的时候讲究TDD(测试驱动开发):在实现一个功能前,会先写一个测试用例,然后再编写代码使之运行通过.其实当黑客SQL Injection时,同样是一个TDD的过程: ...
- MySQL与SQL比较有那些区别呢
MySQL是一个逐渐完善的过程,使用前期版本时会遇到一些问题,通常搞得莫名其妙,在版本选择上尽量选择最新的. 1.在5.03以前版本中,存储varchar型数据时,后面的空格会被忽视掉,前面的空格会保 ...
- mysql下sql语句 update 字段=字段+字符串
mysql下sql语句 update 字段=字段+字符串 mysql下sql语句令某字段值等于原值加上一个字符串 update 表明 SET 字段= 'feifei' || 字段; (postgr ...
- Oracle、MySql、Sql Server比对
1. 价格 MySql:廉价(部分免费):当前,MySQL採用双重授权(DualLicensed),他们是GPL和MySQLAB制定的商业许可协议.假设你在一个遵循GPL的自由(开源)项目中使用 ...
随机推荐
- WDCP控制面板的常用liunx命令集
WDCP是在linux下的一款常用的服务器可视化管理面板,是新手使用linux搭建网站的福音.本文不过多的介绍WDCP是什么,如果需要了解的话,可以至WDCP官方介绍页面查看. 今天博主准备查看网站系 ...
- jquery下 选择器整理
jQuery 的选择器可谓之强大无比,这里简单地总结一下常用的元素查找方法 $("#myELement") 选择id值等于myElement的元素,id值不能重复在文档中只能有一个 ...
- 参数解析argparse模块
argparse,python的一个命令行解析模块 import argparse #创建一个命令行解析器 parser = argparse.ArgumentParser() #增添参数 parse ...
- Android ActionBar 返回为NULL
AndroidBar返回为NULL.是因为values-v11和values-v14下面的style的主题的设置的原因. 在SDK 11的设备上,会使用第二处,SDK 14会使用第三处. 只需要将三个 ...
- java事件响应方法汇总(容器类监听、监听器类、AbstractAction、反射)
Java图形用户界面中,处理事件时所必须的步骤是: 1.创建接受响应的组件(控件)2.实现相关事件监听接口3.注册事件源的动作监听器4.事件触发时的事件处理 相应的可以通过以下的集中方式来作出事件响应 ...
- 游览器对js加载的次序
直接看例子 <body> <script> console.log("first"); var script = document.createElemen ...
- SMTP协议--在cmd下利用命令行发送邮件
先简单介绍下smtp smtp使用命令和应答在客户与服务器之间传输报文.即客户发出一个命令,服务器返回一个应答.发送方与接收方进行一问一答的交互,由发送方控制这个对话. 在XP系统下点‘开始’-‘运行 ...
- hdu Fibonacci
#include <cstdio> #include <cstring> #include <cmath> #include <algorithm> u ...
- Linux企业级项目实践之网络爬虫(24)——定制规则扩展为垂直爬虫
在垂直搜索的索引建立之前,我们需要到垂直网站上抓取资源并做一定的处理.垂直搜索与通用搜索不同之处在于,通用搜索不需要理会网站哪些资源是需要的,哪些是不需要的,一并抓取并将其文本部分做索引.而垂直搜索里 ...
- 数字积分法DDA(DDA(Digital Differential Analyzer)
数字积分法DDA(DDA(Digital Differential Analyzer) 数字积分法又称数字微分分析法DDA(Digital differential Analyzer),是在数字 ...