//msgcontent.Text的值是:测试{%test1%},测试2{%test2%},我现在是想把{%%}标记的东西从数据库里查出来,然后把新值替换掉上面{%%}标记的内容,得出msgcontent.Text的新值,这个需要怎么做?
List<string> list = new List<string>();
foreach (Match match in Regex.Matches(msgcontent.Text, @"{%[^%]*%}"))
{
string select = "select varName from varList";
OleDbCommand ocom = BaseClass.GlobalClass.Olecomm(select);
OleDbDataReader odr = ocom.ExecuteReader();
while (odr.Read())
{
if (match.Value == odr[0].ToString())
{
string oleselect = "select varContent from varList where varName='"+match.Value+"'";
OleDbCommand mycomm = BaseClass.GlobalClass.Olecomm(oleselect);
string sqlstr = mycomm.ExecuteScalar().ToString();
SqlCommand sqlcomm = BaseClass.GlobalClass.Sqlcomm(sqlstr);
string kkkk = sqlcomm.ExecuteScalar().ToString();
}
}
补:{%%}标记是access数据库里面一个表的字段,根据这个字段查到对应的这个表里面另一个存储sql语句的字段,然后根据这个sql语句到SQL数据库里面查询到对应的值,最后将文本框的内容更新
List<string> list = new List<string>();
foreach (Match match in Regex.Matches(msgcontent.Text, @"{%[^%]*%}"))
{
string select = "select varName from varList";
OleDbCommand ocom = BaseClass.GlobalClass.Olecomm(select);
OleDbDataReader odr = ocom.ExecuteReader();
while (odr.Read())
{
if (match.Value == odr[0].ToString())
{
string oleselect = "select varContent from varList where varName='"+match.Value+"'";
OleDbCommand mycomm = BaseClass.GlobalClass.Olecomm(oleselect);
string sqlstr = mycomm.ExecuteScalar().ToString();
SqlCommand sqlcomm = BaseClass.GlobalClass.Sqlcomm(sqlstr);
string kkkk = sqlcomm.ExecuteScalar().ToString();
}
}
补:{%%}标记是access数据库里面一个表的字段,根据这个字段查到对应的这个表里面另一个存储sql语句的字段,然后根据这个sql语句到SQL数据库里面查询到对应的值,最后将文本框的内容更新
解决方案 »
- C#窗体程序如何隐藏主窗体?
- c# 执行 cmd imp命令 无响应
- 请问一个文件资源被占用的问题,我应该怎么释放文件资源
- 简单的字符转换出错了,各位帮看看
- 一个关于DataGrid的奇怪问题
- 怎么用oledbCommand操作access数据库??
- 用C#做好的网站程序怎么申请域名且发布到网上去?WebService 呢?请高手指教阿
- 高手指教:关于服务器控件事件执行两次的问题,客户端并没有指定响应事件。
- 急!Active Reports for .net 2.0中怎么动态加载*.rpx文件?
- 关于ListBox的问题?
- 求一算法,输入五个参数,将其按特定的顺序排列。
- [求助]C# Winform 禁止多开怎么实现啊?
_________________________________
我写的vs2005源代码管理器,只有团队资源管理中源码管理的功能。
http://topic.csdn.net/u/20091203/10/ca40b678-5443-4a18-a9f6-fad9051d0797.html
{
if (txno.Text.Trim() == "")
{
MessageBox.Show(this, "不能为空", "添加失败", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
else
{
if (listno.Items.Count > 0)
{
for (int i = 0; i < listno.Items.Count; i++)
{
if (txno.Text == listno.Items[i].ToString())
{
MessageBox.Show(this, "已经存在!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
} }
listno.Items.Add(txno.Text);
}
else
{
listno.Items.Add(txno.Text);
}
}
}
请大家帮我看看这个为什么判断不成功,重复的数据还是可以添加
str.replace({%test1%},"数据库值")
没分了,来抢分哦
string sqlstr = "insert into varlist values('"+txvarname.Text.Trim()+"','"+txvarcontent.Text.Trim()+"','"+txvarbz.Text.Trim()+"')";
try
{
BaseClass.GlobalClass.getOlecom(sqlstr);
MessageBox.Show(this, "添加成功", "恭喜", MessageBoxButtons.OK, MessageBoxIcon.Information);
DataBind();
}
catch (Exception ex)
{
MessageBox.Show(this, ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
}txvarcontent.text 的值是一句SQL语句select * from test where date='2009-10-1'
这样的话会报语法错误,这个需要怎么解决?谢谢?
这条语句没错错是在你
codestring sqlstr="insert into varlist values('"+txvarname.Text.Trim()+"','"+txvarcontent.Text.Trim()+"','"+txvarbz.Text.Trim()+"')";
这样之后你的value值值第二个列能那样用吗?
txvarcontent.text执行过后返回多条信息
.Replace("'","''");