1.我有一个表,里面有姓名,密码,和ID号,在一个新用户注册的时候输入姓名和密码,表中自动生成5位
数的ID号,以后再有新用户就是当前的ID号加一.这个功能该如何实现呢?2.我要向表中插入一个新的用户的信息的时候,可以输入部分空值吗? 例如:INSERT info VALUES(NULL,'张三','123456');3.我想将用户的ID和密码都保存在一个表里,在程序开始的时候运行连接命令连接上数据库,然后输入用户名密码,这个用户名密码通过查询数据库里表的信息来验证,如果用户名密码匹配则打开下一个窗体,这样做科学吗??或者说有什么更好的办法吗??4.接上一个问题,如果第一个窗体中数据库连接成功了,那么其他窗体是否还需要重新再建立个SQLCONNECTION对象连接呢??其他窗体上进行查询和插入删除操作时候的SQLCOMMAND对象的CONNECTION对象应该怎么写呢???以上问题是C#+ADO.NET SQL2000环境 编译器VS.NET2003先在这里谢谢大家了
同样,在每个类(窗体)里的写法都一样
SqlConnection conn =new sqlConnection(ConnectionString);
SqlCommand comm = new sqlCommand (SqlString, conn);
.....
conn.Open()
comm.ExecuteNonQuery();
conn.close();
建议用INT的Auto_Increment来做,但是它满足不了每个ID都是5位;
否则则需要自己写代码来生成,不管是数据库写成storeprocedure或ado.net,都是一样的。to 2
如果采用INT的Auto_Increment方法来做的话,插入的时候,是不用给它赋值的,例如:
insert yourtable (username, password) values( newusername, newpassword )
否则,建议用storeprocedure来做to 3
大致是这样的话,如果觉得直接把密码存在数据库,有些不安全的话,建议在加密后再存入数据库中to 4
方法一:用全局变量,即static;
方法二:主窗体在创建子窗体的时候,把sqlconnection引用传进去,不过需要修改childwindow的construction function:
//Define your child window
public class yourchildwindow( ref SqlConnection sqlConn ):System.Windows.Forms.Form