我有一个维护用户数据的 bean 类:
所以我已经创建了一个这样的 postgresql DB 表:
StringBuffer sqlStr = new StringBuffer();
sqlStr.append("CREATE TABLE Users ("
user_id bigint,
username character varying NOT NULL,
biography character varying NOT NULL
);
&我想创建一个查询命令并将我的字符串数据注入其中:
sqlStr.append("INSERT INTO users(" +
"user_id, username, biography)" +
"\n\tVALUES (" + user.getID()+ "," + user.getUsername() + "," + user.getBiography()+");";
我的问题是,例如,如果来自我的方法的数据有引号或双引号或“,”假设用户传记是这样的,我的命令将出错:
您好,我是 X 先生,是一名“IT 专业人士”...
如果我运行我的应用程序并将输出保存在一个名为 query.sql 的文件中,我将无法使用它,因为我的查询命令由于引号和双引号而出错,如下所示:
INSERT INTO users(userid, username, biography)
VALUES(2, 'Mehdi', 'hello, I'm Mr X an "IT Pro" ..');
我该如何解决这个问题?