本文参考:https://dev.mysql.com/doc/connector-net/en/connector-net-programming-getschema.html
一种加载数据库的方法如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using System.Windows.Forms;
using MySql.Data;
using MySql.Data.MySqlClient;
namespace WindowsFormsApplication1
{
static class Program
{
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
//上面是程序已有的,下面是程序写的
MySqlConnection conn;
string myConnectionString;
myConnectionString = "server=127.0.0.1;uid=root;" +
"pwd=1234;database=student";
try
{
conn = new MySqlConnection();
conn.ConnectionString = myConnectionString;
conn.Open();
}
catch (MySqlException ex)
{
switch(ex.Number)
{
case 0:
MessageBox.Show("Cannot connect to server. Contact administrator");
break;
case 1045:
MessageBox.Show("Invalid username/password, please try again");
break;
}
}
}
}
}
获取数据库构架信息;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using MySql.Data;
using MySql.Data.MySqlClient;
using System.Data;
namespace ConsoleApplication1
{
class Program
{
private static void DisplayData(System.Data.DataTable table)
{
foreach (System.Data.DataRow row in table.Rows)
{
foreach (System.Data.DataColumn col in table.Columns)
{
Console.WriteLine("{0}={1}", col.ColumnName, row[col]);
}
Console.WriteLine("=====================");
}
}
static void Main(string[] args)
{
string connStr = "server=localhost;user=root;database=student;port=3306;password=1234;";
MySqlConnection conn = new MySqlConnection(connStr);
try
{
Console.WriteLine("Connecting to MySQL...");
conn.Open();
//GetSchema是获取数据库的相关信息;参数可谓 空,MetaDataCollections ,tables等
//CollectionName
//MetaDataCollections
//DataSourceInformation
//DataTypes
//Restrictions
//ReservedWords
//Users
//Databases
//Tables
//Columns
//StructuredTypeMembers
//Views
//ViewColumns
//ProcedureParameters
//Procedures
//ForeignKeys
//IndexColumns
//Indexes
//UserDefinedTypes
DataTable table = conn.GetSchema("Users");
DisplayData(table);
conn.Close();
}
catch (Exception ex)
{
Console.WriteLine(ex.ToString());
}
Console.WriteLine("Done.");
Console.ReadKey();
}
}
}
参数为users的运行结果是: