将MySQL库的表转入到MSSQL中的某个库中(Employees下的Employees表 → pubs库下)_2
将MySQL库的表转入到MSSQL中的某个库中(Employees下的Employees表 → pubs库下, 此pubs下的表名是employee,不冲突),
方法大致以下几个(另有其他方法待补充),其他 MSSQL to MySQL的以后也可体验下.
1)MySQL ODBC Connector(Link转换)
2)Navicat Premium
3)MSSQL Server版本相对应的SQL Server Migration Assistant for MySQL
--------------------------------------------------------------------------------------------------------------------------------------
本文按照下述步骤进行:
1. 安装驱动(如之前安装过MySQL 里面会配带安装了驱动)
2. 配置ODBC驱动
3. 建立MySQL与MSSQL的连接
4. 在2个数据表之间导入数据
select * into pubs.dbo.employees
from openquery(mysql,'select * from employees.employees')
--------------------------------------------------------------------------------------------------------------------------------------
Info 1)之前就已安装好MySQL 8.0.18,查看MySQL版本:
Info 2)查看MSSQL版本(为了读一些旧代码从MSSQL2014转到了MSSQL2008)
SELECT SERVERPROPERTY('productversion'),
SERVERPROPERTY ('productlevel'),
SERVERPROPERTY ('edition'),
@@version
select @@version
--------------------------------------------------------------------------------------------------------------------------------------
1)ODBC配置
Employees是刚配置(MSSQL2008, 64bit, 为转换MySQL表到MSSQL中去)
下面数据源有5个的是2019年配置(当时安装MSSQL2014,,为了BarTender连接Excel文件打印标签用)
2)在MSSQL的SQL Server Management Studio的Query中输入:
EXEC master.dbo.sp_addlinkedserver
@server=N'MYSQL',
@srvproduct=N'MySQL',
@provider=N'MSDASQL',
@provstr=N'DRIVER={MySQL ODBC 8.0 ANSI Driver}; SERVER=127.0.0.1;
DATABASE=Employees; USER=root; PASSWORD=123456; OPTION=3'
//点击上面那个链接时,提示下面信息:
(7303问题,还没找到根本的解决方法,稍后继续...)
TITLE: Microsoft SQL Server Management Studio
------------------------------
Failed to retrieve data for this request. (Microsoft.SqlServer.Management.Sdk.Sfc)
For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&LinkId=20476
------------------------------
ADDITIONAL INFORMATION:
An exception occurred while executing a Transact-SQL statement or batch. (Microsoft.SqlServer.ConnectionInfo)
------------------------------
Cannot initialize the data source object of OLE DB provider "MSDASQL" for linked server "MYSQL". (Microsoft SQL Server, Error: 7303)
For help, click: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.50.1600&EvtSrc=MSSQLServer&EvtID=7303&LinkId=20476
3)然后再向表中插入数据插表
select * into pubs.dbo.employees
from openquery(mysql,'select * from employees.employees')
--------------------------------------------------------------------------------------------------------------------------
--在MSSQL中需要Employees这个表的数据集时,这个数据自己可能会经常用到用于实验,在Dos命令提示符下执行:
bcp testdb.dbo.Employees in c:\temp\employees.txt -c -T
testdb是我测试用的DBName,Employees是TableName, in(表示导入数据), 后面是Path, 再就是字符类型,信任连接
--------------------------------------------------------------------------------------------------------------------------
将MySQL库的表转入到MSSQL中的某个库中(Employees下的Employees表 → pubs库下)_2的更多相关文章
- mysql下批量清空某个库下的所有表(库不要删除,保留空库)
总所周知,mysql下要想删除某个库下的某张表,只需要切换到该库下,执行语句"drop table tablename"即可删除!但若是该库下有成百上千张表,要是再这样一次次执行d ...
- mysql5.7 mysql库下面的user表没有password字段无法修改密码
如题所述,mysql5.7 mysql库下面的user表没有password字段无法修改密码, 5.7版本已经不再使用password来作为密码的字段了 而改成了authentication_st ...
- 数据库分库分表策略之MS-SQL读写分离方案
MS-SQL读写分离将从以下知识点进行展开: 以下截图内容来自博主:https://www.cnblogs.com/echosong/p/3603270.html 1.本地发布(写库如:centerd ...
- mysql将一个表中字段A的值赋给另一个表的字段B
# mysql 的修改方法 update table_a a inner join table_b b on b.id=a.id set a.description=b.content; # mssq ...
- linux shell命令行下操作mysql 删除mysql指定数据库下的所有表--亲测成功百分百测试通过--绝对可靠
1,在shell提示符下查看mysql指定数据库下的表等数据
- MYSQL优化派生表(子查询)在From语句中的
Mysql 在5.6.3中,优化器更有效率地处理派生表(在from语句中的子查询): 优化器推迟物化子查询在from语句中的子查询,知道子查询的内容在查询正真执行需要时,才开始物化.这一举措提高了性能 ...
- 在mysql数据库中创建Oracle数据库中的scott用户表
在mysql数据库中创建Oracle数据库中的scott用户表 作者:Eric 微信:loveoracle11g create table DEPT ( DEPTNO int(2) not null, ...
- mysql中显示当前数据库下的所有表,包括视图。
环境说明: mysql版本:5.5.57-log 操作系统:Red Hat Enterprise Linux Server release 6.6 (Santiago) 需求:查看当前数据库下所有的表 ...
- MySQL数据库 crud语句 ifnull() 创建新账户 备份数据库 一对多关系 多对多(中间表) 外键约束 自关联 子查询注意事项 DML DDL DQL mysql面试题 truncate与delete的区别
DML(data manipulation language): 它们是SELECT.UPDATE.INSERT.DELETE,就象它的名字一样,这4条命令是用来对数据库里的数据进行操作的语言 DDL ...
随机推荐
- 【JVM】堆区域的一个详细了解并附带调优案例
话不多说,直接撸图: 1>Eden中通过可达性分析,存活下来的对象直接通过复制算法移动到From区域中,此时该对象的分代年龄加1: 2>当下一次虚拟机进行[Minor GC]时,会同时对[ ...
- SSH_ProductCRUD的项目结构与配置文件
项目结构 各类配置文件 <?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hib ...
- queue.Queue()
一.构造方法 Queue是构造方法,函数签名是Queue(maxsize=0) ,其中maxsize设置队列的大小. 二.实例方法 Queue.qsize(): 返回queue的近似值.注意:qsiz ...
- java后端解决跨域
1 package com.zys.boot_jeep.config; import org.springframework.context.annotation.Bean; import org.s ...
- Python-pygame案例小飞机
import pygame, sys from pygame.locals import * import random '''飞机躲避导弹''' # 玩家 class Player(pygame.s ...
- oracle计算两日期相差多少秒,分钟,小时,天,周,月,年
--计算两个时间差相差多少秒select ceil((sysdate-t.transdate)* 24 * 60 * 60),t.transdate,sysdate from esc_trans_lo ...
- [PHP自动化-进阶]004.Snoopy VS CURL 模拟Discuz.net登陆
引言:采集论坛第一步就是要模拟登陆,由于各个站点登录表单各不相同,验证方式又是多种多样,所以直接提交用户名密码到登录页面就比较繁琐. 所以我们采用cookie来模拟登陆无疑是最佳捷径. 今天我们要处理 ...
- Python数据分析:pandas玩转Excel (一)
目录 1 pandas简介 2 导入 3 使用 4 读取.写入 1 pandas简介 1.Pandas是什么? Pandas是一个强大的分析结构化数据的工具集: 它的使用基础是Numpy(提供高性能的 ...
- vue-cli4 + TS构建新项目
1. 如果你之前没有安装vue-cli,可以通过如下命令进行安装: npm install -g @vue/cli yarn global add @vue/cli 2. 创建vue项目 vue cr ...
- 利用jieba库画词云
from wordcloud import WordCloud import matplotlib.pyplot as plt import jieba # 生成词云 def create_word_ ...