Python和C是两种常用的编程语言,都具有广泛的应用和使用领域。本文将从多个方面介绍Python和C在数据库开发中的应用。
一、数据库连接
数据库连接是Python和C进行数据库开发的重要环节。Python通过第三方库如`mysql.connector`、`pyodbc`等来连接各种数据库,而C通过相应的数据库驱动程序来实现。
Python连接MySQL数据库的示例代码如下:
import mysql.connector
# 建立连接
cnx = mysql.connector.connect(user='username', password='password', host='localhost', database='database_name')
# 创建游标
cursor = cnx.cursor()
# 执行SQL查询
query = "SELECT * FROM table_name"
cursor.execute(query)
# 获取查询结果
result = cursor.fetchall()
# 打印查询结果
for row in result:
print(row)
# 关闭游标和连接
cursor.close()
cnx.close()
C连接MySQL数据库的示例代码如下:
#include <mysql/mysql.h>
#include <stdio.h>
int main() {
MYSQL *conn;
MYSQL_RES *res;
MYSQL_ROW row;
// 建立连接
conn = mysql_init(NULL);
mysql_real_connect(conn, "localhost", "username", "password", "database_name", 0, NULL, 0);
// 执行SQL查询
mysql_query(conn, "SELECT * FROM table_name");
res = mysql_use_result(conn);
// 获取查询结果
while ((row = mysql_fetch_row(res)) != NULL) {
printf("%s\n", row[0]);
}
// 关闭连接
mysql_free_result(res);
mysql_close(conn);
return 0;
}
二、数据库操作
Python和C都具有对数据库进行增、删、改、查等操作的能力。
Python操作MySQL数据库的示例代码如下:
import mysql.connector
# 建立连接
cnx = mysql.connector.connect(user='username', password='password', host='localhost', database='database_name')
# 创建游标
cursor = cnx.cursor()
# 插入数据
query = "INSERT INTO table_name (column1, column2) VALUES (%s, %s)"
data = ('value1', 'value2')
cursor.execute(query, data)
cnx.commit()
# 更新数据
query = "UPDATE table_name SET column1 = %s WHERE column2 = %s"
data = ('new_value', 'value2')
cursor.execute(query, data)
cnx.commit()
# 删除数据
query = "DELETE FROM table_name WHERE column1 = %s"
data = ('value1',)
cursor.execute(query, data)
cnx.commit()
# 关闭游标和连接
cursor.close()
cnx.close()
C操作MySQL数据库的示例代码如下:
#include <mysql/mysql.h>
#include <stdio.h>
int main() {
MYSQL *conn;
MYSQL_RES *res;
MYSQL_ROW row;
// 建立连接
conn = mysql_init(NULL);
mysql_real_connect(conn, "localhost", "username", "password", "database_name", 0, NULL, 0);
// 插入数据
mysql_query(conn, "INSERT INTO table_name (column1, column2) VALUES ('value1', 'value2')");
// 更新数据
mysql_query(conn, "UPDATE table_name SET column1 = 'new_value' WHERE column2 = 'value2'");
// 删除数据
mysql_query(conn, "DELETE FROM table_name WHERE column1 = 'value1'");
// 关闭连接
mysql_close(conn);
return 0;
}
三、数据查询
Python和C都可以执行查询语句来获取数据库中的数据。
Python查询MySQL数据库的示例代码如下:
import mysql.connector
# 建立连接
cnx = mysql.connector.connect(user='username', password='password', host='localhost', database='database_name')
# 创建游标
cursor = cnx.cursor()
# 执行SQL查询
query = "SELECT * FROM table_name"
cursor.execute(query)
# 获取查询结果
result = cursor.fetchall()
# 打印查询结果
for row in result:
print(row)
# 关闭游标和连接
cursor.close()
cnx.close()
C查询MySQL数据库的示例代码如下:
#include <mysql/mysql.h>
#include <stdio.h>
int main() {
MYSQL *conn;
MYSQL_RES *res;
MYSQL_ROW row;
// 建立连接
conn = mysql_init(NULL);
mysql_real_connect(conn, "localhost", "username", "password", "database_name", 0, NULL, 0);
// 执行SQL查询
mysql_query(conn, "SELECT * FROM table_name");
res = mysql_use_result(conn);
// 获取查询结果
while ((row = mysql_fetch_row(res)) != NULL) {
printf("%s\n", row[0]);
}
// 关闭连接
mysql_free_result(res);
mysql_close(conn);
return 0;
}
通过以上示例代码,我们可以看到Python和C在连接、操作和查询数据库方面的应用。
原创文章,作者:GAPL,如若转载,请注明出处:https://www.beidandianzhu.com/g/1717.html