python 在sql语句中使用%s,%d,%f说明
时间: 2023-05-15 10:02:34 浏览: 606
Python 作为一种面向对象的高级编程语言,常被用来与数据库进行交互。当使用 Python 与关系型数据库进行交互时,我们经常会用到 SQL 语句。在 SQL 语句中,我们会经常用到 `%s`, `%d`, `%f` 等占位符,来标识我们需要在 SQL 语句中插入的值的类型和格式。
其中 `%s` 表示字符串型,表示需要在 SQL 语句中插入一个字符串类型的值,例如:
```python
cursor.execute("SELECT * FROM mytable WHERE name=%s", ("John",))
```
其中 `name=%s` 表示在 SQL 语句中实际上是一个字符串类型的表达式,其中 `%s` 将被后面传入的参数 `"John"` 所替代。
`%d` 表示数字型,用于表示需要在 SQL 语句中插入一个整型值,例如:
```python
cursor.execute("INSERT INTO mytable (id, age) VALUES (%d, %d)", (10, 30))
```
其中 `%d` 将被传入的参数 `10` 和 `30` 所替代,它们都是整型值。
`%f` 表示浮点型,用于表示需要在 SQL 语句中插入一个浮点型值,例如:
```python
cursor.execute("INSERT INTO mytable (id, score) VALUES (%d, %f)", (10, 98.5))
```
其中 `%f` 将被传入的参数 `98.5` 所替代,它是一个浮点型值。
总之,Python 中的 `%s`, `%d`, `%f` 是为了使程序员能够更方便地使用 SQL 语句,快速将需要的数据插入到数据库中,并不需要使用具体的数据类型转换函数,同时也可以避免 SQL 注入的风险。