0

可能重复:
WCF 如何使用数据库 phpmyadmin 中的数据?

我想问一下我应该在 WCF 上写的连接字符串。我的数据库是 phpmyadmin 的主机。我应该如何编写连接字符串?如果数据库使用的是在我的计算机上运行的 microsoft access 或 sqlserver,我已经完成了。现在,我很好奇我的数据库是否位于 phpmyadmin。

老实说,我昨天已经在这个论坛上问过这个问题。我非常感谢谁回答了我的问题,但我认为这不是答案。对不起,我很愚蠢,不明白你昨天说的话。如果你生气了,你不需要回答。谢谢。

超出主题,这是我的 WCF 代码。

public class Jobs : IJobs
{
    SqlConnection conn = new SqlConnection("Data Source=127.0.0.1; Initial Catalog=mydatabase;User=ael;Password=123456;Integrated Security=False");
    
    SqlDataAdapter da;
    DataSet ds;
    Data data = new Data();
    List<Data> listdata = new List<Data>();

    public DataSet Details()
    {
        conn.Open();
        ds = new DataSet();
        da = new SqlDataAdapter("Select * from data", conn);
        da.Fill(ds);
        conn.Close();
        return ds;
    }

    public Data GetDetails(int jobid)
    {
        conn.Open();
        ds = new DataSet();
        da = new SqlDataAdapter("Select * from data where id = " + jobid, conn);
        da.Fill(ds);
        if (ds.Tables[0].Rows.Count > 0)
        {
            data.userid = Convert.ToInt32(ds.Tables[0].Rows[0][0]);
            data.firstname = ds.Tables[0].Rows[0][1].ToString();
            data.lastname = ds.Tables[0].Rows[0][2].ToString();
            data.location = ds.Tables[0].Rows[0][3].ToString();
            ds.Dispose();
        }
        conn.Close();
        return data;
    }

    public List<Data> GetAllDetails()
    {
        conn.Open();
        ds = new DataSet();
        da = new SqlDataAdapter("Select * from data", conn);
        da.Fill(ds);
        foreach (DataRow dr in ds.Tables[0].Rows)
        {
            listdata.Add(
                new Data
                {
                    userid = Convert.ToInt32(dr[0]),
                    firstname = dr[1].ToString(),
                    lastname = dr[2].ToString(),
                    location = dr[3].ToString()
                }
            );
        }
        conn.Close();
        return listdata;
    }
}

这是wpf

public partial class MainWindow : Window
{
    public MainWindow()
    {
        InitializeComponent();
    }

    private void button1_Click(object sender, RoutedEventArgs e)
    {
        if (textbox1.Text.Trim().Length != 0)
        {
            ServiceReference1.JobsClient jc = new ServiceReference1.JobsClient();
            var x = jc.GetDetails(Convert.ToInt32(textbox1.Text));
            if (x.userid != 0)
            {
                textbox2.Text = x.userid.ToString();
                textbox3.Text = x.firstname;
                textbox4.Text = x.lastname;
                textbox5.Text = x.location;
            }
            else
                MessageBox.Show("RecordNotFound ... !", "Message", MessageBoxButton.OK, MessageBoxImage.Information);
        }
        else
            MessageBox.Show("EnterID", "Message", MessageBoxButton.OK, MessageBoxImage.Warning);
    }

    private void button2_Click(object sender, RoutedEventArgs e)
    {
        ServiceReference1.JobsClient jc = new ServiceReference1.JobsClient();
        dataGrid1.ItemsSource = jc.Details().Tables[0].DefaultView;
    }

    private void button3_Click(object sender, RoutedEventArgs e)
    {
        ServiceReference1.JobsClient jc = new ServiceReference1.JobsClient();
        dataGrid1.ItemsSource = jc.GetAllDetails() ;
    }
    
}

我已经在 phpmyadmin 创建了一个用户,并在我的 WCF 中使用它。但是每当我运行时,它都会显示“用户 ael 登录失败”。我需要在连接字符串中更改什么吗?之前谢谢。

4

1 回答 1

1

如果我理解正确,您需要一个连接字符串的示例。因此,对于连接字符串格式,请参阅ConnectionsStrings.com

例如,如果您使用的是标准端口并且没有更改它:

Server=myServerAddress;Database=myDataBase;Uid=myUsername;Pwd=myPassword;

然后,您可以使用 MySQL 连接器(MySql.Data.MySqlClient 可在此处下载命名空间)并按照本教程的详细说明以编程方式连接到 MySQL 数据库:连接到 MySQL 服务器

于 2012-06-17T15:04:07.667 回答