using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            string dataDi = AppDomain.CurrentDomain.BaseDirectory;
            if (dataDi.EndsWith(@"\bin\Debug") || dataDi.EndsWith(@"\bin\Release\"))
            {
                dataDi = System.IO.Directory.GetParent(dataDi).Parent.Parent.FullName;
                AppDomain.CurrentDomain.SetData("DataDirectory", dataDi);
            }
            using (SqlConnection conns = new SqlConnection(@"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database2.mdf;Integrated Security=True;User Instance=True"))
            {
                conns.Open();
                using (SqlCommand cmd = conns.CreateCommand())
                {
                    cmd.CommandText = "Insert into EMPLOYEE(NAME,AGE,SALARY) VALUES('TOM',24,6000)";
                    cmd.ExecuteNonQuery();
                    Console.WriteLine("插入成功");
                }
            }
            Console.WriteLine("连接创建成功");
            Console.ReadKey();
        }
    }
}执行程序查看表时还是没看到要插入的数据,求助!

解决方案 »

  1.   

    会不会是 
    if (dataDi.EndsWith(@"\bin\Debug") || dataDi.EndsWith(@"\bin\Release\"))
      {
    这裹就过滤掉了?
      

  2.   

    断点设置在这句:string dataDi = AppDomain.CurrentDomain.BaseDirectory;
    一部一部F10往下执行,看看能不能执行到这句:
    cmd.CommandText = "Insert into EMPLOYEE(NAME,AGE,SALARY) VALUES('TOM',24,6000)";如果能执行到,看看cmd.CommandText 的实际值到底是什么,把它拷贝到数据库查询分析器,问题就一目了然了
      

  3.   

    刚才把那些代码放在新的项目里面,在运行居然可以了。不知道之前到底出了什么状况,代码没改。就在这个地方改了点:  if(cmd.ExecuteNonQuery()>0) Console.writeline("插入成功");
      

  4.   

    再问个问题:cmd.CommandText = "select * from Users where Username='"+username+"'"
    这select语句里面为什么还加了引号