L'insertion de valeurs de la variable dans SQL Server à l'aide de Java
Jusqu'à présent j'ai été en mesure d'insérer des données dans ma table SQL seulement quand je déclarer les valeurs à l'intérieur de la executedUpdate déclaration. Ce que je voulais savoir si il y a moyen que je peux transmettre ces valeurs que les variables que je vais déclarer en tant que paramètres dans la méthode d'exécution comme suit:
public void updateSQL(String name, String dnsName, String ipV4, String ipV6, int statusCode)
{
try
{
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
Connection connection = DriverManager.getConnection("jdbc:sqlserver://servername;database=databasename;integratedSecurity=true");
System.out.println("Database Name: " + connection.getMetaData().getDatabaseProductName());
Statement statement = connection.createStatement();
statement.executeUpdate("INSERT INTO ComputerStatus(Name, DNSName, IPAddressV4, IPAddressV6, StatusCodeID)" + "VALUES(@Name, @DNSName, @IPAddressV4, @IPAddressV6, @StatusCodeID)");
System.out.println("Data Inserted");
ResultSet resultSet = statement.executeQuery("SELECT Name FROM ComputerStatus");
while(resultSet.next())
{
System.out.println("Computer Name: " + resultSet.getString("Name"));
}
connection.close();
}
catch (Exception e)
{
e.printStackTrace();
System.err.println("Problem Connecting!");
}
}
J'ai essayé plusieurs choses mais pas de chance jusqu'à présent. Quelqu'un sait si cela peut être fait?
Vous devez vous connecter pour publier un commentaire.
Vous pouvez utiliser
PreparedStatement
au lieu deStatement
.À l'aide de cette façon, vous éviter d'injection SQL.
stmt.executeUpdate()
iciOnt un coup d'oeil ici :
cette va vous aider à comprendre.