>백엔드 개발 >파이썬 튜토리얼 >Python 데이터베이스 작업

Python 데이터베이스 작업

高洛峰
高洛峰원래의
2016-12-27 13:30:161084검색

Windows에서 MySQL-python 설치

다운로드 주소: https://pypi.python.org/pypi/MySQL-python/1.2.5 시스템에 설치하기만 하면 됩니다.

MySQL에 연결하려면 Linux에 MySQL-python을 설치하세요.

다운로드 주소: https://pypi.python.org/pypi/MySQL-python/

압축해제 후 해당 디렉터리에 들어가 python setup.py install을 실행하세요

설치 과정에서 발생하는 일반적인 문제:

1. mysql_config를 찾을 수 없습니다. 이는 일반적으로 mysql이 lnmp 원클릭 설치 패키지를 사용하여 설치되었기 때문입니다. 경로는

입니다. 해결 방법: mysql_config 파일의 위치를 ​​찾은 다음 ln을 찾습니다. -s 소프트 링크를 만들려면 /usr/bin/으로 이동하세요.

2. Ubuntu에서 'x86_64-linux-gnu-gcc'가 없다는 메시지가 표시되면 python-dev 패키지를 설치해야 합니다.

해결 방법: sudo apt -get install python -dev -y

3. 종료 상태 1

으로 인해 'gcc' 명령이 실패했습니다. 해결 방법: yum install gcc python-devel -y

설치가 완료된 후 python을 입력하고 import MySQLdb를 실행하여 가져오기가 성공했는지 확인합니다.

보충:

우분투에서 작업할 때 데이터베이스에 연결할 수 없다는 것을 발견했습니다. ss -lnt는 mysql이 루프백 주소의 3306 포트만 수신한다는 것을 발견했습니다. 수정이 필요합니다.
Ubuntu의 mysql을 수정하고 외부 연결을 허용하도록 수신 포트 127.0.0.1:3306을 변경합니다.
/etc/mysql/my.cnf를 편집합니다(구성 매개변수는 이 디렉터리의 다른 파일에 있을 수 있습니다. 주의 깊게 살펴보세요)
모든 IP에서 액세스를 허용하려면 바인딩 주소 = 0.0.0.0을 수정하세요.
그런 다음 /etc/init.d/mysql restart를 실행하여 mysqlserver 서비스를 다시 시작합니다

# 다음은 Python이 데이터베이스를 작동하는 예입니다.

#!/usr/bin/env python
# -*- coding:utf8 -*-
import MySQLdb
conn = MySQLdb.connect(
host = '192.168.2.14',
port = 3306,
user = 'root',
passwd = '123456',
db = 'demo',
)
# 操作数据库首先需要创建游标
cur = conn.cursor()
# 通过游标cur操作execute()方法可以写入纯sql语句,如下:
# 创建数据表
# cur.execute("create table teacher (id int(5),name varchar(20),class varchar(20),age varchar(10))")
# 插入数据
# cur.execute("insert into teacher values(23,'zhangsan','science',15)")
# 修改数据
# cur.execute("update teacher set id=100 where name='zhangsan'")
# 删除数据
# cur.execute("delete from teacher where id=100")
#插入一条数据【也可以用像下面这种写法】
sqli="insert into teacher values(%s,%s,%s,%s)"
cur.execute(sqli, (23,'zhangsan','science',15))
# 使用executemany一次性向数据表中插入多条值,返回值为受影响的行数。
sqli="insert into teacher values(%s,%s,%s,%s)"
cur.executemany(sqli,[
(11,'wangwu','art',23),
(8,'john','math',22),
(3,'Tom','physical',25),
])
# 最后关闭游标,执行提交操作,并关闭数据库连接
cur.close()
conn.commit()
conn.close()

데이터 검색 및 출력

#!/usr/bin/env python
# -*- coding:utf8 -*-
import MySQLdb
conn = MySQLdb.connect(
host = '192.168.2.14',
port = 3306,
user = 'root',
passwd = '123456',
db = 'demo',
)
cur = conn.cursor()
# 获得表中有多少条数据
aa = cur.execute("select * from teacher")
cur.fetchone() # fetchone()方法可以帮我们获得表中的数据,但是每执行一次输出一行满足条件的值
cur.fetchone()
......
cur.scroll(0,'absolute')# 这样能将游标定位到表中的第一条数据
info = cur.fetchmany(aa)
for i in info:
print i
cur.close()
conn.commit()
conn.close()

파이썬의 데이터베이스 운영에 대해 에디터가 이것저것 소개해 드릴게요. 도움이 되셨으면 좋겠습니다!

Python의 데이터베이스 운영과 관련된 더 많은 기사를 보려면 PHP 중국어 웹사이트를 주목하세요!

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