将字符串'india's'插入sql数据库[重复]
Posted
技术标签:
【中文标题】将字符串\'india\'s\'插入sql数据库[重复]【英文标题】:Inserting a string 'india's' into a sql database [duplicate]将字符串'india's'插入sql数据库[重复] 【发布时间】:2018-02-05 23:17:21 【问题描述】:我有一张桌子 xyz(name varchar(200)) 我想插入名称,例如 1.ramu的 2.shyam的 当我尝试使用 insert as 插入时 它抛出一个错误
quoted string not properly terminated
insert into xyz values('ramu's');
【问题讨论】:
什么数据库? pl/sql 不是 mysql。请仅使用相关标签。如果你想要一个嵌入的引号,那么你需要用两个引号 '' 来转义它 使用参数化查询或适当的转义字符。 (加倍 ' 所以insert into xyz values('ramu''s');
在这种情况下应该可以工作。)但是假设用户传入';drop table xyz;--'
而不是ramu's
会发生什么? xkcd.com/327
这个引用问题在所有 SQL 风格中都是相同的,因此该解决方案适用于 MySQL、PL/SQL、Redshift 等。
【参考方案1】:
以下内容会有所帮助
INSERT INTO Xyz VALUES('Ram''s')
对于一个单引号,放置两个单引号。
【讨论】:
以上是关于将字符串'india's'插入sql数据库[重复]的主要内容,如果未能解决你的问题,请参考以下文章
Python和SQL:用SQL的“Null”值替换DataFrame的空字符串,以将数据插入数据库中而不会出现格式错误[重复]