String in Datenbank einfügen

Hallo , ich habe eine kleine Sorge. Ich dieses String in meine Tabelle einfügen. ja ich weiß ich kann dieses direkt in meinen Befehl reinfügen. Das Ziel ist später in meinem Projetkt solche Kontruktion zu verwenden.
meine Code ist Folgendes.
Java:
    String N="11.0.0.0";
        connectDriver("com.microsoft.sqlserver.jdbc.SQLServerDriver");
        connectdb("jdbc:sqlserver://NB4417;database=Unit;","sa","HBm12340");
        insertdb("INSERT INTO Adresse VALUES (N)")
wenn ich diese Code compiliere kriege ich folgenden Fehler.
Exception in thread "main" java.lang.Error: Unresolved compilation problems:
The left-hand side of an assignment must be a variable
Syntax error on token "'N'", invalid AssignmentOperator

at pattern.Observer.test.main(test.java:63)
Bitte Hilfe: Danke im Voraus für Ihren Beitrag.
 
Was steht denn an der Stelle (Zeile 63 in test.java)?
nicht nur das Ende meines Programmes.
und ich habe eine bisschen gebastelt
Java:
package pattern.Observer;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;

public class test {
    private static ResultSetMetaData res ;
    private static Connection conn=null;
    private static ResultSet resultat =null;
//Connect to Database
    
public static void connectdb(String url,String user,String pass) {

    try {
            conn= DriverManager.getConnection(url,user,pass);
            System.out.println("connection ok");
        
        }catch (SQLException e) {
            System.out.println("problem with the connection");
        }
        
    }
//Connect to driver
public static void connectDriver(String url) {
try {
    Class.forName(url);
    }catch (ClassNotFoundException ex) {
        System.out.println("Problem with drivers " +ex);
    }
}
// insert date in database
public static void  insertdb(String sql) {
    try {
        
    Statement st=conn.createStatement();
    resultat=st.executeQuery(sql);
    
}
    catch (SQLException e) {
        
        System.out.println("Problem with execution  :  " +e);
        
    }
}
///Main
    public static void main(String[] args) {
        String N="11.0.0.0";
        connectDriver("com.microsoft.sqlserver.jdbc.SQLServerDriver");
        connectdb("jdbc:sqlserver://NB4417;database=Unit;","sa","HBm12340");
        insertdb("INSERT INTO Adresse VALUES" +"("+ N +")");
    }

}
und bekomme ich diesen Fehler.
connection ok


Problem with execution : com.microsoft.sqlserver.jdbc.SQLServerException: Falsche Syntax in der Nähe von '.0'.
 
Also Dein Query ist sinnloss ein INSERT hat folgende Syntax

INSERT INTO tablename (columnname1, columname2,...) VALUES (value1, value 2, ...)
 
Also Dein Query ist sinnloss ein INSERT hat folgende Syntax

INSERT INTO tablename (columnname1, columname2,...) VALUES (value1, value 2, ...)
ich wollte wissen , ob es möglich ist dieses String aufzurufen. anstatt zum Beispiel dies INSERT INTO Adresse (IP) VAlue ('10.0.0.0'). Da ich ich schon String S = "10.0.0.0" definiert habe.
 
Java:
String ip = "11.0.0.0";
try(PreparedStatement stmt = conn.prepareStatement("INSERT INTO Adresse VALUES (?)")) {
    stmt.setString(1, ip);
    stmt.executeUpdate();
}
(Achtung: direkt hierein aus dem Kopf geschrieben, kann also Fehler enthalten)
 
Mach auf die Column einen unique oder primary key. Dann kannst du es so lösen

Code:
INSERT INTO tablename (IP) VALUES (?) ON DUPLICATE KEY UPDATE IP = ?
 
Passende Stellenanzeigen aus deiner Region:

Neue Themen

Oben