C#sqlDataAdapter WHERE子句incorect语法 [英] C# sqlDataAdapter WHERE clause incorect syntax

查看:172
本文介绍了C#sqlDataAdapter WHERE子句incorect语法的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

嗨!





当我运行应用程序时,我在da.Fill(dt)收到错误,它说''=''附近的语法不正确。而且这是因为WHERE子句,因为当我评论它时它运行没有错误。

谁有人可以帮帮我?



这里有一些代码:

 私人  void  Kombi_Load( object  sender,EventArgs e)
{
// TODO:这行代码将数据加载到'kombiDBDataSet.KombiStateTbl'表中。您可以根据需要移动或删除它。
this .kombiStateTblTableAdapter.Fill( this .kombiDBDataSet.KombiStateTbl);
numberPlateComboBox.Text = oldIndexText;
oldIndexText = numberPlateComboBox.Text;


conn.ConnectionString =( @ 数据源= .\SQLEXPRESS ; AttachDbFilename = D:\Projects\RentalPlus\RentalPlus \ KombiDB.mdf; Integrated Security = True; User Instance = True);
conn.Open();

DataSet ds = new DataSet();
DataTable dt = new DataTable();
ds.Tables.Add(dt);
SqlDataAdapter da = new SqlDataAdapter();
字符串 Param1 = .Text;

da = new SqlDataAdapter( SELECT RentalTbl.NumberPlate,RentalTbl.PricePD,RentalTbl.FromDate,
+ RentalTbl.ToDate,ClientTbl.CompanyName,ClientTbl.ContactName,ClientTbl.Mobile,
+ ClientTbl.Email FROM RentalTbl INNER JOIN ClientTbl ON RentalTbl.ClientID = ClientTbl.ClientID
+ WHERE(RentalTbl.NumberPlate = @ Param1),conn);

da.Fill(dt);

singleHistoryDataGridView.DataSource = dt.DefaultView;

conn.Close();

}

解决方案

Spaces,我的朋友,空格。因为你需要一个之间

 ClientTbl.ClientID 





< pre lang =text> WHERE(RentalTbl



 da =  new  SqlDataAdapter(  SELECT RentalTbl.NumberPlate,RentalTbl.PricePD,RentalTbl.FromDate, 
+ RentalTbl.ToDate,ClientTbl.CompanyName,ClientTbl.ContactName,ClientTbl.Mobile,
+ ClientTbl.Email FROM RentalTbl INNER JOIN ClientTbl ON RentalTbl.ClientID = ClientTbl.ClientID
+ WHERE(RentalTbl.NumberPlate = @ Param1),conn);


Hi!


I''m getting an error at da.Fill(dt) when i run the application, it says "Incorrect syntax near ''=''." and it''s because WHERE clause because when i comment it out it runs with no errors.
can anyone please help me?

here''s some code:

private void Kombi_Load(object sender, EventArgs e)
        {
            // TODO: This line of code loads data into the 'kombiDBDataSet.KombiStateTbl' table. You can move, or remove it, as needed.
            this.kombiStateTblTableAdapter.Fill(this.kombiDBDataSet.KombiStateTbl);
            numberPlateComboBox.Text = oldIndexText;
            oldIndexText = numberPlateComboBox.Text;  
   

            conn.ConnectionString =(@"Data Source=.\SQLEXPRESS;AttachDbFilename=D:\Projects\RentalPlus\RentalPlus\KombiDB.mdf;Integrated Security=True;User Instance=True");
            conn.Open();

            DataSet ds = new DataSet();
            DataTable dt = new DataTable();
            ds.Tables.Add(dt);
            SqlDataAdapter da = new SqlDataAdapter();
            String Param1 = this.Text;

            da = new SqlDataAdapter("SELECT RentalTbl.NumberPlate, RentalTbl.PricePD, RentalTbl.FromDate,"
            + "RentalTbl.ToDate, ClientTbl.CompanyName, ClientTbl.ContactName, ClientTbl.Mobile,"
            + "ClientTbl.Email FROM RentalTbl INNER JOIN ClientTbl ON RentalTbl.ClientID = ClientTbl.ClientID"
            + "WHERE(RentalTbl.NumberPlate = @Param1)", conn);
            
            da.Fill(dt);

            singleHistoryDataGridView.DataSource = dt.DefaultView;

            conn.Close();
                  
        }

解决方案

Spaces, my friend, spaces. As in you need one between

ClientTbl.ClientID


and

WHERE(RentalTbl


da = new SqlDataAdapter("SELECT RentalTbl.NumberPlate, RentalTbl.PricePD, RentalTbl.FromDate,"
+ "RentalTbl.ToDate, ClientTbl.CompanyName, ClientTbl.ContactName, ClientTbl.Mobile,"
+ "ClientTbl.Email FROM RentalTbl INNER JOIN ClientTbl ON RentalTbl.ClientID = ClientTbl.ClientID "
+ "WHERE(RentalTbl.NumberPlate = @Param1)", conn);


这篇关于C#sqlDataAdapter WHERE子句incorect语法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