Mysql
 sql >> база данни >  >> RDS >> Mysql

Как да се свържа с MySQL база данни от Clojure?

Предположение:вече имате Clojure и MySQL, работещи на вашата машина.

  1. проверете и изградете clojure-contrib :

    git clone git://github.com/richhickey/clojure-contrib.git
    cd clojure-contrib
    build
    

    Поставете получения clojure-contrib.jar на вашия CLASSPATH .

  2. Изтеглете MySQL Connector/J и поставете mysql-connector-java-5.1.7-bin.jar на вашия CLASSPATH

    Може да се наложи да стартирате вашата JVM с тези аргументи:

    -Djdbc.drivers=com.mysql.jdbc.Driver
    
  3. Определете URL адреса на връзката на вашата MySQL база данни

    Например, ако използвате MySQL под MAMP тогава URL адресът, който бихте използвали в JDBC, ще изглежда така:

    conn = DriverManager.getConnection
            ("jdbc:mysql://localhost:8889/db_name?user=root&password=root")
    

    URL адресът е разделен на следните компоненти:

    • протокол:jdbc:
    • подпротокол:mysql
    • db-host:localhost
    • db-порт:8889
    • потребителско име
    • парола
  4. Направете този скрипт clojure, променете параметрите на връзката към базата данни, за да съответстват на вашия URL, запазете като test.clj, компилирайте и стартирайте.

    (use 'clojure.contrib.sql)               ;;' satisfy prettify

      (let [db-host "localhost"
            db-port 8889
            db-name "db_name"]
        (def db {:classname "com.mysql.jdbc.Driver"
               :subprotocol "mysql"
               :subname (str "//" db-host ":" db-port "/" db-name)
               :user "root"
               :password "root"})
        (with-connection db
          (with-query-results rs ["select * from languages"]
            (dorun (map #(println (:language :iso_code %)) rs)))))

            ; rs will be a sequence of maps,
            ; one for each record in the result set.

NB Този код е адаптиран от подобен код, написан от Mark Volkmann за access a. База данни Postgres от Clojure



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Rails:Принудително принуди празен низ към NULL в базата данни

  2. Цени на хотелските стаи за различните сезони

  3. Как принуждавате mysql LIKE да бъде чувствителен към главни букви?

  4. Извикване на функция-член execute() на булев вход

  5. SQL Server 2005 има ли еквивалент на типа данни ENUM на MySql?