Uživatelské nástroje

Nástroje pro tento web


mongodb

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Následující verze
Předchozí verze
mongodb [2018/03/04 12:36] – vytvořeno djbuldogmongodb [2025/08/28 10:09] (aktuální) – upraveno mimo DokuWiki 127.0.0.1
Řádek 4: Řádek 4:
   * data má ve formátu JSON (na disku binární BSON)   * data má ve formátu JSON (na disku binární BSON)
  
-  * instalace+  * databáze obsahuje kolekce (něco jako tabulky v SQL) 
 +  * v databázi se nemusí nic vytvářet dopředu, vytvoří se při prvním zápisu 
 + 
 +  * základní operace 
 +    * find() - vyhledá data podle zadaných kritérií (pokud prázdné, tak vše) 
 +    * insert() - vloží záznam 
 +    * update() - aktualizuje záznam (upsert flag určuje, zda se má případně vytvořit nový) 
 +    * remove() - odstraní záznam 
 + 
 + 
 +===== Instalace ===== 
 + 
 +  * databáze se instaluje jednoduše 
 + 
 +<code> 
 +apt-get install mongodb 
 +</code> 
 + 
 +  * obdobně podpora v python 
 <code> <code>
-apt-get install php-mongodb 
 apt-get install python-pymongo apt-get install python-pymongo
 </code> </code>
  
-  * databáze obsahuje kolekce (něco jako tabulky v SQL+  * u PHP je to složitější 
-  * v databázi se nemusí nic vytvářet dopředuvytvoří se i prvním zápisu+  * existuje starší verze php rozšíření [[https://pecl.php.net/package/mongo|mongo]] a novější [[https://pecl.php.net/package/mongodb|mongodb]] 
 +    * starší verze se inicializovala třídou ''MongoClient()'', novější používá ''MongoDB\Client'' 
 +  * obě se mají instalovat přes [[https://pecl.php.net|php pecl]] 
 +    * php rozšíření jsem našel v Debian balíčku (php-mongodb)ale byla tam moc stará verze, takže jsem musel použít pecl 
 +  * mongodb rozšíření je pouze low level API (narozdíl od staršího), je třeba navíc nainstalovat [[http://php.net/manual/en/mongodb.tutorial.library.php|high level knihovnu]] es [[https://getcomposer.org|composer]]
  
-  * find +<code> 
-  * insert +apt-get install composer 
-  * update +apt-get install php-pear # obsahuje pecl 
-  * remove+apt-get install php-dev  # obsahuje phpize 
 +pecl install mongodb 
 +ln -s /etc/php/7.0/mods-available/mongodb.ini /etc/php/7.0/cli/conf.d/20-mongodb.ini 
 +ln -s /etc/php/7.0/mods-available/mongodb.ini /etc/php/7.0/apache2/conf.d/20-mongodb.ini 
 +systemctl restart apache2 
 +</code> 
 + 
 +<code> 
 +cd /var/www/<PROJEKT>/ 
 +composer require mongodb/mongodb 
 +</code>
  
 ===== Konzole ===== ===== Konzole =====
Řádek 74: Řádek 106:
  
 ===== Python ===== ===== Python =====
 +
 +  * http://api.mongodb.com/python/current/tutorial.html
  
 <code python> <code python>
Řádek 81: Řádek 115:
 db = dbc.testdb db = dbc.testdb
  
-db.people.find()+db.people.find({},{"_id":0}) 
 +</code> 
 + 
 +===== PHP ===== 
 + 
 +  * https://docs.mongodb.com/php-library/current/tutorial/ 
 + 
 +<code php> 
 +require_once 'vendor/autoload.php'; // include Composer's autoloader 
 + 
 +$dbc = new MongoDB\Client("mongodb://localhost:27017"); 
 +$db = $dbc->testdb; 
 + 
 +$people = array(); 
 +$res = $db->people->find([],[ "projection" => [ "_id" => 0 ]]); 
 +foreach ($res as $entry) { 
 +   $people[] = $entry; 
 +
 + 
 +echo json_encode($people);
 </code> </code>
  
mongodb.1520163378.txt.gz · Poslední úprava: (upraveno mimo DokuWiki)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki