- 最后登录
- 2017-5-15
- 注册时间
- 2012-3-1
- 阅读权限
- 90
- 积分
- 32973
- 纳金币
- 32806
- 精华
- 12
|
using UnityEngine;
using System;
using System.Collections;
using System.Data;
using MySql.Data.MySqlClient;
public class CMySql : MonoBehaviour {
// Global variables
public static MySqlConnection dbConnection;//Just like MyConn.conn in StoryTools before
static string host = "localhost";//Mysql1001.webweb.com
static string port_="";//4306
static string id = "root";//98ceef_dx15_1
static string pwd = "mysql!";//yusiyuanlove
static string database = "test";//db_98ceef_dx15_1
static string result = "";
private string strCommand = "SELECT * FROM test1";//mac_uc_members
public static DataSet MyObj;
void OnGUI()
{
host = GUILayout.TextField( host, 200, GUILayout.Width(200));
id = GUILayout.TextField( id, 200, GUILayout.Width(200));
pwd = GUILayout.TextField( pwd, 200, GUILayout.Width(200));
if(GUILayout.Button("Test"))
{
string connectionString = string.Format("Server = {0}; Database = {2}; User ID = {3}; Password = {4};",host,port_,database,id,pwd);//Port={1};
openSqlConnection(connectionString);
MyObj = GetDataSet(strCommand);
}
GUILayout.Label(result);
}
// On quit
public static void OnApplicationQuit() {
closeSqlConnection();
}
// Connect to database
private static void openSqlConnection(string connectionString) {
dbConnection = new MySqlConnection(connectionString);
dbConnection.Open();
result = dbConnection.ServerVersion;
//Debug.Log("Connected to database."+result);
}
// Disconnect from database
private static void closeSqlConnection() {
dbConnection.Close();
dbConnection = null;
//Debug.Log("Disconnected from database."+result);
}
// MySQL Query
public static void doQuery(string sqlQuery) {
IDbCommand dbCommand = dbConnection.CreateCommand();
dbCommand.CommandText = sqlQuery;
IDataReader reader = dbCommand.ExecuteReader();
reader.Close();
reader = null;
dbCommand.Dispose();
dbCommand = null;
}
#region Get DataSet
public DataSet GetDataSet(string sqlString)
{
//string sql = UnicodeAndANSI.UnicodeAndANSI.UnicodeToUtf8(sqlString);
DataSet ds = new DataSet();
try
{
MySqlDataAdapter da = new MySqlDataAdapter(sqlString, dbConnection);
da.Fill(ds);
}
catch (Exception ee)
{
throw new Exception("SQL:" + sqlString + "
" + ee.Message.ToString());
}
return ds;
}
#endregion
}
复制代码
另一段代码:
using UnityEngine;
using System;
using System.Collections;
using System.Data;
public class DataBaseTest : MonoBehaviour {
public GUISkin myGUISkin = new GUISkin();
string strID = "";
string strName = "";
string strSex = "";
int Index = 1;
// Use this for initialization
void Start () {
}
void OnGUI()
{
GUI.skin = myGUISkin;
if (GUI.Button(new Rect(100,320,100,100),"Click Me"))
{
foreach(DataRow dr in CMySql.MyObj.Tables[0].Rows)
{
if (Index.ToString() == dr["id"].ToString())
{
strID = dr["id"].ToString();
strName = dr["name"].ToString();
strSex = dr["age"].ToString();
break;
}
}
Index++;
if(Index > 5)
{
Index = 1;
}
}
GUI.Label(new Rect(320,100,150,70),"DataBaseTest");
GUI.Label(new Rect(300,210,150,70),strID);
GUI.Label(new Rect(300,320,150,70),strName);
GUI.Label(new Rect(300,430,150,70),strSex);
}
}
复制代码
这是连接本地数据库的代码。 |
|