2009-09-09 9 views
4

Je suis en train de connecter un simple script groovy à la base de données.connexion groovy au serveur SQL

code:

import groovy.sql.Sql 
class GroovySqlExample2{ 
    static void main(String[] args) { 
    def sql = Sql.newInstance("jdbc:sqlserver://MYSERVERIP", "uname", 
      "pwd", "net.sourceforge.jtds.jdbc.Driver") 
    sql.eachRow("select * from word"){ 
     println it.spelling + " ${it.part_of_speech}" 
    } 
    } 
} 

J'ai placé jtds-1.2.3.jar dans C: \ groovy-1.6.3 \ lib mais le code ci-dessus garde se plaindre:

java.lang.ClassNotFoundException: net.sourceforge.jtds.jdbc.Driver 
+1

Bien que non lié à votre erreur voulais juste signaler que l'URL doit être jdbc: jtds: SQLServer: // MYSERVERIP, celui que vous avez inscrit est incorrect car il manque les jtds. –

Répondre

1

Assurez-vous que vous avez une variable d'environnement GROOVY_HOME définie sur c: \ groovy-1.6.3

2

Téléchargez jtds-1.2.2.jar et ajoutez la ligne ci-dessous dans votre script groovy avant de définir sql.

this.class.classLoader.rootLoader.addURL(new URL("file:/C:\\jtds-1.2.2.jar")) 
3

utilisation de raisin et mis systemClassLoader=true

@Grapes(
    @Grab(group='net.sourceforge.jtds', module='jtds', version='1.3.1') 
) 
@GrabConfig(systemClassLoader=true) 
import groovy.sql.* 
// http://jtds.sourceforge.net/faq.html#urlFormat 
def sql = Sql.newInstance("jdbc:jtds:sqlserver://MYSERVERIP", "uname", 
     "pwd", "net.sourceforge.jtds.jdbc.Driver") 
sql.eachRow("select * from word"){ 
    println it.spelling + " ${it.part_of_speech}" 
} 
+1

l'URL jdbc devrait être "jdbc: jtds: sqlserver: // MYSERVERIP", ou une exception de pilote non approprié sera levée. –

Questions connexes