데이터 베이스 MySQL 튜토리얼 Access 数据导入mysql_MySQL

Access 数据导入mysql_MySQL

Jun 01, 2016 pm 01:47 PM
제3자

bitsCN.com

从Access中提取若干信息,导入到mysql中。

 

 嗯,多简单的事呀。。。不过是SQL语句的导入导出嘛。。。我开始真的是这么想的。。。

 

 做的时候发现,Access没有导出SQL的功能,不想用第三方的东西。。。

 

 这里简单描述下我是怎么做的吧!

 

 1、在access中建个视图,得到自己想要的数据;

 

 2、把这个视图查询到的数据,导出成文本格式,我用的是CVS;

 

 3、用文本编辑器,把导出的数据 处理成 SQL语句(多亏了vim,用其他编辑器都不知道怎么办才好,打开都成问题,更不用说快速编辑了。。。UE打开后,滚轮都滚不动的说。。。);

 

 4、用mysql命令,导入mysql。

 

 思路很清晰,我就这么做了。直到最后一步,才发现问题:数据量太大(68万条),这一步很慢很慢。

 

 慢也就罢了,只做一次(等了我近2个小时),没什么关系。。。可是,马上发现,数据中时间格式不对。比如Access中是2011-1-1,而mysql这边,期望得到的是2011-01-01,就这一个时间,要改动几十万条记录,还不如重新导一份新的呢。。。

 

 于是,重复步骤2,得到数据。

 

 因为导入过程慢的实在太离谱了,就找了个mysqldump 备份出来的文件来看,看一看mysql官方觉得怎样导入数据会更快,于是发现了诸如下面的内容:

 


Sql代码 
LOCK TABLES `tablename` WRITE;  
ALTER TABLE `tablename` DISABLE KEYS;  
INSERT INTO `tablename` (id,name,password) VALUES   
-- 这里是数据  
;  
ALTER TABLE `tablename`ENABLE KEYS;  
UNLOCK TABLES; 

LOCK TABLES `tablename` WRITE;
ALTER TABLE `tablename` DISABLE KEYS;
INSERT INTO `tablename` (id,name,password) VALUES
-- 这里是数据
;
ALTER TABLE `tablename`ENABLE KEYS;
UNLOCK TABLES;
 

 很明显,这里的SQL从3个方面做了优化:

 

 1、加了只写的锁(解锁之前,不能查询,同时索引 可以最后做,插入数据 就会快啦);

 

 2、Disable了所有键(于是,就不用再做外键检查了,全心插入数据);

 

 3、insert into 用一条语句完成(一条语句 和 金条语句 的性能,差别不是一般的大啊,想想也觉得是。。。)。

 

 

 这样之后,几分钟就能搞定。

 

 

 另外,说一点文本处理的。。。

 

 一开始,习惯性的,要写成一条一条的SQL,于是想到了用宏来做。宏很简单,小数据量非常方便,不用大脑怎么思考。但是,做了一会,发现实在太慢了,大数据量,处理不了。

 

 我平时很少写vim脚本,现在想来,用脚本也会很慢,毕竟要一行行的执行呀。。。

 

 于是乎,写正则,查找替换。很快,几秒钟搞定一次替换。正则的威力,真不是一般的强大啊。。。上面说的时间格式的转换,也是在这里做的。

 

 注意:即使你的文本很好看,可以试试列编辑。一般行首适用,后面 几乎都不可用了。。。

 

 这里要说的是,不要把多行数据变成一行,没这个必要。变成一行后,可读性会变的很差,文本处理会变的非常的慢。如果一行匹配的次数过多,用g这个参数,往往会很慢。。。

 

 

 就说这些吧。。。

 

 重新理了下思路。。。

 

 下次估计10分钟就能搞定这样的事。。。

 

bitsCN.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

인기 기사

R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전 By 尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

PyCharm 사용 가이드: 한 번의 클릭으로 타사 라이브러리 가져오기 PyCharm 사용 가이드: 한 번의 클릭으로 타사 라이브러리 가져오기 Feb 21, 2024 am 10:33 AM

