java - 更新我的数据库后更改我的程序?

标签 java mysql sql sql-insert

抱歉,如果我的问题不具体或者之前已经回答过。我尝试寻找它并寻找更好的询问方式,但这是最准确的方式。

我用 Java 开发了一个程序,我在其中按以下方式将新行插入到我的数据库中:

INSERT INTO table_name VALUES (?,?,?)

问题是我在程序的很多部分都有这个查询,现在我决定在我的表中添加第四列。我是否必须用程序中的新问号更新每个查询?如果我不这样做,它就会崩溃。

处理这些情况的最佳方法是什么?

最佳答案

是的。

您需要添加额外的 ?(参数占位符),因为您正在使用 implicit INSERT 语句。这意味着您没有指定要插入值的表的列名。

INSERT INTO table_name VALUES (?,?,?)
// the server assumes that you are inserting values for all
// columns in your table
// if you fail to add value on one column. an exception will be thrown

下次您创建 INSERT 语句时,请确保在其上指定列名,这样当您通过添加额外列来更改表时,您不会更新所有占位符。

INSERT INTO table_name (Col1, col2, col3) VALUES (?,?,?)
// the server knows that you are inserting values for a specific column

关于java - 更新我的数据库后更改我的程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14249134/

相关文章:

php - MySql 连接两个表且不重复

sql - 涉及三个不同表的 SELECT 语句

java - 将文件上传到 Blob 存储时,Google App Engine 和自定义域出现 CORS 问题

java - 使用 Spring MVC 从数据库获取数据以显示在下拉列表中,例如国家、州、城市

mysql - 避免第二次询问 mysql root 密码 (bash)

php - 使用 AJAX 检索 JSON 数据

javascript - 如何使用 node-postgres 将多行正确插入 PG?

php - WordPress 查询根据自定义表获取帖子

java - java Swing 中可以修改图像的颜色吗?

java - jscrollpane 有拖尾图像