顯示具有 C# 標籤的文章。 顯示所有文章
顯示具有 C# 標籤的文章。 顯示所有文章

2014年8月15日 星期五

C# with MySQL on Ubuntu

簡單來說C# 連MySQL很簡單沒有什麼難的,網路上隨便找都有
但是今天我把MySQL灌在Ubuntu當作Server,C#怎麼連都連不上去
出現了"unable to connect to any of the specified mysql hosts"
查了一段時間發現是Server端的設定沒設好,若是MySQL灌在Local端則不會遇上這種問題,但竟然用MySQL,一定會遇到遠端登入的問題

先說說如何在Ubuntu上裝MySQL + php + apache (可以Google "Ubuntu + MySQL")
Step 1.
    apt-get install lamp-server^ 執行到一半需要設定root(二次)的密碼,這個請自行輸入
Step 2.
    apt-get install phpmyadmin -->安裝phpmyadmin,這個步驟不確定需不需要
Step 3.
    vi /etc/mysql/my.cnf 找到 "bind-address" 把它註解掉 如下圖

Step 4.
    進入phpmyadmin, 並建立一Account 步驟如下
    Privileges --> Add a new User
    User Name, Password & 權限就自行設定吧


以上就設定完了,如果連不上可以試著把Server端防火牆關掉
做完上述動作把mysql重新啟動,也可以直接Reboot

這時候C#連不上MySQL的問題就解決了
至於C#怎麼連上MySQL等下一篇再寫了
也可以Google "C# + MySQL"答案就出來,大家都大同小異




2014年2月12日 星期三

C# DataGridView, Read Cell Value

延續上一篇 C# DataGridView 連接ACCESS with SQL語法 

將database的資料連結到DataGridView後,下一個步驟當然就是對資料做Read/Wirte的動作
這一篇簡單的說明要如何Get/Read Cell的資料

可以透過DataGridView的屬性獲取資料,程式碼如下:
private void button1_Click(object sender, EventArgs e)
{
 textBox1.Text = dataGridView1.Rows[0].Cells[1].Value.ToString();
}


配合DataGridView的事件CellClick(如下圖),獲取點選的Cell資料
程式碼如下:
private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
{
 string strContent = dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString();
 MessageBox.Show(strContent);
}
Sample Code Download

C# DataGridView 連接ACCESS with SQL語法

如何使用DataGridView連接ACCESS,使用簡單的SQL語法

使用到的物件
1. DataSet
2. OleDbDataAdapter 用來填入 DataSet 並更新資料來源

變數
strDatabase:Access檔案名稱
strsql: Connection String
strTableName:要讀取的Table Name

//OLE Naming Space
using System.Data.OleDb;

namespace DataGridView
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            string strDatabase = "C:\\FileDataBase.mdb";
            string strsql = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + strDatabase;
            string strTableName="TestTable";
            DataSet ds=new DataSet();
            OleDbDataAdapter oda;
            string strDataTable = "select * from " + strTableName;
            oda = new OleDbDataAdapter(strDataTable, strsql);
            oda.Fill(ds, strTableName);
            dataGridView1.DataSource = ds.Tables[strTableName];

        }
    }
}
Sample Code Download