在控制台窗口中显示数据库中的数据
本文关键字:数据 数据库 显示 窗口 控制台 | 更新日期: 2023-09-27 18:32:19
我创建了这个简单的"员工"程序来训练我的sql。如果用户愿意,我决定显示数据库中的所有数据。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
namespace MySQLQueryTest
{
class Program
{
static void Main(string[] args)
{
string response = "";
while (response != "exit")
{
Console.Write(">>");
response = Console.ReadLine();
switch (response.ToLower())
{
case "emp":
employeeMenu();
break;
case "-h":
Console.WriteLine("emp'tDisplays the Employee database menu");
Console.WriteLine("exit'tWill exit the program");
Console.WriteLine("clear'tWill clear the console window");
break;
case "clear":
Console.Clear();
break;
default:
Console.WriteLine("Invalid Command; for help type -h");
break;
}
}
}
static void employeeMenu()
{
Console.WriteLine("-------------Menu-------------");
Console.WriteLine("Type 'list' to list all employees.");
Console.WriteLine("Type 'add' to add an employee.");
Console.WriteLine("------------------------------");
string response = "";
while (response != "exit")
{
Console.Write("EmployeeMenu>");
response = Console.ReadLine();
switch (response.ToLower())
{
case "add":
getInfo();
break;
case "exit":
Console.WriteLine("Returning to Main Menu...");
break;
case "list":
Console.WriteLine("Here I will display all the SQL data");
break;
default:
Console.WriteLine("Invalid Command'n");
break;
}
}
}
static void getInfo()
{
Console.Write("First Name: ");
string fname = Console.ReadLine();
Console.Write("Last Name: ");
string lname = Console.ReadLine();
Console.Write("Job: ");
string job = Console.ReadLine();
addEmployee(fname, lname, job);
}
static void addEmployee(string the_fname, string the_lname, string the_job)
{
var connection = new SqlConnection(@"Data Source=(LocalDB)'v11.0;AttachDbFilename='c:'users'omri'documents'visual studio 2012'Projects'Map'Map'db.mdf';Integrated Security=True");
SqlCommand cmd;
connection.Open();
try
{
cmd = connection.CreateCommand();
cmd.CommandText = "INSERT INTO Employees(fname, lname, job) values('" + the_fname + "', '" + the_lname + "', '" + the_job + "');";
cmd.ExecuteNonQuery();
Console.WriteLine("Added " + the_fname + " " + the_lname + " to employee database.");
}
catch (Exception)
{
throw;
}
finally
{
if (connection.State == System.Data.ConnectionState.Open)
{
connection.Close();
}
}
}
}
}
我在网上搜索了一些答案,但没有成功,我发现的最接近的事情是:显示查询结果。
不确定这就是我要找的。所以,我的问题是如何显示员工的所有数据?提前谢谢你!
家庭作业?
您已经有在将员工添加到数据库中时运行 SQL 查询的代码。要显示数据库中的所有员工,您需要执行类似于 addEmployee 方法的操作,但不是运行 INSERT sql 命令,而是要选择
using (SqlConnection connection = new SqlConnection(YOURCONNECTIONSTRING))
{
connection.Open();
using (SqlCommand command = new SqlCommand("SELECT * FROM Employees", connection))
{
using (SqlDataReader reader = command.ExecuteReader())
{
while (reader.Read())
{
for (int i = 0; i < reader.FieldCount; i++)
{
Console.WriteLine(reader.GetValue(i));
}
Console.WriteLine();
}
}
}
}