在Python中编写SQL语句,你可以使用以下几种方法:
1. 使用占位符和参数化查询:
python
import pymysql
连接数据库
conn = pymysql.connect(host='localhost', user='root', password='root', db='test', charset='utf8')
cursor = conn.cursor()
SQL语句,使用占位符
sql = "SELECT FLAG from TTRD_AUTH_USER where account = %s and account1 = %s"
data = ('example_account', 'example_account1')
cursor.execute(sql, data)
获取结果
results = cursor.fetchall()
关闭连接
cursor.close()
conn.close()
2. 使用字符串拼接:
python
SQL语句,使用字符串拼接
sql = "SELECT {}, {} FROM {}".format('name', 'age', 'employees')
print(sql)
3. 使用ORM框架(如SQLAlchemy):
python
from sqlalchemy import create_engine, Column, Integer, String
from sqlalchemy.ext.declarative import declarative_base
Base = declarative_base()
class User(Base):
__tablename__ = 'users'
id = Column(Integer, primary_key=True)
name = Column(String)
age = Column(Integer)
创建表
engine = create_engine('sqlite:///example.db')
Base.metadata.create_all(engine)
插入数据
new_user = User(name='John Doe', age=30)
engine.execute(User.__table__.insert().values(new_user.__dict__))
4. 使用条件判断动态生成SQL语句:
python
def generate_select_query(table, columns=None, condition=None):
query = "SELECT "
if columns:
query += ", ".join(columns)
query += " FROM " + table
if condition:
query += " WHERE " + condition
return query
示例使用
table_name = 'employees'
selected_columns = ['name', 'age', 'salary']
query = generate_select_query(table_name, selected_columns, 'age > 30')
print(query)
请根据你的具体需求选择合适的方法。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://sigusoft.com/bj/59887.html