MySQLdb库连接MySQL数据库
Python DB-API是Python的数据库应用程序接口,支持包括Oracle,MySQL,DB2,MSSQL,Sybase等主流数据库,但不同的数据库,需要下载不同的模块,比如说:MySQLdb模块支持MySQL. 虽然模不一样,但所有这些API执行步骤是一致的: 1. 导入API模 2. 获取与数据库的连接
Python DB-API是Python的数据库应用程序接口,支持包括Oracle,MySQL,DB2,MSSQL,Sybase等主流数据库,但不同的数据库,需要下载不同的模块,比如说:MySQLdb模块支持MySQL. 虽然模不一样,但所有这些API执行步骤是一致的:
1. 导入API模
2. 获取与数据库的连接.
3. 发出SQL语句和存储过程.
4. 关闭连接
下面以MySQLdb模块来做说明:
安装
首先必须安装。Windows下载链接:http://www.codegood.com/archives/4
插入
#导入相关模块 import MySQLdb #建立和mysql数据库的连接 dbconn = MySQLdb.connect(host='127.0.0.1',user='root',passwd='abcd') #获取游标 cursor = dbconn.cursor() #执行SQL,创建一个数据库 cursor.execute("drop database if exists test") cursor.execute("create database test") #选择连接哪个数据库 dbconn.select_db('test') #引入异常处理 try: #执行SQL,创建一个表 cursor.execute("create table log(id int,message varchar(50))") #插入一条记录 value = [0,"Log Information ID is:0"] cursor.execute("insert into log values(%s,%s)",value) #插入多条记录 values = [] for i in range(1,11): values.append((i,'Log Information ID is:' + str(i))) cursor.executemany("insert into log values(%s,%s)",values) #提交修改 dbconn.commit() except: #如果执行SQL语句有错,则回滚! dbconn.rollback() #关闭游标连接,释放资源 cursor.close() #关闭连接 dbconn.close()
查询
数据库建立连接后,可以使用fetchone()方法来获取单个记录或者fetchAll方法fetech从数据库表的多个值.
fetchone(): 这种方法获取查询结果集的下一行。结果集是一个对象时,将返回一个游标对象用于查询表.
fetchall(): 这种方法获取结果集的所有行。如果某些行已经从结果集中提取,fetchAll()方法检索结果集的其余行.
rowcount: 这是一个只读属性,返回受影响的行数execute()方法.
#导入模块 import MySQLdb #也可以将数据库名放到Connect() dbconn = MySQLdb.Connection('127.0.0.1', 'root', 'abcd', 'test') cursor = dbconn.cursor() count = cursor.execute('select * from log') print '总共有 %s 条记录',count #获取一条记录,每条记录做为一个元组返回 print "只获取一条记录:" result = cursor.fetchone(); print result print 'ID: %s Log Info: %s' % result #获取5条记录,注意由于之前执行有了fetchone(),所以游标已经指到第二条记录了,也就是从第二条开始的所有记录 print "只获取5条记录:" results = cursor.fetchmany(5) for res in results: print res print "获取所有结果:" #重置游标位置,0,为偏移量,mode=absolute | relative,默认为relative, cursor.scroll(0,mode='absolute') #获取所有结果 results = cursor.fetchall() for res in results: print res dbconn.close()
C:\Work\Python\Learn>python select.py 总共有 %s 条记录 11 只获取一条记录: (0L, 'Log Information ID is:0') ID: 0 Log Info: Log Information ID is:0 只获取5条记录: (1L, 'Log Information ID is:1') (2L, 'Log Information ID is:2') (3L, 'Log Information ID is:3') (4L, 'Log Information ID is:4') (5L, 'Log Information ID is:5') 获取所有结果: (0L, 'Log Information ID is:0') (1L, 'Log Information ID is:1') (2L, 'Log Information ID is:2') (3L, 'Log Information ID is:3') (4L, 'Log Information ID is:4') (5L, 'Log Information ID is:5') (6L, 'Log Information ID is:6') (7L, 'Log Information ID is:7') (8L, 'Log Information ID is:8') (9L, 'Log Information ID is:9') (10L, 'Log Information ID is:10')

핫 AI 도구

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

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

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

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

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

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