PyCharm은 개발자들이 널리 환영하는 통합 개발 환경으로, Python 개발을 더욱 효율적이고 편리하게 만들어주는 풍부한 기능과 도구를 제공합니다. 그중에서도 원클릭으로 타사 라이브러리를 가져오는 것은 PyCharm의 매우 실용적인 기능으로, 개발자가 필요한 외부 라이브러리를 신속하게 가져오고 개발 효율성을 향상시키는 데 도움이 됩니다. 이 문서에서는 PyCharm의 원클릭 타사 라이브러리 가져오기 사용 가이드를 소개하고 구체적인 코드 예제를 제공합니다. 1. 먼저 PyCharm을 열고 PyCharm을 열고 다음을 입력합니다.

엣지 브라우저용 타사 플러그인 설치 상태 이해 엣지 브라우저용 타사 플러그인 설치 상태 이해 Dec 23, 2023 pm 06:25 PM

엣지 브라우저의 확장 플러그인 수는 상대적으로 적고 모든 사용자의 일일 사용을 충족하기 어렵습니다. 이때 타사 플러그인을 설치해야 하므로 엣지에 설치할 수 있습니다. 브라우저? 아래를 살펴보겠습니다. 엣지 브라우저에 타사 플러그인을 설치할 수 있나요? 답변: 예. 새로운 버전의 Edge에서는 플러그인을 직접 드래그하여 빠르게 설치할 수 없습니다. crx 확장 파일을 개발자 페이지로 드래그하면 Edge는 기본적으로 파일을 파일로 저장하므로 직접 설치할 수 없습니다. 1. 파일을 Edge Extension 응용 프로그램 폴더로 이동한 후 zip 형식으로 이름을 변경하고 압축을 풉니다. 2. 새 버전의 Edge의 확장된 기능은 작업 표시줄의 오른쪽 상단에 있는 세 개의 점을 클릭하면 볼 수 있습니다. 3. 확장 페이지에서 "개발자 모드"를 엽니다.

NEAR 프로토콜 코인이란 무엇입니까? NEAR 프로토콜 통화의 특징은 무엇입니까? NEAR 프로토콜 코인이란 무엇입니까? NEAR 프로토콜 통화의 특징은 무엇입니까? Mar 04, 2024 pm 11:20 PM

NEARProtocol: 확장 가능하고 사용자 친화적인 블록체인 플랫폼 NEARProtocol은 확장성, 사용자 친화성 및 보안 측면에서 블록체인 기술이 직면한 문제를 해결하도록 설계된 샤딩 기술을 사용하는 블록체인 플랫폼입니다. 개발자에게 분산형 애플리케이션(dApp)을 쉽게 구축하고 배포할 수 있는 효율적이고 사용자 친화적인 플랫폼을 제공합니다. NEARProtocol은 높은 수준의 효율성과 보안을 제공하면서 블록체인 개발 장벽을 낮추도록 설계되었습니다. NEARProtocol은 샤딩 기술을 채택함으로써 대규모 거래를 더 잘 처리하고 사용자에게 더 빠른 거래 확인 시간을 제공할 수 있습니다. 전반적으로 NEARProtocol은 다음을 제공하도록 설계되었습니다.

Laravel에서 제3자 인증 시스템을 통합하는 방법 Laravel에서 제3자 인증 시스템을 통합하는 방법 Nov 03, 2023 pm 06:51 PM

Laravel에서 제3자 인증 시스템을 통합하는 방법 소개: Laravel은 개발 프로세스를 단순화하기 위해 많은 편리한 기능과 도구를 제공하는 강력한 PHP 개발 프레임워크입니다. 실제 개발에서는 사용자 권한을 관리하기 위해 타사 권한 인증 시스템을 통합해야 하는 경우가 많습니다. 이 글에서는 Laravel에서 제3자 인증 시스템을 통합하는 방법을 소개하고 구체적인 코드 예제를 제공합니다. 1단계: 제3자 권한 인증 시스템 설치 먼저 적합한 제3자 권한 인증 시스템을 선택하고 설치해야 합니다.

