2012-12-20 9 views
6

Mam tabelę z 4 dziedzin:java INSERT

id int (11), e-mail auto increament, varchar (32) przejdzie, varchar (32) DATE_CREATED, data

Moje pytanie brzmi, jak powinno wyglądać moje zapytanie? Chodzi mi o to, że nie muszę wstawiać pierwszej wartości do id, ponieważ jest to automatyczny przyrost, ale muszę wstawić wszystkie wartości.

Odpowiedz

6

W SQL można określić kolumny, które chcesz ustawić w oświadczeniu INSERT:

INSERT INTO table_name(email, pass, date_created) VALUES(?, ?, ?) 
0

Korzystanie z parametrów- tsql; (lepiej przekazywać wartości parametrów, a nie jako ciągi)

Insert into [YourTableName] (email, pass, date_created) 
values (@email, @pass, @date_created) 
2

Można wstawić w formacie

INSERT INTO YourTable (Your Columns) VALUES (Your Values) 

Tak na przykład

INSERT INTO Test_Table (email, pass, data_created) VALUES ('[email protected]', 'pass', to_date(string, format)) 
10

Przede wszystkim mam nadzieję, że używasz PreparedStatements.

Zakładając masz połączenie obiektu o nazwie Conn i dwa ciągi e-mail i hasło ...

PreparedStatement stmt = conn.prepareStatement("INSERT INTO table_name(email, pass, date_created) VALUES (?, ?, ?)"); 

stmt.setString(1, email); 
stmt.setString(2, password); 
stmt.setDate(3, new Date()); 

stmt.executeUpdate();