繁体   English   中英

在 'localhost:3306' 与 MySQL 服务器的连接丢失,系统错误:连接不可用

[英]Lost connection to MySQL server at 'localhost:3306', system error: Connection not available

servlet2.py

import mysql.connector
from mysql.connector import Error
from mysql.connector import errorcode

try:     
    connection = mysql.connector.connect(host='localhost',
                                         database='*project',
                                         user='*****',
                                         password='*****',
                                         )
    print("Connection Established")
    
except mysql.connector.Error as e:
    if e.errno == errorcode.ER_ACCESS_DENIED_ERROR:
        print('Somethign is wrong with username or password')
    elif e.errno == errorcode.ER_BAD_DB_ERROR:
        print('Database does not exist')
    else:
        print(e)
    
c = connection.cursor()

def insertSQL(user):
    mySql_insert_query = "INSERT INTO python_project.test (Name) VALUES (?)", (user)
    print("user:", user)
    c.execute(mySql_insert_query)
    print(c.rowcount, "Record inserted successfully into test table")
   

def username():
    user = input("Please Enter Your Name: " )
    insertSQL(user)

测试脚本.py

import servlet2
servlet2.username()

但是,一旦我输入名称,我就能够建立到数据库的连接。 它会连接失败并提示此错误。

OperationalError: Lost connection to MySQL server at 'localhost:3306', system error: Connection not available.
import mysql.connector
from mysql.connector import Error
from mysql.connector import errorcode

try:     
    connection = mysql.connector.connect(host='127.0.0.1',
                                         database='python_project',
                                         user='root',
                                         password='catdog123',
                                         )
    print("Connection Established")
    #cursor = connection.cursor()
    #cursor.execute("""INSERT INTO test (Name) VALUES ('harry')""")
    #connection.commit()
    #cursor.close()
   
    
except mysql.connector.Error as e:
    if e.errno == errorcode.ER_ACCESS_DENIED_ERROR:
        print('Somethign is wrong with username or password')
    elif e.errno == errorcode.ER_BAD_DB_ERROR:
        print('Database does not exist')
    else:
        print(e)
    
c = connection.cursor()


def insertSQL(user):

    #mySql_insert_query = """INSERT INTO test (Name) VALUES (?)""", user
    print("user:", user)
    print(c.rowcount, "Record inserted successfully into test table")
    
    c.execute("""INSERT INTO test (Name) VALUES ('{}')""".format(user))
    connection.commit()
    
 
    

def username():
    user = input("Please Enter Your Name:" )
    insertSQL(user)
    

我设法通过将插入语句 VALUES 更改为 ('{}').format(user) 来解决它

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM