我正在尝试将insert sql语句与select语句结合使用,我成功地结合了这个语句:
insert into dbo.sessions (se_user) select user_id from dbo.users where username = 'bader'", badersql);
我现在需要的是在同一个sql语句中插入另一个值,如下所示:
insert into dbo.sessions (se_user,*se_ip*) select user_id from dbo.users...
正如您注意到第二个语句中有se_ip
,值将来自文本框,如何将其与我的sql语句结合使用?
答案 0 :(得分:1)
您可以从参数中选择常量:
using (var command = new SqlCommand(@"insert into dbo.sessions (se_user, se_ip)
select user_id, @text from dbo.users...", connection) {
command.Parameters.AddWithValue("text", myTextBox.Text);
command.ExecuteNonQuery();
}
答案 1 :(得分:1)
insert into dbo.sessions
(se_user,se_ip)
select user_id, @TextBoxValue
from dbo.users...
答案 2 :(得分:1)
INSERT INTO dbo.sessions (se_user, se_ip)
SELECT user_id, @ipAddress FROM dbo.users WHERE username = @username
答案 3 :(得分:0)
您可以使用您在问题中提到的第一个插入语句,然后添加更新语句以根据需要修改数据
OR
我假设您在变量中具有文本框的值,因此您可以使用类似SELECT user_id,@yourtextboxvalue from userstable...
答案 4 :(得分:0)
您需要在插入语句的select
部分添加另一个字段
insert into dbo.sessions (se_user,*se_ip*) select user_id, other_value from dbo.users ...
如果值来自文本框,则取决于您如何运行insert语句。您可能必须为命令对象设置参数。有关详细信息,请参阅this link。