package sqlselection;
import Java.sql.Connection;
import Java.sql.DriverManager;
import Java.sql.ResultSet;
import Java.sql.Statement;
public class Sqlselection
{
public static void main(String[] args)
{
try
{
Class.forName("com.Microsoft.jdbc.sqlserver.SQLServerDriver");
String userName = "sa";
String password = "password";
String url = "jdbc:Microsoft:sqlserver://localhost:1433"+";databaseName=AdventureWorks2008R2";
Connection con = DriverManager.getConnection(url, userName, password);
Statement s1 = con.createStatement();
ResultSet rs = s1.executeQuery("SELECT TOP 1 * FROM HumanResources.Employee");
String[] result = new String[20];
if(rs!=null){
while (rs.next()){
for(int i = 0; i <result.length ;i++)
{
for(int j = 0; j <result.length;j++)
{
result[j]=rs.getString(i);
System.out.println(result[j]);
}
}
}
}
//String result = new result[20];
} catch (Exception e)
{
e.printStackTrace();
}
}
}
enter code here
Ci-dessus est mon exemple de programme pour me connecter au serveur SQL afin d'exécuter l'exemple de requête de sélection d'Eclipse.
Je reçois l'erreur ci-dessous.
Java.lang.ClassNotFoundException: com.Microsoft.jdbc.sqlserver.SQLServerDriver
at Java.net.URLClassLoader$1.run(Unknown Source)
at Java.net.URLClassLoader$1.run(Unknown Source)
at Java.security.AccessController.doPrivileged(Native Method)
at Java.net.URLClassLoader.findClass(Unknown Source)
at Java.lang.ClassLoader.loadClass(Unknown Source)
at Sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at Java.lang.ClassLoader.loadClass(Unknown Source)
at Java.lang.Class.forName0(Native Method)
at Java.lang.Class.forName(Unknown Source)
at sqlselection.Sqlselection.main(Sqlselection.Java:13)
j'ai ajouté le sqljdbc.jar, sqljdbc4.jar à la bibliothèque . Aide à résoudre ce problème
Le problème est avec Class.forName("com.Microsoft.jdbc.sqlserver.SQLServerDriver");
cette ligne. Le nom qualifié de classe est incorrect
C'est sqlserver.jdbc
pas jdbc.sqlserver
vous avez oublié d'ajouter le sqlserver.jar
dans la bibliothèque externe Eclipse
Reportez-vous au lien ci-dessous.
Il y a deux changements importants que vous devriez faire
nom du pilote en tant que "com.Microsoft.sqlserver.jdbc.SQLServerDriver"
& in URL "jdbc: sqlserver: // localhost: 1433" + "; databaseName = AdventureWorks2008R2"
Ajouter sqlserver.jar
Voici _ lien _
Comme son nom l'indique, ClassNotFoundException
en Java est une sous-classe de Java.lang.Exception
et vient lorsque Java Virtual Machine essaie de charger une classe particulière et que n'a pas trouvé la classe demandée dans classpath.
Un autre point important à propos de cette exception est qu’il s’agit d’une exception Checked et que vous devez fournir explicitement le traitement des exceptions lors de l’utilisation de méthodes qui peuvent éventuellement lancer ClassNotFoundException
en Java, en utilisant try-catch block ou en utilisant la clause throws.
public class ClassNotFoundException
extends ReflectiveOperationException
Lancé lorsqu'une application tente de charger une classe via son nom de chaîne en utilisant:
mais aucune définition de la classe avec le nom spécifié n'a pu être trouvée.
Le link a le pilote pour sqlserver
, téléchargez et ajoutez votre Eclipse
buildpath.
Faites un clic droit sur votre projet ---> Chemin de construction ----> Configurez le chemin de construction ----> Onglet Bibliothèques ---> Ajouter des fichiers JAR externes ---> (Accédez à l'emplacement où vous avez conservé le fichier JAR du pilote SQL) ---> ok
téléchargez le pilote Microsoft JDBC 4.0 pour SQL Server qui prend en charge:
SQL Server versions: 2005, 2008, 2008 R2, and 2012.
JDK version: 5.0 and 6.0.
Exécutez le programme téléchargé sqljdbc __. Exe. Il extraira les fichiers dans un répertoire spécifié (Microsoft JDBC Driver 4.0 pour SQL Server est la valeur par défaut). Vous trouverez deux fichiers jar, sqljdbc.jar (pour JDBC 3.0) et sqljdbc4.jar (pour JDBC 4.0), ainsi que des fichiers .dll et des fichiers d'aide HTML.
Placez le fichier sqljdbc4.jar sous le chemin de classe de votre application si vous utilisez JDK 4.0 ou le fichier sqljdbc4.1.jar si vous utilisez JDK 6.0 ou une version ultérieure.