using System;
using System.Collections.Generic;using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Data;
using System.Data.SqlClient;
using Microsoft.Data.Schema.ScriptDom;
using Microsoft.Data.Schema.ScriptDom.Sql;
using System.IO;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
SqlConnection con = new SqlConnection(@"connectionstring");
SqlCommand cmd = new SqlCommand();private void Form1_Load(object sender, EventArgs e)
{
DataTable dt = new System.Data.DataTable();
cmd.Connection = con;
cmd.CommandText = "select LastName,FirstName,Title,City from dbo.Employees";
SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(dt);
dtgsearchitem.DataSource = dt;
}
private void btnsearch_Click(object sender, EventArgs e)
{bool result = validatextbox();
if (result == true){
String str = txtsearchitem.Text.Replace("--",
" ");
str =
str.Replace("/*",
" ");
str = str.Replace("XP_", " ");
str = str.Trim().Replace("'", "''");
DataTable dt = new System.Data.DataTable();
cmd.Parameters.Clear();cmd.CommandText = "searchwindowselect";
cmd.CommandType = CommandType.StoredProcedure;
SqlParameter param1 = new SqlParameter("@SEARCHITEM", SqlDbType.VarChar, 100);
param1.Value = str;
cmd.Parameters.Add(param1);
SqlParameter param2 = new SqlParameter("@CONDTION", SqlDbType.VarChar, 20);
param2.Value = cmbCondition.Text.Trim();cmd.Parameters.Add(param2);
SqlParameter param3 = new SqlParameter("@SEARCHCONDITION", SqlDbType.VarChar, 20);
param3.Value = cmbsearchcondion.Text.Trim();
cmd.Parameters.Add(param3);
SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(dt);dtgsearchitem.DataSource = dt;
}
else
{
MessageBox.Show("Invalid search item");
}
}
private String removeUnknownCharecter(String str)
{
string[] words = str.Split('-');
str.Replace("-", " ");
str.Replace("-", " ");
return str;
}
private bool validatextbox()
{int f = 1;
String str = txtsearchitem.Text;string[] words = str.Split(';');
foreach (string word in words)
{
string sql = word;
var p = new TSql100Parser(true);
IList<ParseError> errors;
p.ParseStatementList(new StringReader(sql), out errors);
if (errors.Count == 0)
{
f = 0;
break;
}
}
if (f == 0)
{
return false;
}
else
{
return true;
}
}
}
}

Join the conversation! Your thoughts help the community grow.