易语言是一种面向过程的编程语言,它简单易学,适合初学者入门。在使用易语言操作MySQL数据库时,可以通过ODBC(Open Database Connectivity,开放数据库连接)技术来实现。
首先,需要在系统中配置好ODBC数据源,具体步骤如下:
接下来,可以使用易语言的相关函数来操作MySQL数据库,以下是一个简单的例子:
Define GDID=New GUID
GetText 0,0,200,30,"请输入姓名","请输入姓名"
a$=GetString(0)
GetText 0,0,200,30,"请输入年龄","请输入年龄"
b$=GetString(0)
dim as sql_handle sqlConnId=DllCreate('odbc32.dll','SQLAllocHandle')
dim as sql_handle sqlStmtId=DllCreate('odbc32.dll','SQLAllocHandle')
dim as int ret
ret=DllCall(sqlConnId,'long','SQLAllocHandle','int',1,'long',0,'long',@sqlConnId)
ret=DllCall(sqlConnId,'long','SQLSetEnvAttr','long',@sqlConnId,'long',200,'ptr',0,'long',0)
ret=DllCall(sqlConnId,'long','SQLSetConnectAttr','long',@sqlConnId,'long',102,'long',0,'long',0)
ret=DllCall(sqlConnId,'long','SQLDriverConnect','long',@sqlConnId,'long',0,'ptr',cast("DSN=YOUR_DSN_NAME;UID=YOUR_USERNAME;PWD=YOUR_PASSWORD"),'long',-3,'long',0,'long',0)
ret=DllCall(sqlStmtId,'long','SQLAllocHandle','int',2,'long',@sqlConnId,'long',@sqlStmtId)
ret=DllCall(sqlStmtId,'long','SQLExecDirectA','long',@sqlStmtId,'ptr',cast("CREATE TABLE IF NOT EXISTS person (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), age INT)"),'long',len("CREATE TABLE IF NOT EXISTS person (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), age INT)"))
dim as long sqlCode
ret=DllCall(sqlStmtId,'long','SQLPrepareA','long',@sqlStmtId,'ptr',cast("INSERT INTO person (name, age) VALUES (?, ?)"),'long',len("INSERT INTO person (name, age) VALUES (?, ?)"))
ret=DllCall(sqlStmtId,'long','SQLBindParameter','long',@sqlStmtId,'long',1,'int',1,'long',0,'int',0,'int',0,@GDID,'long',-1)
ret=DllCall(sqlStmtId,'long','SQLBindParameter','long',@sqlStmtId,'long',2,'str',1,'long',0,'int',0,'int',0,cast(a$),'long',len(a$))
ret=DllCall(sqlStmtId,'long','SQLBindParameter','long',@sqlStmtId,'long',3,'int',1,'long',0,'int',0,'int',0,@b$,'long',len(b$))
ret=DllCall(sqlStmtId,'long','SQLExecute','long',@sqlStmtId)
ret=DllCall(sqlConnId,'long','SQLFreeHandle','int',2,'long',@sqlStmtId)
ret=DllCall(sqlConnId,'long','SQLDisconnect','long',@sqlConnId)
ret=DllCall(sqlConnId,'long','SQLFreeHandle','int',1,'long',@sqlConnId)
MessageBox "数据插入成功!", 0, "提示"
上述例子中,通过ODBC技术连接到MySQL数据库,并创建了一个名为"person"的表。然后,通过SQL语句插入用户输入的姓名和年龄数据。最后,释放相关资源并显示插入成功的提示框。
需要注意的是,上述代码中的"YOUR_DSN_NAME"、"YOUR_USERNAME"、"YOUR_PASSWORD"需要替换为实际的数据源名称、用户名和密码。
这只是一个使用易语言操作MySQL数据库的简单示例,实际使用中可能涉及更多的操作和处理。如需深入了解和学习易语言操作数据库的更多知识,建议参考相关的易语言编程教程或手册。
领取专属 10元无门槛券
手把手带您无忧上云