PythonはTencentCloudデータベースTDSQL-C(以前のCynosDB)に接続します
1.接続手順
1.PyMySQLライブラリをインストールします2.Tencent
Cloud TDSQL-C(以前のCynosDB)クラスターの詳細でクラスター接続の外部ネットワークアドレスを開きます
3.コード部分、5つの部分を入力する必要があります。アドレスとポートポート番号は、2番目のステップが開かれた後に表示されるクラスター接続の外部ネットワークアドレスです。次の形式「xxxxxxxxxxxxxxxxx.com:xxxxx」と同様に、コロンの前がホストアドレスで、後ろがポート番号です。アカウントパスワード。これは3番目のステップのアカウントパスワードであり、遅延は使用されるルートアカウントです。
コードは次のように表示されます。
import pymysql as mysql
######连接数据库
mydb = mysql.connect(
host="sh-cynosdbmysql-grp-09q11w48.sql.tencentcdb.com", # 数据库主机地址
port=xxxxx, # 端口号
user="xxxx", # 数据库用户名
passwd="xxxx", # 数据库密码
database="xxxx" # 选择一个数据库
)
mycursor = mydb.cursor()
######新建一个表######
try:
mycursor.execute("CREATE TABLE sites (name VARCHAR(255), url VARCHAR(255))")
except:
print("已经存在这个表了")
mycursor.execute("SHOW TABLES")
for x in mycursor:
print(x)
'''主键设置'''
# mycursor.execute("ALTER TABLE sites ADD COLUMN id INT AUTO_INCREMENT PRIMARY KEY")
'''插入数据'''
sql = "INSERT INTO sites (name, url) VALUES (%s, %s)"
val = ("RUNOOB", "https://www.runoob.com")
mycursor.execute(sql, val)
mydb.commit() # 数据表内容有更新,必须使用到该语句
print(mycursor.rowcount, "记录插入成功。",mycursor.lastrowid)
'''批量插入'''
sql = "INSERT INTO sites (name, url) VALUES (%s, %s)"
val = [
('Google', 'https://www.google.com'),
('Github', 'https://www.github.com'),
('Taobao', 'https://www.taobao.com'),
('stackoverflow', 'https://www.stackoverflow.com/')
]
mycursor.executemany(sql, val)
mydb.commit() # 数据表内容有更新,必须使用到该语句
print(mycursor.rowcount, "记录插入成功。",mycursor.lastrowid)
mycursor.execute("SELECT * FROM sites")
myresult = mycursor.fetchall() # fetchall() 获取所有记录
for x in myresult:
print(x)
'''读取指定的字段数据'''
mycursor.execute("SELECT name, url FROM sites")
myresult = mycursor.fetchall()
for x in myresult:
print(x)
'''删除记录'''
sql = "DELETE FROM sites WHERE name = 'stackoverflow'"
mycursor.execute(sql)
mydb.commit()
print(mycursor.rowcount, " 条记录删除")