插入查询以在数据库中添加值

时间:2014-02-03 07:46:32

标签: mysql sql insert special-characters mysql-real-escape-string

我的数据库表结构是

mysql> desc webhotel.`first`;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| one   | varchar(45) | NO   | PRI | NULL    |       |
+-------+-------------+------+-----+---------+-------+
1 row in set (0.19 sec)

我想添加('Harshal')作为一个

的字段值
mysql> select * from webhotel.`first`;
+-------------+
| one         |
+-------------+
| ('Harshal') |
+-------------+    
1 row in set (0.00 sec)

我想要这个输出

我的问题是我不知道如何将包含单引号的字符串插入数据库。我可以使用IDE来完成它,但我想要一个插入查询。

4 个答案:

答案 0 :(得分:0)

你在找这个吗?

INSERT INTO first (one) VALUES ('(''Harshal'')');
                                  ^^       ^^

结果:

|         ONE |
|-------------|
| ('Harshal') |

这是 SQLFiddle 演示

答案 1 :(得分:0)

如果值包含单引号,则可以在MySQL中使用双引号输入字符串:

INSERT INTO first (one)
VALUES ("('Harshal')");

或者你可以逃避引号:

INSERT INTO first (one)
VALUES ('(\'Harshal\')');

答案 2 :(得分:0)

取决于您使用的服务器端软件,您应该查看“预备语句”。这是PHP的链接,它提供了易于遵循的代码。而另一方在技术上有所回应,创建了准备好的陈述来专门解决这个问题,并有助于减轻其他答案给你的一些问题。

答案 3 :(得分:-3)

以下是您可以使用插入查询的两种方法。

INSERT into tablename values ('colValue1', 'colValue2')

INSERT into tablename (`colname1`, `colname2`) values ('colValue1', 'colValue2')

访问http://www.w3schools.com/sql/sql_insert.asp了解更多sql教程