将“libmysql.dll”复制到apache的bin目录下。然后重启,观察error.log,如果错误消失,那恭喜了。
另:网上资料也有说将““libmysql.dll””“php_mysql.dll”复制到windows/system32的。
private void tables_SelectedIndexChanged(object sender, System.EventArgs e)
{
//这个data应该是一个全局变量。之前定义过。否则这里应该是DataTable data= new DataTable()
data = new DataTable()
//定义一个读取数据库的适配器da。这个da应该也是全局变量。
//查询语句是:"SELECT * FROM " + tables.SelectedItem.ToString()
//conn是已经定义好的数据库连接。
da = new MySqlDataAdapter("SELECT * FROM " + tables.SelectedItem.ToString(), conn )
//定义读取数据库的命令
//使用MySqlCommandBuilder可以根据select语句,自动生成带有Insert语句的InsertCommand等
cb = new MySqlCommandBuilder( da ) // 此处必须有,否则无法更新
//根据适配器da的查询语句的内容,把结果写入数据表data中
da.Fill( data )
//把dataGrid的数据源设为data,这样dataGrid中就可以显示data中的内容了
dataGrid.DataSource = data
}
DataTable dt = new DataTable()using (MySqlConnection con = new MySqlConnection())
{
con.ConnectionString = "Data Source=127.0.0.1Initial Catalog=mysqlUser ID=rootpassword="
con.Open()
string query = string.Format("select id ,name ,image from AAA")
using (MySqlCommand cmd = new MySqlCommand(query, con))
{
dt.Load(cmd.ExecuteReader())
}
}
dt.Columns.Add("图片",System.Type.GetType("System.Byte[]"))
DataTable dt2 = dt.Clone()
foreach (DataRow item in dt.Rows)
{
DataRow dr = dt2.NewRow()
dr[0] = item[0]
dr[1] = item[1]
dr[2] = item[2]
using (FileStream fs = new FileStream(item[2].ToString(), FileMode.Open))//根据路径取得图片
{
using (BinaryReader br = new BinaryReader(fs))
{
dr["图片"] = br.ReadBytes((int)fs.Length)
}
}
dt2.Rows.Add(dr)
}
dataGridView1.DataSource = dt2
dataGridView1.Columns["图片"].DisplayIndex = 0
dataGridView1.Columns["id"].DisplayIndex = 1
dataGridView1.Columns["name"].DisplayIndex = 2
dataGridView1.Columns["image"].Visible = false
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)