namespace ConsoleApplication2
{
class Program
{
static void Main(string[] args)
{
SqlConnection conn = new SqlConnection(@"Server=LEON\MATER;database=test;Uid=sa;Pwd=sa");
conn.Open();
if (conn.State == ConnectionState.Open)
{
Console.Write("连接成功!"); }
else
Console.Write("连接失败!");
//while (true)
//{
using (SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = "SELECT * FROM dbo.qwe";
using (SqlDataReader reader = cmd.ExecuteReader())
{
Console.WriteLine("请输入用户名!");
string name = Console.ReadLine();
if (name == reader.GetString(reader.GetOrdinal("name")))
{
Console.WriteLine("请输入密码!");
string password = Console.ReadLine();
if (password == reader.GetString(reader.GetOrdinal("password")))
{
Console.WriteLine("欢迎进入系统!");
}
else
{
Console.WriteLine("密码错误!");
} }
else
{
Console.WriteLine("用户名不存在!");
}
} //}
} Console.ReadLine();
Console.WriteLine("good"); }
}
}在下面这句出错
using (SqlDataReader reader = cmd.ExecuteReader())
{
class Program
{
static void Main(string[] args)
{
SqlConnection conn = new SqlConnection(@"Server=LEON\MATER;database=test;Uid=sa;Pwd=sa");
conn.Open();
if (conn.State == ConnectionState.Open)
{
Console.Write("连接成功!"); }
else
Console.Write("连接失败!");
//while (true)
//{
using (SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = "SELECT * FROM dbo.qwe";
using (SqlDataReader reader = cmd.ExecuteReader())
{
Console.WriteLine("请输入用户名!");
string name = Console.ReadLine();
if (name == reader.GetString(reader.GetOrdinal("name")))
{
Console.WriteLine("请输入密码!");
string password = Console.ReadLine();
if (password == reader.GetString(reader.GetOrdinal("password")))
{
Console.WriteLine("欢迎进入系统!");
}
else
{
Console.WriteLine("密码错误!");
} }
else
{
Console.WriteLine("用户名不存在!");
}
} //}
} Console.ReadLine();
Console.WriteLine("good"); }
}
}在下面这句出错
using (SqlDataReader reader = cmd.ExecuteReader())
{
class Program
{
static void Main(string[] args)
{
SqlConnection conn = new SqlConnection(@"Server=LEON\MATER;database=test;Uid=sa;Pwd=sa");
conn.Open();
if (conn.State == ConnectionState.Open)
{
Console.Write("连接成功!"); }
else
Console.Write("连接失败!");
//while (true)
//{
using (SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = "SELECT * FROM dbo.qwe";
cmd.Connection = conn; //缺少这一句
using (SqlDataReader reader = cmd.ExecuteReader())
{
Console.WriteLine("请输入用户名!");
string name = Console.ReadLine();
if (name == reader.GetString(reader.GetOrdinal("name")))
{
Console.WriteLine("请输入密码!");
string password = Console.ReadLine();
if (password == reader.GetString(reader.GetOrdinal("password")))
{
Console.WriteLine("欢迎进入系统!");
}
else
{
Console.WriteLine("密码错误!");
} }
else
{
Console.WriteLine("用户名不存在!");
}
} //}
} Console.ReadLine();
Console.WriteLine("good"); }
}
}
{
reader.Read();
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Data.SqlClient;namespace ConsoleApplication2
{
class Program
{
static void Main(string[] args)
{
using (SqlConnection conn = new SqlConnection(@"Server=LEON\MATER;database=test;Uid=sa;Pwd=sa"))
{
conn.Open();
if (conn.State == ConnectionState.Open)
{
Console.Write("连接成功!"); }
else
Console.Write("连接失败!");
//while (true)
//{ Console.WriteLine("请输入用户名!");
string name = Console.ReadLine();
using (SqlCommand cmd = conn.CreateCommand())
{
cmd.CommandText = "SELECT * FROM dbo.qwe ";
using (SqlDataReader reader = cmd.ExecuteReader())
{
reader.Read();
if (name == reader.GetString(reader.GetOrdinal("name")))
{
Console.WriteLine("请输入密码!");
string password = Console.ReadLine();
if (password == reader.GetString(reader.GetOrdinal("password")))
{
Console.WriteLine("欢迎进入系统!");
}
else
{
Console.WriteLine("密码错误!");
} }
else
{
Console.WriteLine("用户名不存在!");
}
} }
} Console.ReadLine();
Console.WriteLine("good"); }
}
}除了要加reader.Read();密码的输入也出了问题,不过我把密码在数据库的数据类型改为nvarchar就好了最后说一下read,这个只有在执行后才会读数
可以在using之前对ExecuteReader()的返回数进行判断,是否大于零。