Чисто и просто JSfiddle
Это будет полезно, если вы хотите, чтобы событие вызывалось косвенно из div или кнопки.
MySQLdb является простым путем. Вы добираетесь для выполнения SQL-запросов по соединению. Период.
Мой предпочтительный путь, который является также pythonic, состоит в том, чтобы использовать могущественное SQLAlchemy вместо этого. Вот , запрос имел отношение учебное руководство, и здесь является учебным руководством на возможности ORM из SQLALchemy.
Попытайтесь использовать MySQLdb. MySQLdb только поддерживает Python 2.
существует, как разбить на страницы здесь: http://www.kitebird.com/articles/pydbapi.html
<час>От страницы:
# server_version.py - retrieve and display database server version
import MySQLdb
conn = MySQLdb.connect (host = "localhost",
user = "testuser",
passwd = "testpass",
db = "test")
cursor = conn.cursor ()
cursor.execute ("SELECT VERSION()")
row = cursor.fetchone ()
print "server version:", row[0]
cursor.close ()
conn.close ()
Вот один способ сделать это, с помощью MySQLdb, который только поддерживает Python 2:
#!/usr/bin/python
import MySQLdb
# Connect
db = MySQLdb.connect(host="localhost",
user="appuser",
passwd="",
db="onco")
cursor = db.cursor()
# Execute SQL select statement
cursor.execute("SELECT * FROM location")
# Commit your changes if writing
# In this case, we are only reading data
# db.commit()
# Get the number of rows in the resultset
numrows = cursor.rowcount
# Get and display one row at a time
for x in range(0, numrows):
row = cursor.fetchone()
print row[0], "-->", row[1]
# Close the connection
db.close()
1 - Установка
необходимо установить драйвер MySQL прежде, чем сделать что-либо. В отличие от PHP, Только драйвер SQLite установлен по умолчанию с Python. Наиболее используемый пакет, чтобы сделать так MySQLdb, но трудно установить его с помощью easy_install. Обратите внимание, что MySQLdb только поддерживает Python 2.
Для пользователя Windows, можно добраться exe MySQLdb.
Для Linux, это - случайный пакет (python-mysqldb). (Можно использовать sudo apt-get install python-mysqldb
(для базирующихся дистрибутивов debian), yum install MySQL-python
(для основанного на об/мин), или dnf install python-mysql
(для современного фетрового дистрибутива) в командной строке для загрузки.)
Для Mac, Вы можете установка MySQLdb с помощью Macport.
2 - Использование
После установки, Перезагрузки. Это не обязательно, Но это будет препятствовать тому, чтобы я ответил на 3 или 4 других вопроса в этом сообщении, если что-то пойдет не так, как надо. Поэтому перезагрузка.
Тогда это точно так же, как использует любой другой пакет:
#!/usr/bin/python
import MySQLdb
db = MySQLdb.connect(host="localhost", # your host, usually localhost
user="john", # your username
passwd="megajonhy", # your password
db="jonhydb") # name of the data base
# you must create a Cursor object. It will let
# you execute all the queries you need
cur = db.cursor()
# Use all the SQL you like
cur.execute("SELECT * FROM YOUR_TABLE_NAME")
# print all the first cell of all the rows
for row in cur.fetchall():
print row[0]
db.close()
, Конечно, существует тысяча возможностей и опций; это - очень простой пример. Необходимо будет посмотреть на документацию. А хорошая начальная точка .
3 - Более усовершенствованное использование
, Как только Вы знаете, как оно работает, можно хотеть использовать ORM, чтобы не писать SQL вручную и управлять таблицами, поскольку они были объектами Python. Самый известный ORM в сообществе Python SQLAlchemy.
я настоятельно рекомендую Вам использовать его: Ваша жизнь будет намного легче.
я недавно обнаружил другой драгоценный камень в мире Python: человек маленького роста . Это - очень облегченный ORM, действительно легкий и быстрый для установки тогда использования. Это делает мой день для маленьких проектов или автономных приложений, Где использование крупных инструментов как SQLAlchemy или Django является излишеством:
import peewee
from peewee import *
db = MySQLDatabase('jonhydb', user='john', passwd='megajonhy')
class Book(peewee.Model):
author = peewee.CharField()
title = peewee.TextField()
class Meta:
database = db
Book.create_table()
book = Book(author="me", title='Peewee is cool')
book.save()
for book in Book.filter(author="me"):
print book.title
Этот пример работает из поля. Ничто кроме наличия человека маленького роста (pip install peewee
) не требуется.
Даже при том, что некоторые из Вас могут отметить это как дубликат и нарушаться, что я копирую чужой ответ, я был бы ДЕЙСТВИТЕЛЬНО , любят выделять аспект ответа г-на Napik. Поскольку я пропустил это, я вызвал общенациональное время простоя веб-сайта (9 минут) и стоил моей компании тысячи долларов. Если только кто-то поделился этой информацией, я, возможно, предотвратил ее!
Вот его код:
import mysql.connector
cnx = mysql.connector.connect(user='scott', password='tiger',
host='127.0.0.1',
database='employees')
try:
cursor = cnx.cursor()
cursor.execute("""select 3 from your_table""")
result = cursor.fetchall()
print(result)
finally:
cnx.close()
важная вещь здесь Попытка и Наконец пункт. Это позволяет соединения с ВСЕГДА быть закрытым, независимо от того, что происходит в cursor/sqlstatement части кода. Много активных соединений заставляет DBLoadNoCPU пронзать и могло разрушить сервер дб.
я надеюсь, что это предупреждение помогает сохранить серверы и в конечном счете задания! :D