关于#mysql#的问题,如何解决?(语言-python)

a="我是a"
b="我是b"
#1
print(a+","+b)
#2
print("{},{}".format(a,b))
#3
print(f"{a},{b}")

以上代码输出结果完全一样,但是为什么使用pymysql的时候代码必须这样写:

#前面已经定义ID,NAME,INTERLINKAGE
sql = f"insert into resource(id,name,interlinkage) values({ID},'{NAME}','{INTERLINKAGE}')"

而不是这样

#前面已经定义ID,NAME,INTERLINKAGE
sql = "insert into resource(id,name,interlinkage) values(ID,'NAME','INTERLINKAGE')"

总结:
问题1:

a="我是a"
b="我是b"
#1
print(a+","+b)
#2
print("{},{}".format(a,b))
#3
print(f"{a},{b}")

123的区别

问题2:
为什么使用pymysql的时候代码必须这样写:

#前面已经定义ID,NAME,INTERLINKAGE
sql = f"insert into resource(id,name,interlinkage) values({ID},'{NAME}','{INTERLINKAGE}')"

而不是这样

#前面已经定义ID,NAME,INTERLINKAGE
sql = "insert into resource(id,name,interlinkage) values(ID,'NAME','INTERLINKAGE')"

用{ID}...而不是ID,这个{}是为了防止sql 注入的