Antec 650 전원 공급 장치 마더보드 케이블 인터페이스의 핀 수는 몇 개입니까? (Antec 650 전원 배선도) Antec 650 전원 공급 장치 마더보드 케이블 인터페이스의 핀 수는 몇 개입니까? (Antec 650 전원 배선도) Jan 03, 2024 am 10:46 AM

Antec 650w 마더보드 케이블에는 몇 개의 핀이 있습니까? Antec 650W 전원 공급 장치 마더보드의 전원 케이블은 일반적으로 마더보드에서 가장 큰 전원 인터페이스인 24핀입니다. 그 기능은 마더보드와 전원 공급 장치를 연결하여 마더보드와 기타 시스템 구성 요소에 전원을 공급하는 것입니다. 또한 Antec 650W 전원 공급 장치에는 CPU 및 독립 그래픽 카드와 같은 다른 구성 요소를 연결하기 위한 CPU8핀, PCIe6+2핀 등과 같은 다른 유형의 전원 인터페이스도 포함될 수 있습니다. 마더보드 라우팅 튜토리얼 마더보드 라우팅은 마더보드를 설계할 때 다양한 전자 부품 간에 회로를 연결하는 프로세스입니다. 이 과정에서는 회로 안정성, 신호 전송 속도, 정확도 등의 요소를 고려해야 합니다. 회로도에 따라 배선을 배선할 때 레이아웃에 주의하고 적절한 선 폭과 거리를 선택하여 피하십시오.

효율성 향상: 타사 라이브러리를 PyCharm으로 빠르게 가져오기 위한 팁 효율성 향상: 타사 라이브러리를 PyCharm으로 빠르게 가져오기 위한 팁 Feb 22, 2024 pm 02:21 PM

효율성 향상: PyCharm은 타사 라이브러리 팁을 신속하게 가져와서 공유합니다. Python은 강력한 타사 라이브러리 지원으로 인해 널리 사용되는 프로그래밍 언어입니다. Python 개발 과정에서 우리는 다양한 타사 라이브러리를 사용하여 데이터 처리, 네트워크 요청, 그리기 등과 같은 다양한 기능을 구현하는 경우가 많습니다. 그러나 매번 타사 라이브러리를 수동으로 가져오는 것은 지루할 뿐만 아니라 오류가 발생하기 쉽습니다. PyCharm은 강력한 Python 통합 개발 환경입니다.

PyCharm 개발 팁: 타사 라이브러리 가져오기를 원활하게 처리 PyCharm 개발 팁: 타사 라이브러리 가져오기를 원활하게 처리 Feb 20, 2024 pm 09:51 PM

PyCharm은 개발 효율성을 크게 향상시킬 수 있는 인기 있는 Python 통합 개발 환경입니다. PyCharm으로 개발하는 과정에서 기능을 확장하기 위해 타사 라이브러리를 사용하는 경우가 많습니다. 타사 라이브러리 가져오기를 적절하게 처리하는 방법은 핵심 문제입니다. 이 기사에서는 개발자가 타사 라이브러리 가져오기를 더 잘 처리하는 데 도움이 되는 몇 가지 PyCharm 개발 팁을 공유하고 특정 코드 예제를 첨부합니다. 1. 가상 환경을 사용하세요. PyCharm을 사용하여 프로젝트를 개발할 때는 가상 환경을 사용하여 프로젝트를 관리하는 것이 좋습니다.

PHP에서 타사 API 사용 PHP에서 타사 API 사용 Jun 11, 2023 am 08:58 AM

최신 인터넷 기술이 지속적으로 발전하면서 타사 API를 사용하는 것이 개발자가 애플리케이션을 빠르게 구축하는 일반적인 방법이 되었습니다. API(애플리케이션 프로그래밍 인터페이스)는 개발자가 기존 소프트웨어와 서비스를 사용하여 다양한 애플리케이션을 통합할 수 있도록 하는 애플리케이션 인터페이스를 말합니다. 널리 사용되는 웹 프로그래밍 언어인 PHP는 타사 API를 사용할 수 있는 다양한 방법을 제공하며, API를 사용하면 다양한 기능을 쉽게 구현할 수 있습니다.

See all articles