개발 환경에서 Python과 JavaScript의 선택이 모두 중요합니다. 1) Python의 개발 환경에는 Pycharm, Jupyternotebook 및 Anaconda가 포함되어 있으며 데이터 과학 및 빠른 프로토 타이핑에 적합합니다. 2) JavaScript의 개발 환경에는 Node.js, VScode 및 Webpack이 포함되어 있으며 프론트 엔드 및 백엔드 개발에 적합합니다. 프로젝트 요구에 따라 올바른 도구를 선택하면 개발 효율성과 프로젝트 성공률이 향상 될 수 있습니다.

MySQL에서 외국 키의 기능은 테이블 간의 관계를 설정하고 데이터의 일관성과 무결성을 보장하는 것입니다. 외국 키는 참조 무결성 검사 및 계단식 작업을 통해 데이터의 효과를 유지합니다. 성능 최적화에주의를 기울이고 사용할 때 일반적인 오류를 피하십시오.

MySQL과 Mariadb의 주요 차이점은 성능, 기능 및 라이센스입니다. 1. MySQL은 Oracle에 의해 개발되었으며 Mariadb는 포크입니다. 2. MariaDB는 높은 하중 환경에서 더 나은 성능을 발휘할 수 있습니다. 3. Mariadb는 더 많은 스토리지 엔진과 기능을 제공합니다. 4.MySQL은 듀얼 라이센스를 채택하고 MariaDB는 완전히 오픈 소스입니다. 선택할 때 기존 인프라, 성능 요구 사항, 기능 요구 사항 및 라이센스 비용을 고려해야합니다.

SQL은 관계형 데이터베이스를 관리하는 표준 언어이며 MySQL은 SQL을 사용하는 데이터베이스 관리 시스템입니다. SQL은 CRUD 작업을 포함한 데이터베이스와 상호 작용하는 방법을 정의하는 반면 MySQL은 SQL 표준을 구현하고 저장 프로 시저 및 트리거와 같은 추가 기능을 제공합니다.

Redis는 주로 데이터베이스, 캐시 및 메시지 중개인으로 사용되는 메모리 데이터 구조 스토리지 시스템입니다. 핵심 기능에는 단일 스레드 모델, I/O 멀티플렉싱, 지속 메커니즘, 복제 및 클러스터링 기능이 포함됩니다. Redis는 일반적으로 캐싱, 세션 저장 및 메시지 대기열을위한 실제 응용 프로그램에 사용됩니다. 올바른 데이터 구조를 선택하고 파이프 라인 및 트랜잭션을 사용하여 모니터링 및 튜닝을 통해 성능을 크게 향상시킬 수 있습니다.

MySQL 및 Phpmyadmin은 다음 단계를 통해 효과적으로 관리 할 수 있습니다. 1. 데이터베이스 작성 및 삭제 : Phpmyadmin을 클릭하여 완료하십시오. 2. 테이블 관리 : 테이블을 만들고 구조를 수정하고 인덱스를 추가 할 수 있습니다. 3. 데이터 작동 : 삽입, 업데이트, 데이터 삭제 및 SQL 쿼리 실행을 지원합니다. 4. 가져 오기 및 내보내기 데이터 : SQL, CSV, XML 및 기타 형식을 지원합니다. 5. 최적화 및 모니터링 : 최적화 가능한 명령을 사용하여 테이블을 최적화하고 쿼리 분석기 및 모니터링 도구를 사용하여 성능 문제를 해결하십시오.

Python 및 JavaScript의 미래 추세에는 다음이 포함됩니다. 1. Python은 과학 컴퓨팅 분야에서의 위치를 통합하고 AI, 2. JavaScript는 웹 기술의 개발을 촉진하고, 3. 교차 플랫폼 개발이 핫한 주제가되고 4. 성능 최적화가 중점을 둘 것입니다. 둘 다 해당 분야에서 응용 프로그램 시나리오를 계속 확장하고 성능이 더 많은 혁신을 일으킬 것입니다.

MySQL에서는 altertabletable_nameaddcolumnnew_columnvarchar (255) 이후에 필드를 추가하여 altertabletable_namedropcolumncolumn_to_drop을 사용하여 필드를 삭제합니다. 필드를 추가 할 때는 쿼리 성능 및 데이터 구조를 최적화하기위한 위치를 지정해야합니다. 필드를 삭제하기 전에 작업이 돌이킬 수 없는지 확인해야합니다. 온라인 DDL, 백업 데이터, 테스트 환경 및 저하 기간을 사용하여 테이블 구조 수정은 성능 최적화 및 모범 사례입니다.
