Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak połączyć się z bazą danych MySQL z Clojure?

Założenie:masz już uruchomione Clojure i MySQL na swoim komputerze.

  1. sprawdź i zbuduj clojure-contrib :

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

    Umieść wynikowy clojure-contrib.jar na Twojej CLASSPATH .

  2. Pobierz MySQL Connector/J i umieść mysql-connector-java-5.1.7-bin.jar na Twojej CLASSPATH

    Być może będziesz musiał uruchomić JVM z tymi argumentami:

    -Djdbc.drivers=com.mysql.jdbc.Driver
    
  3. Określ adres URL połączenia bazy danych MySQL

    Na przykład, jeśli używasz MySQL pod MAMP wtedy adres URL, którego użyjesz w JDBC, będzie wyglądał mniej więcej tak:

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

    Adres URL jest podzielony na następujące składniki:

    • protokół:jdbc:
    • podprotokół:mysql
    • host-db:localhost
    • port-db:8889
    • nazwa użytkownika
    • hasło
  4. Utwórz ten skrypt clojure, zmodyfikuj parametry połączenia z bazą danych, aby pasowały do ​​Twojego adresu URL, zapisz jako test.clj, skompiluj i uruchom.

    (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 Ten kod został zaadaptowany z podobnego kodu napisanego przez Marka Volkmanna do dostępu do Baza danych Postgres z 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. Odpowiednik explode() do pracy z ciągami w MySQL

  2. Nieprawidłowy plik klucza w MySQL

  3. Jak połączyć się z MySQL działającym na platformie Docker z komputera hosta?

  4. mysql cte . używanie z i wstawianie ostrzega o błędzie składni

  5. Jakie zasady obowiązują przy nazywaniu kolumn mysql?