举了四个连接数据库的简单例子,(其中有注释与解析)
1、接下来是第一个往数据库里添加数据:
static void Main(string[] args)
{#region 数据库添加数据 //用户键入数据,传给变量
/* Console.Write("请输入用户名:");
string user = Console.ReadLine();
Console.Write("请输入密码:");
string password = Console.ReadLine();
Console.Write("请输入真实姓名:");
string real = Console.ReadLine();
Console.Write("请输入手机号:");
string mobile = Console.ReadLine();
Console.Write("请输入地址:");
string address = Console.ReadLine();
Console.Write("请输入Card:");
string card = Console.ReadLine();
string sqlconn = "Data Source=WANGJIAN-PC;Initial Catalog=BookDB1;User ID=sa;Password=abcdef"; //这里才是真正的连接服务器。
SqlConnection conn = new SqlConnection(sqlconn);
conn.Open(); //创建对象打开服务器
SqlCommand com = conn.CreateCommand();
com.CommandText = "insert into T_USer values(@username,@password,@realname,@mobile,@address,@card)"; //编辑需要对数据库操作的命令
com.Parameters.AddWithValue("@username", user); //变量里的数据传给占位符
com.Parameters.AddWithValue("@password", password);
com.Parameters.AddWithValue("@realname", real);
com.Parameters.AddWithValue("@mobile", mobile);
com.Parameters.AddWithValue("@address", address);
com.Parameters.AddWithValue("@card", card);
com.ExecuteNonQuery(); //开始执行命令
com.Dispose();
conn.Close(); //执行操作后关闭服务器如果不关闭连接,这个操作标识就会永远存在,消耗服务器资源。特别是有海量数据存取的时候,对服务器性能的影响相当巨大。及时关闭数据库操作链接是数据优化提高网站系统性能重要方面。
conn.Dispose();
Console.WriteLine("添加成功!!");
Console.Read();*/
#endregion
2、删除数据中的数据
#region 删除数据库中的数据/* Console.Write("请输入需要删除的Id:");
int id;
int.TryParse(Console.ReadLine(),out id);
string sqlconn = "Data Source=WANGJIAN-PC;Initial Catalog=BookDB1;User ID=sa;Password=abcdef";
SqlConnection conn = new SqlConnection(sqlconn);
conn.Open();
SqlCommand com = conn.CreateCommand();
com.CommandText = "delete from T_User where Id=@id";
com.Parameters.AddWithValue("@id", id);
com.ExecuteNonQuery();
Console.WriteLine("删除成功!");
com.Dispose();
conn.Close();
conn.Dispose();
Console.Read();*/
#endregion
3、查询数据库中的数据,这里用了两个做法,不过原理都一样,一个用了双重循环,但是给不了一个别名,一个直接写的下标
#region 查询数据库/* string sqlconn = "Data Source=WANGJIAN-PC;Initial Catalog=BookDB1;User ID=sa;Password=abcdef";
SqlConnection conn = new SqlConnection(sqlconn);
SqlCommand cmd = conn.CreateCommand();
cmd.CommandText = "select * from T_USer";
SqlDataAdapter adapter = new SqlDataAdapter(cmd);
DataTable dt = new DataTable();
adapter.Fill(dt);
for (int i = 0; i < dt.Rows.Count; i++) //!!注意在写查询语句的时候不要字段拼接,否则会出现注入漏洞
{
Console.WriteLine("ID:{0}用户姓名:{1}密码:{2}真实姓名:{3}手机:{4}地址:{5}Card{6}",dt.Rows[i][0],dt.Rows[i][1], dt.Rows[i][2], dt.Rows[i][3], dt.Rows[i][4], dt.Rows[i][5], dt.Rows[i][6]);
// for (int j = 0; j < dt.Columns.Count; j++) //这是双重循环的,但已经被注释掉了
//{
// string id = dt.Rows[i][j].ToString();
// string id1 = dt.Rows[i][j].ToString();
// string id2 = dt.Rows[i][j].ToString();
// string id3 = dt.Rows[i][j].ToString();
// string id4 = dt.Rows[i][j].ToString();
// string id5 = dt.Rows[i][j].ToString();
// string id6 = dt.Rows[i][j].ToString();
// Console.WriteLine(id, id1, id2,id3,id4,id5,id6);
//}
}*/
#endregion
4、控制台修改数据库中的数据
#region 修改数据库中的数据/* Console.Write("请输入修改用户名的Id:");
int id;
int.TryParse( Console.ReadLine(),out id);
Console.Write("请输入你修改的用户名:"); //同样也是键入数据,
string name=Console.ReadLine().ToString();
string sqlconn = "Data Source=WANGJIAN-PC;Initial Catalog=BookDB1;User ID=sa;Password=abcdef";
SqlConnection conn = new SqlConnection(sqlconn);
conn.Open();
SqlCommand com = conn.CreateCommand();
com.CommandText = ("update T_User set UerName=@username where Id=@id"); //操作命令增加限制条件,限制需要修改的字段。
com.Parameters.AddWithValue("@id", id);
com.Parameters.AddWithValue("@username", name);
com.ExecuteNonQuery();
Console.WriteLine("修改成功!");
com.Dispose();
conn.Close();
conn.Dispose();*/
Console.Read();
#endregion
}
小结:总之连接数据库格式为:
Const SqlDatabaseName = "数据库名"
Const SqlPassword = "用户密码"
Const SqlUsername = "用户名"
Const SqlLocalName = "(local)"
dim conn
set conn=server.createobject("ADODB.connection")
conn.open "Provider=Sqloledb;User ID="&SqlUsername&";Password="&SqlPassword&";Initial Catalog="&SqlDatabaseName& ";Data Source="&SqlLocalName&";"(如有错误,欢迎修改)