2012-12-20 67 views
6

我有一個表有4個領域:的Java SQL插入

ID,INT(11),自動increament電子郵件,VARCHAR(32)通過,VARCHAR(32) DATE_CREATED,日期

我的問題是我的查詢應該如何? 我的意思是我不需要插入第一個值到id,因爲它是自動增量,但我必須插入所有值。

回答

6

在SQL中,您可以指定在INSERT語句中要設置的列:

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

使用參數-tsql; (更好的傳遞值參數,而不是字符串)

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

您可以在格式插入

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

所以對於例如

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

首先,我希望你使用PreparedStatements。

假設你有一個連接命名對象連接,然後兩個字符串的電子郵件和密碼...

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();