私はSQL Serverでこの手順を持っています:
create procedure AutoSearchTeamByMobile
@Team_Mobile int
As
select * from Team_Info where Team_Mobile like @Team_Mobile+'%';
そして、私はC#でこのコードを持っています:
private void textBoxX4_TextChanged(object sender, EventArgs e)
{
int tMobile= int.Parse(textBoxX4.Text);
SqlCommand com = new SqlCommand("AutoSearchTeamByMobile", con);
com.Parameters.Add("@Team_Mobile", SqlDbType.Int).Value = tMobile;
com.CommandType = CommandType.StoredProcedure;
SqlDataAdapter da = new SqlDataAdapter();
DataSet ds = new DataSet();
da.SelectCommand = com;
da.Fill(ds, "Team_Info");
dataGridViewX1.DataSource = ds.Tables["Team_Info"];
}
Team_Mobile
私は携帯電話番号のリストを持っており、それらはデータ型としてと呼ばれる列に保存されていますint
。そのうちの1つは「711......」で始まり、別の番号は「700......」で始まります。 '7' だけを書くとtextBoxX4
、すべての数字 (711 または 700 で始まる) が に表示されるはずですが、dataGridViewX1
'71' と書くと、'711' で始まる数字だけが に表示されdataGridViewX1
ます。「70」と書くと、700 で始まる数字のみが に表示されdataGridViewX1
ます。私は必要なものを手に入れませんでした。実際には、何もしなかったのと同じように何も見えませんでした。
私のニーズは、71 を書き込むと、Team_Mobile 列に 711 を持つすべてのレコードが引き続き表示され、他の番号が非表示になるはずです。
しかし、私はそれを行いTeam_Names
ました.Team_Names
nvarchar
Team_Mobile
int
SQL:
create procedure AutoSearchTeam
@Team_Name nvarchar (50)
As
select * from Team_Info where Team_Name like @Team_Name+'%';
C#:
private void textBoxX1_TextChanged(object sender, EventArgs e)
{
string t_name = textBoxX1.Text;
SqlCommand com = new SqlCommand("AutoSearchTeam", con);
com.Parameters.Add("@Team_Name", SqlDbType.NVarChar, 50).Value = t_name;
com.CommandType = CommandType.StoredProcedure;
SqlDataAdapter da = new SqlDataAdapter();
DataSet ds = new DataSet();
da.SelectCommand = com;
da.Fill(ds, "Team_Info");
dataGridViewX1.DataSource = ds.Tables["Team_Info"];
}
私の質問は: とにかく%
それを整数で使用するために置き換えることはありますか?
%
上記で説明したものを取得するために整数で使用するには、何を置き換えることができますか?
私の英語で申し訳ありません。