PDA

View Full Version : دستور select



nafisehk
یک شنبه 19 خرداد 1392, 22:17 عصر
دوستان میشه بگید این دستور چه کاری انجام میده


select name as column from tbl
این دستور accsese?

veniz2008
یک شنبه 19 خرداد 1392, 22:49 عصر
دوستان میشه بگید این دستور چه کاری انجام میده


select name as column from tbl
این دستور accsese?
سلام.
این دستور رو کجا دیدی؟
به نظر میاد این یک شبه دستور هست نه یک دستور قابل اجرا. منظورش اینه که بعد از select میتونید نام ستون های مورد نظرتون (name as column) رو ذکر کنید!.
اینو توی کتابی خوندید؟

khokhan
یک شنبه 19 خرداد 1392, 22:58 عصر
دوستان میشه بگید این دستور چه کاری انجام میده


select name as column from tbl
این دستور accsese?
فرض کنید یک ستون در بانک دارید با نام "NAME " حال می خواهید هدر ستون مذکور در گرید با عنوان "نام " نمایش داده شود بنابراین می تونین از همون یه خط کدی که خودتون گذاشتین استفاده کرده و عنوان ستون بانکتون رو هنگام نمایش در فرم عوض کنین که به عبارتی می شود :


"select name as [نام] from INFOTBL"

البته فکر می کنم یه جابجایی توی این کد صورت گرفته :
select column as name from tbl

nafisehk
یک شنبه 19 خرداد 1392, 23:11 عصر
من میخوام که کاربر فیلدایی که میخواد ازش گزارش بگیره رو خودش انتخاب کنه. برای این کار به دیتاست دارم که یه دیتا تیبل داره. حالا میخوام یه دستور بسلکت بنویسم که ستون های انتخابی ماربر و به ستونای دیتاتیبل نسبت بده.امیدوارم واضح گفته باشم.

veniz2008
یک شنبه 19 خرداد 1392, 23:13 عصر
همونی بود که فکرشو میکردم. فرض کنید نام و فامیل و نمره رو بخوای بخونی. با کاما از هم جداشون کن :

select FirstName,LastName,Mark From TblStudent

nafisehk
یک شنبه 19 خرداد 1392, 23:27 عصر
همونی بود که فکرشو میکردم. فرض کنید نام و فامیل و نمره رو بخوای بخونی. با کاما از هم جداشون کن :

select FirstName,LastName,Mark From TblStudent

خوب این یه دستور select سادست چطور باید به ستونای دیتاتیبل نسبتش داد؟

veniz2008
یک شنبه 19 خرداد 1392, 23:44 عصر
اینطور :

SqlConnection con = new SqlConnection("server = .\\md2008;DataBase = DBStudent; Integrated Security = True");
SqlDataAdapter da = new SqlDataAdapter("select FirstName,LastName,Mark From TblStudent", con);
DataTable dt = new DataTable();
da.Fill(dt);
GrdStudent.DataSource = dt;

nafisehk
یک شنبه 19 خرداد 1392, 23:45 عصر
کد که نوشتم


private string CreateSelectQueryAndParameters()


{

ReportDocument myReportDocument = new ReportDocument(); ;

ParameterField myParameterField = new ParameterField();

ParameterFields myParameterFields = new ParameterFields();

ParameterDiscreteValue myParameterDiscreteValue = new ParameterDiscreteValue();

string Query = "SELECT";

int ColumnNo = 0;

//1

if (chkName.Checked)


{

ColumnNo++;

Query = Query.Insert(Query.Length, " Sender AS Column" + ColumnNo.ToString());




myParameterField.Name = "col" + ColumnNo.ToString();

myParameterDiscreteValue.Value = "Sender";


myParameterField.CurrentValues.Add(myParameterDisc reteValue);

myParameterFields.Add(myParameterField);

}

//3

if (chkAddress.Checked)


{

ColumnNo++;

if (Query.Contains("Column"))


{

Query = Query.Insert(Query.Length, ",");


}

Query = Query.Insert(Query.Length, " SenderName AS Column" + ColumnNo.ToString());




myParameterField.Name = "col" + ColumnNo.ToString();

myParameterDiscreteValue.Value = "SenderName";


myParameterField.CurrentValues.Add(myParameterDisc reteValue);

myParameterFields.Add(myParameterField);

}

if (chkID.Checked)


{

ColumnNo++;

if (Query.Contains("Column"))


{

Query = Query.Insert(Query.Length, ",");


}

Query = Query.Insert(Query.Length, " Reciever AS Column" + ColumnNo.ToString());




myParameterField.Name = "col" + ColumnNo.ToString();

myParameterDiscreteValue.Value = "Reciever";


myParameterField.CurrentValues.Add(myParameterDisc reteValue);

myParameterFields.Add(myParameterField);

}

for (int i = ColumnNo; i < 5; i++)


{

ColumnNo++;

myParameterField = new ParameterField();

myParameterField.Name = "col" + ColumnNo.ToString();

myParameterDiscreteValue = new ParameterDiscreteValue();

myParameterDiscreteValue.Value = "";


myParameterField.CurrentValues.Add(myParameterDisc reteValue);

myParameterFields.Add(myParameterField);

}

crystalReportViewer1.ParameterFieldInfo = myParameterFields;

Query += " FROM LettersArchive";

return Query;


}







private void button1_Click(object sender, EventArgs e)


{

string Query = CreateSelectQueryAndParameters();

if (!Query.Contains("Column"))


{

MessageBox.Show("No selection to dispaly");

return;


}

try


{

SqlConnection mySqlConnection = new SqlConnection();

mySqlConnection.ConnectionString="Data Source=.;Initial Catalog=DabirKhane;Integrated Security=True";

SqlDataAdapter mySqlDataAdapter=new SqlDataAdapter(Query,mySqlConnection);

DataSet1 myDataSet1 = new DataSet1();

mySqlDataAdapter.Fill(myDataSet1, "LettersArchive");

MessageBox.Show(myDataSet1.LettersArchive.ToString ());


myCrystalReport1.SetDataSource(myDataSet1);

}

catch(SqlException mySqlException)


{

MessageBox.Show(mySqlException.Message);


}

catch (Exception myException)


{

MessageBox.Show(myException.Message);


}

nafisehk
دوشنبه 20 خرداد 1392, 00:26 صبح
مقدار ستونای دیتاتیبل و چک کردم. مثل اینکه select درست عمل میکنه چون دیتا تیبل پر شده.
اما نتیجه رو تو crystal report نمایش نمیده.
دوستان لزفا راهنمایی کنید.

nafisehk
دوشنبه 20 خرداد 1392, 09:06 صبح
کسی نیست که راهنمایی کنه؟