通过http&SQL工具的SQL连接器

FluoSQL的Python项目详细描述


创建一个数据库来测试"示例",并将SQL文件输入到示例文件夹中。 sont locale a python
Après il est possible qu'il est necessaire d'installer: httplib, urllib
Installez le avec pip:
<pre><code>
pip install FluoSQL
</code></pre>

Si ça ne marche pas:
<pre><code>
git clone https://gitlab.com/LaGvidilo/FluoSQL.git
cd FluoSQL
sudo pip请注意,您也可以使用"setup.py install"
br/>br/>然后这就是如何使用这家书店:

>br/>br/>just connected a base直接连接到连接器的一个数据库,通过打开:br/>pre gt&pre gt&INstall:
br/>br/>pre gt&pre gt进出口趋势图ias this
SQL_base = FSQL(IP="192.168.1.20",user="admin",password="1234",base="Exemple")
</code></pre>

Et ensuite faire une requête:
<pre><code>
print SQL_base.make_simple_request(type_request = "select", selected_row="site,visit", selected_from="stats", WHERE={'visit>':0})
</code></pre>

Ensuite voilà un client http FluoSQL:
<pre><code>
IP = "localhost"#IP of http server
username = "name@mail.com"#username (in Auth Table of database "Exemple")
password = "1234"#password (in Auth Table of database "Exemple")
RESULT ="NO RETURN"#Start message

import FluoSQL#Import FluoSQL
try:
SQL = FluoSQL.FluoSQL(IP=IP, user=username, password=password,http=True)#connection


#utilisation
#Set request
SQL.make_simple_request(type_request = "select", selected_row="site,visit", selected_from="stats", WHERE={'visit>':0}, set_current=True,mode=-1)
RESULT = SQL.send_request()#And send request & commit
except:
print "error: connector"#if error of connector

print "RESULT:"
print RESULT
</code></pre>

Et voilà son serveur:
<pre><code>
#coding: utf-8
from FluoSQL import FluoSQL as FSQL
SQL_base = FSQL(IP="192.168.1.21",user="admin",password="1234",base="Exemple")#For make request simple
SQL_common = FSQL(IP="192.168.1.21",user="admin",password="1234",base="Exemple")#For send request


#SERVEUR FluoSQL======================================START
from bottle import route, run, template, get, post, request, response, static_file, redirect

@post('/connect')
def connect_fluo():
mode = request.POST['@mode']
username = request.POST['@username']
passhash = request.POST['@hash']
if mode == "connect":
print "\n/connect"
SQL_base.make_simple_request(type_request = "select", selected_row="email, HASH, blocked", selected_from="Auth", WHERE={'email':username,'HASH':passhash}, set_current=True)
print "REQUEST:",SQL_base.__REQUEST__
RES = SQL_common.set_request(SQL_base.__REQUEST__,1)
print "RESULT:",RES
return str(RES)
else:
return None

@post('/req')
def request_fluo():
username = request.POST['@username']
passhash = request.POST['@hash']
securelogin=False
SQL_base.make_simple_request(type_request = "select", selected_row="email, HASH, blocked", selected_from="Auth", WHERE={'email':username,'HASH':passhash}, set_current=True)
print "SQL_base.__REQUEST__",SQL_base.__REQUEST__,'\n'
RES = SQL_common.set_request(SQL_base.__REQUEST__,1)
try:
u,h,b = RES['email'],RES['HASH'],RES['blocked']
if b==0:<如果U=Username:
if H==Passhash:
securelogin=true
except:
print"not connected"
br/>if(securelogin====false):
return "<AUTH_ERROR>"
else:
Req = str(request.POST['@req'])+';'
print "\n/req"
print "(",Req,")"
try:
print "REQUEST:",Req
print "RESULT:",str(SQL_common.set_request(Req))
return str(SQL_common.set_request(Req))
except:
return "<SQL_ERROR>"

run(host='0.0.0.0', port=8000)
#SERVEUR FluoSQL======================================END
</code></pre>

Je vous conseil de pas toucher au code serveur si vous voulez que ça marche.
Pour le serveur il y a une dépendance: bottle.
Installez le avant de tester:
<pre><code>
pip install bottle
</code></pre>

Voila c'est pas plus compliqué


Ensuite en détail:
Vous pouvez utiliser l'autoloader html & template de FluoSQL:
<pre><code>
from FluoSQL import autoload
autoload = autoload()
pages = autoload.load_html()
tpl = autoload.load_tpl()
</code></pre>

Sécuriser un mot de passe:
<pre><code>
from FluoSQL import hash_
print hash_("test")
</code></pre>

Charger un site en lecture seule:
<pre><code>
from FluoSQL import Fluo
a = Fluo()
a.make_simple_get()
a.execute()
</code></pre>


Se connecter avec le connecteur par défaut:
<pre><code>
From FluoSQL import FluoSQL
SQL = FluoSQL(IP="192.168.1.21",user="phpmyadmin",password="6345",base="Exemple",http=False)
</code></pre>

Se connecter avec le connecteur FluoSQL(http):
<pre><code>
From FluoSQL import FluoSQL
SQL = FluoSQL(IP="192.168.1.21",user="phpmyadmin",password="6345",base="Exemple",http=True)
</code></pre>

Se deconnecter:
<pre><code>
SQL.db_close()
</code></pre>


Un simple select:
id>2
<pre><code>
SQL.make_simple_request(type_request = "select", selected_row="*", values="", selected_from="Auth", WHERE={'id>':2}, mode=0, set_current=False, inc=False)
</code></pre>
id = 1
<pre><code>
SQL.make_simple_request(type_request = "select", selected_row="*", values="", selected_from="Auth", WHERE={'id':1}, mode=0, set_current=False, inc=False)
</code></pre>
Mode : 0 ----> fetchall (dict)
Mode : 1 ----> fetchone (dict)
Mode : -1 ---> fetch element


Retourner la reponse:
<pre><code>
SQL.get_reponse(mode=1)
</code></pre>
Mode : 0 ----> fetchall (dict)
Mode : 1 ----> fetchone (dict)
Mode : -1 ---> fetch element

Pour fabriquer une requete custom:
<pre><code>
SQL.set_request(request,mode=0)
</code></pre>
Mode : 0 ----> fetchall (dict)
Mode : 1 ----> fetchone (dict)
Mode : -1 ---> fetch element


Pour envoyer une requete:
<pre><code>
SQL.send_request()
即将到来:SQLIT3服务器的一个例子(SQLIT3没有在线连接器,但我打算制作一个连接器)
如果需要的话,请与我联系。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何在jetty请求日志中添加milliscond字段?   java在使用Scanner类从文件读取信息时遇到问题   为什么。类不适用于泛型类型?   SQLite插入上的java空指针异常   java能告诉我们Guava缓存是在禁用统计数据的情况下构建的吗?   java在应用程序中使用常量   java无法使用AutoIT和Selenium Webdriver在所需位置/文件夹保存图像   java如何在jtable中更新jprogress栏   java是比较给定日期和当前日期(在给定时区中没有时间段)的最佳方法   安卓代码中的java错误   java无法访问实体类中的字段   java如何在tomcat中处理三个JDBC连接池?   java无法使用Spring Security保护AngularJS页面   如何在没有TCP/IP协议栈的情况下用Java发送以太帧