9

我有一个包含 4 个字段的表格:

id, int(11), auto increment email, varchar(32) pass, varchar(32) date_created, date

我的问题是我的查询应该是什么样子?我的意思是我不需要将第一个值插入 id 因为它是自动递增的,但我必须插入所有值..

4

4 回答 4

13

首先,我希望您使用的是 PreparedStatements。

假设您有一个名为 conn 的 Connection 对象和两个字符串电子邮件和密码...

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();
于 2012-12-20T20:48:46.357 回答
6

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

INSERT INTO table_name(email, pass, date_created) VALUES(?, ?, ?)
于 2012-12-20T20:43:01.160 回答
2

您可以插入格式

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

所以例如

INSERT INTO Test_Table (email, pass, data_created) VALUES ('john@blah.com', 'pass', to_date(string, format))
于 2012-12-20T20:47:51.120 回答
0

使用参数tsql- ; (最好在参数中传递值而不是作为字符串)

Insert into [YourTableName] (email, pass, date_created) 
values (@email, @pass, @date_created)
于 2012-12-20T20:46:02.487 回答