下面的一段代码只能把values(7,'2011-2-1')写入到数据库,如果时间,userid要同步,该怎么写?
。。。。。自己把自己说晕了。。。。- -
private void button1_Click(object sender, EventArgs e)//签到
{
string sql = "data source = .;initial catalog = QDDB; user id = sa; pwd = yuan ";
string @time = DateTime.Now.ToLongTimeString();
string inSert = "insert into attendance(userid,time)values (7,'2011-2-1')";//请问()应该怎么写
SqlConnection myConn = new SqlConnection();
myConn.ConnectionString = sql;
SqlCommand myCommand = new SqlCommand(inSert, myConn);
myCommand.Connection.Open();
int flag = (int)myCommand.ExecuteNonQuery();
myCommand.Connection.Close();
myConn.Close();
if (flag > 0)
{
MessageBox.Show("签到成功");
}
else
{
MessageBox.Show("签到失败");
}
DateTime.Now.ToLongTimeString();//这个代码要放到哪里?
}
8 个解决方案
#1
没看懂楼主的意思。。。。。。。
#2
要么写一个触发器,在向A表插入数据的时候,同时向B表中插入数据。
另外一种就是先后向2个表中插入数据
另外一种就是先后向2个表中插入数据
#3
private void button1_Click(object sender, EventArgs e)//签到
{
string sql = "data source = .;initial catalog = QDDB; user id = sa; pwd = yuan ";
string t = DateTime.Now.ToLongTimeString();
string inSert = "insert into attendance(userid,time)values (@userId, @time)";
SqlConnection myConn = new SqlConnection();
myConn.ConnectionString = sql;
SqlCommand myCommand = new SqlCommand(inSert, myConn);
//userId是当前登录用户的id,你在登录窗口可以获取得到的
myCommand.Parameters.AddWithValue("@userId", userId);
myCommand.Parameters.AddWithValue("@time", t);
myCommand.Connection.Open();
int flag = (int)myCommand.ExecuteNonQuery();
myCommand.Connection.Close();
myConn.Close();
if (flag > 0)
{
MessageBox.Show("签到成功");
}
else
{
MessageBox.Show("签到失败");
}
}
#4
string sql = "data source = .;initial catalog = QDDB; user id = sa; pwd = yuan ";
string insertTime = DateTime.Now.ToLongTimeString();
string inSert = "insert into attendance(userid,time)values (@userid,@insertTime)";//请问()应该怎么写
SqlConnection myConn = new SqlConnection();
myConn.ConnectionString = sql;
SqlCommand myCommand = new SqlCommand(inSert, myConn);
myCommand.Parameters.Add("@userid", SqlDbType.Int).Value = 7;//加上这两句
myCommand.Parameters.Add("@insertTime", SqlDbType.DateTime).Value = insertTime;
myCommand.Connection.Open();
int flag = (int)myCommand.ExecuteNonQuery();
myCommand.Connection.Close();
myConn.Close();
if (flag > 0)
{
MessageBox.Show("签到成功");
}
else
{
MessageBox.Show("签到失败");
}
#5
参数化查询 '(@userid nvarchar(4000),@time nvarchar(18))insert into attendanc' 需要参数 @userid,但未提供该参数。?????
#6
楼主貌似想做签到 类似OA系统 介意用session
#7
id username 通过session得到
时间 可以用 datetime类的now()方法获取当前时间
插入数据库即可
如果不会写 偶可以帮你写个完整的代码 不过白天没时间 。。。
时间 可以用 datetime类的now()方法获取当前时间
插入数据库即可
如果不会写 偶可以帮你写个完整的代码 不过白天没时间 。。。
#8
是的,是的。我刚学的,就是不知道怎么声明userid....我在网上查的代码,一边复制粘帖,一边学习...
#1
没看懂楼主的意思。。。。。。。
#2
要么写一个触发器,在向A表插入数据的时候,同时向B表中插入数据。
另外一种就是先后向2个表中插入数据
另外一种就是先后向2个表中插入数据
#3
private void button1_Click(object sender, EventArgs e)//签到
{
string sql = "data source = .;initial catalog = QDDB; user id = sa; pwd = yuan ";
string t = DateTime.Now.ToLongTimeString();
string inSert = "insert into attendance(userid,time)values (@userId, @time)";
SqlConnection myConn = new SqlConnection();
myConn.ConnectionString = sql;
SqlCommand myCommand = new SqlCommand(inSert, myConn);
//userId是当前登录用户的id,你在登录窗口可以获取得到的
myCommand.Parameters.AddWithValue("@userId", userId);
myCommand.Parameters.AddWithValue("@time", t);
myCommand.Connection.Open();
int flag = (int)myCommand.ExecuteNonQuery();
myCommand.Connection.Close();
myConn.Close();
if (flag > 0)
{
MessageBox.Show("签到成功");
}
else
{
MessageBox.Show("签到失败");
}
}
#4
string sql = "data source = .;initial catalog = QDDB; user id = sa; pwd = yuan ";
string insertTime = DateTime.Now.ToLongTimeString();
string inSert = "insert into attendance(userid,time)values (@userid,@insertTime)";//请问()应该怎么写
SqlConnection myConn = new SqlConnection();
myConn.ConnectionString = sql;
SqlCommand myCommand = new SqlCommand(inSert, myConn);
myCommand.Parameters.Add("@userid", SqlDbType.Int).Value = 7;//加上这两句
myCommand.Parameters.Add("@insertTime", SqlDbType.DateTime).Value = insertTime;
myCommand.Connection.Open();
int flag = (int)myCommand.ExecuteNonQuery();
myCommand.Connection.Close();
myConn.Close();
if (flag > 0)
{
MessageBox.Show("签到成功");
}
else
{
MessageBox.Show("签到失败");
}
#5
参数化查询 '(@userid nvarchar(4000),@time nvarchar(18))insert into attendanc' 需要参数 @userid,但未提供该参数。?????
#6
楼主貌似想做签到 类似OA系统 介意用session
#7
id username 通过session得到
时间 可以用 datetime类的now()方法获取当前时间
插入数据库即可
如果不会写 偶可以帮你写个完整的代码 不过白天没时间 。。。
时间 可以用 datetime类的now()方法获取当前时间
插入数据库即可
如果不会写 偶可以帮你写个完整的代码 不过白天没时间 。。。
#8
是的,是的。我刚学的,就是不知道怎么声明userid....我在网上查的代码,一边复制粘帖,一边学习...