【发布时间】:2018-11-30 14:43:45
【问题描述】:
我在 Oracle 中插入一行。但问题是我想在 companyname 列中插入逗号,由于插入语句而失败。
想知道是否可以使用以下插入命令添加逗号或撇号?
string id=1;
string orgnr = "123123";
comanyname = "Test,company";
string sql =
string.Format("INSERT INTO VENDORS(ID, ORGNR, COMPANYNAME) " +
"VALUES({0}, '{1}', '{2}')", id, orgnr, companyname);
update = new OracleCommand(sql, connection);
update.Connection.Open();
update.ExecuteNonQuery();
update.Connection.Close();
【问题讨论】:
-
还可以了解prepared Statements:stackoverflow.com/questions/11070434/…
-
@Jens:嗯,参数化查询比预准备语句更多。但是,是的,避免将值直接放在 SQL 中是前进的方向。
-
还可以了解SQL Injection。
-
@Jens - 在公司名称中使用逗号并非试图存储 CSV 的正当理由,许多公司在“Inc.”之前都有一个逗号。或其他。
-
@Jens, before inc,如 'Monsters, Inc.'