Ich habe wenig Problem Ich versuche, sequenzierte Zahlen vor den Daten hinzuzufügen, die ich aus einer SQL Server-Datenbank abrufen werde, wie unten gezeigt.Sequenznummer zu den Listenfeldern hinzufügen, die von SqlDataReader() abgerufen werden
public partial class Form1 : Form
{
SqlConnection con = new SqlConnection(@"Server=.;database=test;integrated security=false;user id=sa;[email protected]");
SqlCommand com = new SqlCommand();
SqlDataReader dr;
public Form1()
{
InitializeComponent();
com.CommandText = "select book_name from Table_book";
com.Connection = con;
con.Open();
dr = com.ExecuteReader();
while (dr.Read())
{
for (int i = 1; i <= dr.FieldCount; i++)
{
listBox1.Items.Add(i+"-"+dr[0].ToString());
i += i;
}
}
if (listBox1.Items.Count == 0)
{
MessageBox.Show("No Data Found");
}
dr.Close();
con.Close();
}
Und das Ergebnis wird so sein:
TY alle
Warum nicht serverseitige Sequenznummer verwenden? Es sollte Ihren Code vereinfachen und die Ergebnisse konsistenter machen. Überprüfen Sie Folgendes: [ROW_NUMBER (Transact-SQL)] (https://msdn.microsoft.com/en-CA/library/ms186734.aspx). Es ist eine Partitionsfunktion, aber Sie können die Partitionierung weglassen und nur ORDER BY angeben, siehe Beispiele. – Neolisk