mirror of
https://github.com/mariadb-corporation/mariadb-connector-python.git
synced 2025-08-04 08:04:45 +00:00
375 lines
26 KiB
HTML
375 lines
26 KiB
HTML
|
||
<!DOCTYPE html>
|
||
|
||
<html>
|
||
<head>
|
||
<meta charset="utf-8" />
|
||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||
<title>Basic usage — MariaDB Connector/Python 1.1.0b3-beta documentation</title>
|
||
<link rel="stylesheet" type="text/css" href="_static/pygments.css" />
|
||
<link rel="stylesheet" type="text/css" href="_static/classic.css" />
|
||
|
||
<script data-url_root="./" id="documentation_options" src="_static/documentation_options.js"></script>
|
||
<script src="_static/jquery.js"></script>
|
||
<script src="_static/underscore.js"></script>
|
||
<script src="_static/doctools.js"></script>
|
||
|
||
<link rel="index" title="Index" href="genindex.html" />
|
||
<link rel="search" title="Search" href="search.html" />
|
||
<link rel="next" title="Connection pooling" href="pooling.html" />
|
||
<link rel="prev" title="Installation" href="install.html" />
|
||
</head><body>
|
||
<div class="related" role="navigation" aria-label="related navigation">
|
||
<h3>Navigation</h3>
|
||
<ul>
|
||
<li class="right" style="margin-right: 10px">
|
||
<a href="genindex.html" title="General Index"
|
||
accesskey="I">index</a></li>
|
||
<li class="right" >
|
||
<a href="py-modindex.html" title="Python Module Index"
|
||
>modules</a> |</li>
|
||
<li class="right" >
|
||
<a href="pooling.html" title="Connection pooling"
|
||
accesskey="N">next</a> |</li>
|
||
<li class="right" >
|
||
<a href="install.html" title="Installation"
|
||
accesskey="P">previous</a> |</li>
|
||
<li class="nav-item nav-item-0"><a href="index.html">MariaDB Connector/Python 1.1.0b3-beta documentation</a> »</li>
|
||
<li class="nav-item nav-item-this"><a href="">Basic usage</a></li>
|
||
</ul>
|
||
</div>
|
||
|
||
<div class="document">
|
||
<div class="documentwrapper">
|
||
<div class="bodywrapper">
|
||
<div class="body" role="main">
|
||
|
||
<div class="section" id="basic-usage">
|
||
<h1>Basic usage<a class="headerlink" href="#basic-usage" title="Permalink to this headline">¶</a></h1>
|
||
<div class="section" id="connecting">
|
||
<h2>Connecting<a class="headerlink" href="#connecting" title="Permalink to this headline">¶</a></h2>
|
||
<p>The basic usage of MariaDB Connector/Python is similar to other database drivers which
|
||
implement DB API 2.0 (PEP-249).</p>
|
||
<p>Below is a simple example of a typical use of MariaDB Connector/Python</p>
|
||
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">mariadb</span>
|
||
|
||
<span class="c1"># connection parameters</span>
|
||
<span class="n">conn_params</span><span class="o">=</span> <span class="p">{</span>
|
||
<span class="s2">"user"</span> <span class="p">:</span> <span class="s2">"example_user"</span><span class="p">,</span>
|
||
<span class="s2">"password"</span> <span class="p">:</span> <span class="s2">"GHbe_Su3B8"</span><span class="p">,</span>
|
||
<span class="s2">"host"</span> <span class="p">:</span> <span class="s2">"localhost"</span><span class="p">,</span>
|
||
<span class="s2">"database"</span> <span class="p">:</span> <span class="s2">"test"</span>
|
||
<span class="p">}</span>
|
||
|
||
<span class="c1"># Establish a connection</span>
|
||
<span class="n">connection</span><span class="o">=</span> <span class="n">mariadb</span><span class="o">.</span><span class="n">connect</span><span class="p">(</span><span class="o">**</span><span class="n">conn_params</span><span class="p">)</span>
|
||
|
||
<span class="n">cursor</span><span class="o">=</span> <span class="n">connection</span><span class="o">.</span><span class="n">cursor</span><span class="p">()</span>
|
||
|
||
<span class="c1"># Populate countries table with some data</span>
|
||
<span class="n">cursor</span><span class="o">.</span><span class="n">execute</span><span class="p">(</span><span class="s2">"INSERT INTO countries(name, country_code, capital) VALUES (?,?,?)"</span><span class="p">,</span>
|
||
<span class="p">(</span><span class="s2">"Germany"</span><span class="p">,</span> <span class="s2">"GER"</span><span class="p">,</span> <span class="s2">"Berlin"</span><span class="p">))</span>
|
||
|
||
<span class="c1"># retrieve data</span>
|
||
<span class="n">cursor</span><span class="o">.</span><span class="n">execute</span><span class="p">(</span><span class="s2">"SELECT name, country_code, capital FROM countries"</span><span class="p">)</span>
|
||
|
||
<span class="c1"># print content</span>
|
||
<span class="n">row</span><span class="o">=</span> <span class="n">cursor</span><span class="o">.</span><span class="n">fetchone</span><span class="p">()</span>
|
||
<span class="nb">print</span><span class="p">(</span><span class="o">*</span><span class="n">row</span><span class="p">,</span> <span class="n">sep</span><span class="o">=</span><span class="s1">' '</span><span class="p">)</span>
|
||
|
||
<span class="c1"># free resources</span>
|
||
<span class="n">cursor</span><span class="o">.</span><span class="n">close</span><span class="p">()</span>
|
||
<span class="n">connection</span><span class="o">.</span><span class="n">close</span><span class="p">()</span>
|
||
</pre></div>
|
||
</div>
|
||
<p><em>Output</em>:</p>
|
||
<div class="highlight-none notranslate"><div class="highlight"><pre><span></span>Germany GER Berlin
|
||
</pre></div>
|
||
</div>
|
||
<p>Before MariaDB Connector/Python can be used, the MariaDB Connector/Python module must be
|
||
imported.
|
||
Once the mariadb module is loaded, a connection to a database server will be established
|
||
using the method <a class="reference internal" href="module.html#mariadb.connect" title="mariadb.connect"><code class="xref py py-func docutils literal notranslate"><span class="pre">connect()</span></code></a>.</p>
|
||
<p>In order to be able to communicate with the database server in the form of SQL statements,
|
||
a cursor object must be created first.</p>
|
||
<p>The method name cursor may be a little misleading: unlike a cursor in MariaDB that can only
|
||
read and return data, a cursor in Python can be used for all types of SQL statements.</p>
|
||
<p>After creating the table mytest, everything is ready to insert some data: Column values
|
||
that are to be inserted in the database are identified by place holders, the data is then passed in
|
||
the form of a tuple as a second parameter.</p>
|
||
<p>After creating and populating the table mytest the cursor will be used to retrieve the data.</p>
|
||
<p>At the end we free resources and close cursor and connection.</p>
|
||
</div>
|
||
<div class="section" id="passing-parameters-to-sql-statements">
|
||
<h2>Passing parameters to SQL statements<a class="headerlink" href="#passing-parameters-to-sql-statements" title="Permalink to this headline">¶</a></h2>
|
||
<p>As shown in previous example, passing parameters to SQL statements happens by using placeholders in the statement. By default
|
||
MariaDB Connector/Python uses a question mark as a placeholder, for compatibility reason also %s placeholders are supported.
|
||
Passing parameters is supported in methods <code class="xref py py-func docutils literal notranslate"><span class="pre">execute()</span></code> and <code class="xref py py-func docutils literal notranslate"><span class="pre">executemany()</span></code> of the cursor class.</p>
|
||
<p>Since MariaDB Connector/Python uses binary protocol, escaping strings or binary data like in other database drivers is not required.</p>
|
||
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">mariadb</span>
|
||
|
||
<span class="c1"># connection parameters</span>
|
||
<span class="n">conn_params</span><span class="o">=</span> <span class="p">{</span>
|
||
<span class="s2">"user"</span> <span class="p">:</span> <span class="s2">"example_user"</span><span class="p">,</span>
|
||
<span class="s2">"password"</span> <span class="p">:</span> <span class="s2">"GHbe_Su3B8"</span><span class="p">,</span>
|
||
<span class="s2">"host"</span> <span class="p">:</span> <span class="s2">"localhost"</span><span class="p">,</span>
|
||
<span class="s2">"database"</span> <span class="p">:</span> <span class="s2">"test"</span>
|
||
<span class="p">}</span>
|
||
|
||
<span class="c1"># Establish a connection</span>
|
||
<span class="n">connection</span><span class="o">=</span> <span class="n">mariadb</span><span class="o">.</span><span class="n">connect</span><span class="p">(</span><span class="o">**</span><span class="n">conn_params</span><span class="p">)</span>
|
||
|
||
<span class="n">cursor</span><span class="o">=</span> <span class="n">connection</span><span class="o">.</span><span class="n">cursor</span><span class="p">()</span>
|
||
|
||
<span class="n">sql</span><span class="o">=</span> <span class="s2">"INSERT INTO countries (name, country_code, capital) VALUES (?,?,?)"</span>
|
||
<span class="n">data</span><span class="o">=</span> <span class="p">(</span><span class="s2">"Germany"</span><span class="p">,</span> <span class="s2">"GER"</span><span class="p">,</span> <span class="s2">"Berlin"</span><span class="p">)</span>
|
||
<span class="n">cursor</span><span class="o">.</span><span class="n">execute</span><span class="p">(</span><span class="n">sql</span><span class="p">,</span> <span class="n">data</span><span class="p">)</span>
|
||
|
||
<span class="n">connection</span><span class="o">.</span><span class="n">commit</span><span class="p">()</span>
|
||
|
||
<span class="c1"># delete last entry</span>
|
||
<span class="n">sql</span><span class="o">=</span> <span class="s2">"DELETE FROM countries WHERE country_code=?"</span>
|
||
<span class="n">data</span><span class="o">=</span> <span class="p">(</span><span class="s2">"GER"</span><span class="p">,)</span>
|
||
<span class="n">cursor</span><span class="o">.</span><span class="n">execute</span><span class="p">(</span><span class="n">sql</span><span class="p">,</span> <span class="n">data</span><span class="p">)</span>
|
||
|
||
<span class="n">connection</span><span class="o">.</span><span class="n">commit</span><span class="p">()</span>
|
||
|
||
<span class="n">cursor</span><span class="o">.</span><span class="n">close</span><span class="p">()</span>
|
||
<span class="n">connection</span><span class="o">.</span><span class="n">close</span><span class="p">()</span>
|
||
</pre></div>
|
||
</div>
|
||
<p>Often there is a requirement to update, delete or insert multiple records. This could be done be using <code class="xref py py-func docutils literal notranslate"><span class="pre">execute()</span></code> in
|
||
a loop, but much more effective is using the <code class="xref py py-func docutils literal notranslate"><span class="pre">executemany()</span></code> method, especially when using a MariaDB database server 10.2 and above, which supports a special “bulk” protocol. The executemany() works similar to execute(), but accepts data as a list of tuples:</p>
|
||
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">mariadb</span>
|
||
|
||
<span class="c1"># connection parameters</span>
|
||
<span class="n">conn_params</span><span class="o">=</span> <span class="p">{</span>
|
||
<span class="s2">"user"</span> <span class="p">:</span> <span class="s2">"example_user"</span><span class="p">,</span>
|
||
<span class="s2">"password"</span> <span class="p">:</span> <span class="s2">"GHbe_Su3B8"</span><span class="p">,</span>
|
||
<span class="s2">"host"</span> <span class="p">:</span> <span class="s2">"localhost"</span><span class="p">,</span>
|
||
<span class="s2">"database"</span> <span class="p">:</span> <span class="s2">"test"</span>
|
||
<span class="p">}</span>
|
||
|
||
<span class="c1"># Establish a connection</span>
|
||
<span class="n">connection</span><span class="o">=</span> <span class="n">mariadb</span><span class="o">.</span><span class="n">connect</span><span class="p">(</span><span class="o">**</span><span class="n">conn_params</span><span class="p">)</span>
|
||
|
||
<span class="n">cursor</span><span class="o">=</span> <span class="n">connection</span><span class="o">.</span><span class="n">cursor</span><span class="p">()</span>
|
||
<span class="n">sql</span><span class="o">=</span> <span class="s2">"INSERT INTO countries (name, country_code, capital) VALUES (?,?,?)"</span>
|
||
|
||
<span class="n">data</span><span class="o">=</span> <span class="p">[(</span><span class="s2">"Ireland"</span><span class="p">,</span> <span class="s2">"IE"</span><span class="p">,</span> <span class="s2">"Dublin"</span><span class="p">),</span>
|
||
<span class="p">(</span><span class="s2">"Italy"</span><span class="p">,</span> <span class="s2">"IT"</span><span class="p">,</span> <span class="s2">"Rome"</span><span class="p">),</span>
|
||
<span class="p">(</span><span class="s2">"Malaysia"</span><span class="p">,</span> <span class="s2">"MY"</span><span class="p">,</span> <span class="s2">"Kuala Lumpur"</span><span class="p">),</span>
|
||
<span class="p">(</span><span class="s2">"France"</span><span class="p">,</span> <span class="s2">"FR"</span><span class="p">,</span> <span class="s2">"Paris"</span><span class="p">),</span>
|
||
<span class="p">(</span><span class="s2">"Iceland"</span><span class="p">,</span> <span class="s2">"IS"</span><span class="p">,</span> <span class="s2">"Reykjavik"</span><span class="p">),</span>
|
||
<span class="p">(</span><span class="s2">"Nepal"</span><span class="p">,</span> <span class="s2">"NP"</span><span class="p">,</span> <span class="s2">"Kathmandu"</span><span class="p">)]</span>
|
||
|
||
<span class="c1"># insert data</span>
|
||
<span class="n">cursor</span><span class="o">.</span><span class="n">executemany</span><span class="p">(</span><span class="n">sql</span><span class="p">,</span> <span class="n">data</span><span class="p">)</span>
|
||
|
||
<span class="c1"># Since autocommit is off by default, we need to commit last transaction</span>
|
||
<span class="n">connection</span><span class="o">.</span><span class="n">commit</span><span class="p">()</span>
|
||
|
||
<span class="c1"># Instead of 3 letter country-code, we inserted 2 letter country code, so</span>
|
||
<span class="c1"># let's fix this mistake by updating data</span>
|
||
<span class="n">sql</span><span class="o">=</span> <span class="s2">"UPDATE countries SET country_code=? WHERE name=?"</span>
|
||
<span class="n">data</span><span class="o">=</span> <span class="p">[(</span><span class="s2">"Ireland"</span><span class="p">,</span> <span class="s2">"IRL"</span><span class="p">),</span>
|
||
<span class="p">(</span><span class="s2">"Italy"</span><span class="p">,</span> <span class="s2">"ITA"</span><span class="p">),</span>
|
||
<span class="p">(</span><span class="s2">"Malaysia"</span><span class="p">,</span> <span class="s2">"MYS"</span><span class="p">),</span>
|
||
<span class="p">(</span><span class="s2">"France"</span><span class="p">,</span> <span class="s2">"FRA"</span><span class="p">),</span>
|
||
<span class="p">(</span><span class="s2">"Iceland"</span><span class="p">,</span> <span class="s2">"ISL"</span><span class="p">),</span>
|
||
<span class="p">(</span><span class="s2">"Nepal"</span><span class="p">,</span> <span class="s2">"NPL"</span><span class="p">)]</span>
|
||
<span class="n">cursor</span><span class="o">.</span><span class="n">executemany</span><span class="p">(</span><span class="n">sql</span><span class="p">,</span> <span class="n">data</span><span class="p">)</span>
|
||
|
||
<span class="c1"># Now let's delete all non European countries</span>
|
||
<span class="n">sql</span><span class="o">=</span> <span class="s2">"DELETE FROM countries WHERE name=?"</span>
|
||
<span class="n">data</span><span class="o">=</span> <span class="p">[(</span><span class="s2">"Malaysia"</span><span class="p">,),</span> <span class="p">(</span><span class="s2">"Nepal"</span><span class="p">,)]</span>
|
||
<span class="n">cursor</span><span class="o">.</span><span class="n">executemany</span><span class="p">(</span><span class="n">sql</span><span class="p">,</span> <span class="n">data</span><span class="p">)</span>
|
||
|
||
<span class="c1"># by default autocommit is off, so we need to commit</span>
|
||
<span class="c1"># our transactions</span>
|
||
<span class="n">connection</span><span class="o">.</span><span class="n">commit</span><span class="p">()</span>
|
||
|
||
<span class="c1"># free resources</span>
|
||
<span class="n">cursor</span><span class="o">.</span><span class="n">close</span><span class="p">()</span>
|
||
<span class="n">connection</span><span class="o">.</span><span class="n">close</span><span class="p">()</span>
|
||
</pre></div>
|
||
</div>
|
||
<p>When using executemany(), there are a few restrictions:
|
||
- All tuples must have the same types as in first tuple. E.g. the parameter [(1),(1.0)] or [(1),(None)] are invalid.
|
||
- Special values like None or column default value needs to be indicated by an indicator.</p>
|
||
<div class="section" id="using-indicators">
|
||
<h3>Using indicators<a class="headerlink" href="#using-indicators" title="Permalink to this headline">¶</a></h3>
|
||
<p>In certain situations, for example when inserting default values or NULL, special indicators must be used.</p>
|
||
<div class="highlight-python notranslate"><div class="highlight"><pre><span></span><span class="kn">import</span> <span class="nn">mariadb</span>
|
||
<span class="kn">from</span> <span class="nn">mariadb.constants</span> <span class="kn">import</span> <span class="o">*</span>
|
||
|
||
<span class="kn">import</span> <span class="nn">mariadb</span>
|
||
|
||
<span class="c1"># connection parameters</span>
|
||
<span class="n">conn_params</span><span class="o">=</span> <span class="p">{</span>
|
||
<span class="s2">"user"</span> <span class="p">:</span> <span class="s2">"example_user"</span><span class="p">,</span>
|
||
<span class="s2">"password"</span> <span class="p">:</span> <span class="s2">"GHbe_Su3B8"</span><span class="p">,</span>
|
||
<span class="s2">"host"</span> <span class="p">:</span> <span class="s2">"localhost"</span><span class="p">,</span>
|
||
<span class="s2">"database"</span> <span class="p">:</span> <span class="s2">"test"</span>
|
||
<span class="p">}</span>
|
||
|
||
<span class="c1"># Establish a connection</span>
|
||
<span class="n">connection</span><span class="o">=</span> <span class="n">mariadb</span><span class="o">.</span><span class="n">connect</span><span class="p">(</span><span class="o">**</span><span class="n">conn_params</span><span class="p">)</span>
|
||
|
||
<span class="n">cursor</span><span class="o">=</span> <span class="n">connection</span><span class="o">.</span><span class="n">cursor</span><span class="p">()</span>
|
||
|
||
<span class="n">cursor</span><span class="o">.</span><span class="n">execute</span><span class="p">(</span><span class="s2">"DROP TABLE IF EXISTS cakes"</span><span class="p">)</span>
|
||
<span class="n">cursor</span><span class="o">.</span><span class="n">execute</span><span class="p">(</span><span class="s2">"CREATE TABLE cakes(id int, cake varchar(100), price decimal(10,2) default 1.99)"</span><span class="p">)</span>
|
||
|
||
<span class="n">sql</span><span class="o">=</span> <span class="s2">"INSERT INTO cakes (id, cake, price) VALUES (?,?,?)"</span>
|
||
<span class="n">data</span><span class="o">=</span> <span class="p">[(</span><span class="mi">1</span><span class="p">,</span> <span class="s2">"Cherry Cake"</span><span class="p">,</span> <span class="mf">2.10</span><span class="p">),</span> <span class="p">(</span><span class="mi">2</span><span class="p">,</span> <span class="s2">"Apple Cake"</span><span class="p">,</span> <span class="n">INDICATOR</span><span class="o">.</span><span class="n">DEFAULT</span><span class="p">)]</span>
|
||
<span class="n">cursor</span><span class="o">.</span><span class="n">executemany</span><span class="p">(</span><span class="n">sql</span><span class="p">,</span> <span class="n">data</span><span class="p">)</span>
|
||
</pre></div>
|
||
</div>
|
||
<dl class="simple">
|
||
<dt>Beside the default indicator which inserts the default value of 1.99, the following indicators are supported:</dt><dd><ul class="simple">
|
||
<li><p>INDICATOR.IGNORE: Ignores the value (only update commands)</p></li>
|
||
<li><p>INDICATOR.NULL: Value is NULL</p></li>
|
||
<li><p>INDICATOR.IGNORE_ROW: Don’t update or insert row</p></li>
|
||
</ul>
|
||
</dd>
|
||
</dl>
|
||
<div class="admonition note">
|
||
<p class="admonition-title">Note</p>
|
||
<ul class="simple">
|
||
<li><p>Mixing different parameter styles is not supported and will raise an exception</p></li>
|
||
<li><p>The Python string operator % must not be used. The <code class="xref py py-func docutils literal notranslate"><span class="pre">execute()</span></code> method accepts a tuple or list as second parameter.</p></li>
|
||
<li><p>Placeholders between quotation marks are interpreted as a string.</p></li>
|
||
<li><p>Parameters for <code class="xref py py-func docutils literal notranslate"><span class="pre">execute()</span></code> needs to be passed as a tuple. If only one parameter will be passed, tuple needs to contain a comma at the end.</p></li>
|
||
<li><p>Parameters for <code class="xref py py-func docutils literal notranslate"><span class="pre">executemany()</span></code> need to be passed as a list of tuples.</p></li>
|
||
</ul>
|
||
</div>
|
||
<div class="section" id="supported-data-types">
|
||
<h4>Supported Data types<a class="headerlink" href="#supported-data-types" title="Permalink to this headline">¶</a></h4>
|
||
<p>Several standard python types are converted into SQL types and returned as Python objects when a statement is executed.</p>
|
||
<table class="docutils align-left" id="id1">
|
||
<caption><span class="caption-text">Supported Data Types</span><a class="headerlink" href="#id1" title="Permalink to this table">¶</a></caption>
|
||
<colgroup>
|
||
<col style="width: 50%" />
|
||
<col style="width: 50%" />
|
||
</colgroup>
|
||
<thead>
|
||
<tr class="row-odd"><th class="head"><p>Python type</p></th>
|
||
<th class="head"><p>SQL type</p></th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr class="row-even"><td><p>None</p></td>
|
||
<td><p>NULL</p></td>
|
||
</tr>
|
||
<tr class="row-odd"><td><p>Bool</p></td>
|
||
<td><p>TINYINT</p></td>
|
||
</tr>
|
||
<tr class="row-even"><td><p>Float, Double</p></td>
|
||
<td><p>DOUBLE</p></td>
|
||
</tr>
|
||
<tr class="row-odd"><td><p>Decimal</p></td>
|
||
<td><p>DECIMAL</p></td>
|
||
</tr>
|
||
<tr class="row-even"><td><p>Long</p></td>
|
||
<td><p>TINYINT, SMALLINT, INT, BIGINT</p></td>
|
||
</tr>
|
||
<tr class="row-odd"><td><p>String</p></td>
|
||
<td><p>VARCHAR, VARSTRING, TEXT</p></td>
|
||
</tr>
|
||
<tr class="row-even"><td><p>ByteArray, Bytes</p></td>
|
||
<td><p>TINYBLOB, MEDIUMBLOB, BLOB, LONGBLOB</p></td>
|
||
</tr>
|
||
<tr class="row-odd"><td><p>DateTime</p></td>
|
||
<td><p>DATETIME</p></td>
|
||
</tr>
|
||
<tr class="row-even"><td><p>Date</p></td>
|
||
<td><p>DATE</p></td>
|
||
</tr>
|
||
<tr class="row-odd"><td><p>Time</p></td>
|
||
<td><p>TIME</p></td>
|
||
</tr>
|
||
<tr class="row-even"><td><p>Timestamp</p></td>
|
||
<td><p>TIMESTAMP</p></td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<div class="clearer"></div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="sphinxsidebar" role="navigation" aria-label="main navigation">
|
||
<div class="sphinxsidebarwrapper">
|
||
<h3><a href="index.html">Table of Contents</a></h3>
|
||
<ul>
|
||
<li><a class="reference internal" href="#">Basic usage</a><ul>
|
||
<li><a class="reference internal" href="#connecting">Connecting</a></li>
|
||
<li><a class="reference internal" href="#passing-parameters-to-sql-statements">Passing parameters to SQL statements</a><ul>
|
||
<li><a class="reference internal" href="#using-indicators">Using indicators</a><ul>
|
||
<li><a class="reference internal" href="#supported-data-types">Supported Data types</a></li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
</li>
|
||
</ul>
|
||
|
||
<h4>Previous topic</h4>
|
||
<p class="topless"><a href="install.html"
|
||
title="previous chapter">Installation</a></p>
|
||
<h4>Next topic</h4>
|
||
<p class="topless"><a href="pooling.html"
|
||
title="next chapter">Connection pooling</a></p>
|
||
<div role="note" aria-label="source link">
|
||
<h3>This Page</h3>
|
||
<ul class="this-page-menu">
|
||
<li><a href="_sources/usage.rst.txt"
|
||
rel="nofollow">Show Source</a></li>
|
||
</ul>
|
||
</div>
|
||
<div id="searchbox" style="display: none" role="search">
|
||
<h3 id="searchlabel">Quick search</h3>
|
||
<div class="searchformwrapper">
|
||
<form class="search" action="search.html" method="get">
|
||
<input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
|
||
<input type="submit" value="Go" />
|
||
</form>
|
||
</div>
|
||
</div>
|
||
<script>$('#searchbox').show(0);</script>
|
||
</div>
|
||
</div>
|
||
<div class="clearer"></div>
|
||
</div>
|
||
<div class="related" role="navigation" aria-label="related navigation">
|
||
<h3>Navigation</h3>
|
||
<ul>
|
||
<li class="right" style="margin-right: 10px">
|
||
<a href="genindex.html" title="General Index"
|
||
>index</a></li>
|
||
<li class="right" >
|
||
<a href="py-modindex.html" title="Python Module Index"
|
||
>modules</a> |</li>
|
||
<li class="right" >
|
||
<a href="pooling.html" title="Connection pooling"
|
||
>next</a> |</li>
|
||
<li class="right" >
|
||
<a href="install.html" title="Installation"
|
||
>previous</a> |</li>
|
||
<li class="nav-item nav-item-0"><a href="index.html">MariaDB Connector/Python 1.1.0b3-beta documentation</a> »</li>
|
||
<li class="nav-item nav-item-this"><a href="">Basic usage</a></li>
|
||
</ul>
|
||
</div>
|
||
<div class="footer" role="contentinfo">
|
||
© Copyright 2019-2021 MariaDB Corporation and Georg Richter.
|
||
Created using <a href="https://www.sphinx-doc.org/">Sphinx</a> 4.1.2.
|
||
</div>
|
||
</body>
|
||
</html> |