在vs中使用textbox把数据更新给数据,可是数据库里没有,是不是语句有问题

关于桥 2017-12-26 11:01:17
protected void Page_Load(object sender, EventArgs e)
{
string connstr = ConfigurationManager.ConnectionStrings["Mispersonalconn"].ConnectionString;
SqlConnection Sqlconn = new SqlConnection(connstr);
SqlCommand cmm = new SqlCommand("select * from Tb_attendece_rule",Sqlconn);
SqlDataReader read;
Sqlconn.Open();
read=cmm.ExecuteReader();
if (read.Read())
{
TextBox1.Text = read[0].ToString().Split(':')[0];
TextBox2.Text = read[0].ToString().Split(':')[1];
TextBox3.Text = read[0].ToString().Split(':')[2];
TextBox4.Text = read[1].ToString().Split(':')[0];
TextBox5.Text = read[1].ToString().Split(':')[1];
TextBox6.Text = read[1].ToString().Split(':')[2];
TextBox7.Text = read[2].ToString().Split(':')[0];
TextBox8.Text = read[2].ToString().Split(':')[1];
TextBox9.Text = read[2].ToString().Split(':')[2];
TextBox10.Text = read[3].ToString().Split(':')[0];
TextBox11.Text = read[3].ToString().Split(':')[1];
TextBox12.Text = read[3].ToString().Split(':')[2];
}
read.Close();
Sqlconn.Close();
}
protected void BtnOK_Click(object sender, EventArgs e)
{
if ((string)Session["Name"] != "")
{
if ((string)Session["role"] == "管理员")
{
string sql= "Update Tb_attendece_rule set Onwork_Ahead='"
+TextBox1.Text.ToString().Trim()+":"
+TextBox2.Text.ToString().Trim()+":"
+TextBox3.Text.ToString().Trim()+ "',Onwork_Normal='"
+TextBox4.Text.ToString().Trim()+":"
+TextBox5.Text.ToString().Trim()+":"
+TextBox6.Text.ToString().Trim()+ "',Offwork_Delay='"
+TextBox7.Text.ToString().Trim()+":"
+TextBox8.Text.ToString().Trim()+":"
+TextBox9.Text.ToString().Trim()+ "',Offwork_Normal='"
+TextBox10.Text.ToString().Trim()+":"
+TextBox11.Text.ToString().Trim()+":"
+TextBox12.Text.ToString().Trim()+ "'";
string connstr = ConfigurationManager.ConnectionStrings["Mispersonalconn"].ConnectionString;
SqlConnection Sqlconn = new SqlConnection(connstr);
Sqlconn.Open();
SqlCommand sc = new SqlCommand(sql, Sqlconn);
sc.ExecuteNonQuery();
lbMessage.Text = "设置成功!";
Sqlconn.Close();
}
else
{
Response.Write("<script>alert('只有管理员才可以进行此操作!')</script>");
}
}
else
{
Response.Redirect("Default.aspx"); ;
}
}
...全文
582 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
E次奥 2018-01-09
  • 打赏
  • 举报
回复
调试一下,看数据传入Sql语句了没? 看执行成功了没??? 如果没成功,看包什么异常,根据异常才能解决问题;
yzf86211861 2018-01-05
  • 打赏
  • 举报
回复
学会 调试, 把 你拼的那个 SQL 语句 拿到 查询分析器 里面看一下 是不是 正确
早起晚睡 2018-01-05
  • 打赏
  • 举报
回复
单步调试 看看拼接的sql 语句有问题吗,一看很明了!!!!
秋的红果实 2018-01-04
  • 打赏
  • 举报
回复
4)用参数法写sql语句,防止注入
秋的红果实 2018-01-04
  • 打赏
  • 举报
回复
#4 + 另外, 1)set Onwork_Ahead='"                      +TextBox1.Text.ToString().Trim()+"'," 后面语句也一样要改 2) read.Close();         Sqlconn.Close(); ==>

if(read!=null)
{
    read.Close();
}
//SQLconn也一样

3)加上try....catch.....
BrucesLong 2018-01-04
  • 打赏
  • 举报
回复
要判断sql语句是否正确,最简单最有效地方式就是调试代码,然后将要执行的的sql语句复制到数据库中直接执行。 数据库连接关闭要放在finally块中,始终都要关闭连接。或者用using方式也可以。
jun471537173 2018-01-04
  • 打赏
  • 举报
回复
protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { } } 加上这个判断
FainSheeg 2017-12-27
  • 打赏
  • 举报
回复
你的update连where 子句都没有吗?而且你的sqlcommand执行后连返回值都不判断一下就直接认为设置成功?
changjiangzhibin 2017-12-27
  • 打赏
  • 举报
回复

int rows =  sc.ExecuteNonQuery();
//rows>0,说明插入数据成功
HL_GT 2017-12-27
  • 打赏
  • 举报
回复
sql语句写错了UPDATE 表名称 SET 列名称 = 新值 WHERE 列名称 = 某值 and 列名称1 = 某值1;where后面的条件中间不是用;间隔,是用and!
基于VB6自主研发的轻量级数据查询客户端工具,启动速度较快,所占资源较小。 附源码,对初学数据编程的童鞋有所裨益! 1、支持SQLServer、Oracle、Sybase、DB2数据平台 2、单句执行:可以提交单一的SQL语句给服务器执行。 3、多句一次执行:可以将多个SQL语句用空格或换行的方式进行隔离,程序会一次性提交给数据服务器执行。(前提条件是语法通过) 4、多句依次执行:可以将多个SQL语句用分号‘;’隔开,程序会逐句提交。 5、执行指定的SQL语句:可以在SQL编辑框部分语句执行,在SQL命令框通过鼠标连续单击3次可以选择当前行。 6、在事务执行SQL语句:将执行按钮上方的Trans 框选,那么程序对于每次提交的SQL语句都是放在事务执行的,执行不成功程序会进行回滚操作。程序默认不进行事务处理,因为有些语句不能在事务执行。 版本修订记录: V3.6.0 16:08 2012/6/18 --支持DB2数据平台,要求客户端安装 DB2 Run-Time Client Lite。 --支持数据名的记忆功能。 V3.5.11 14:36 2012-5-12 --支持连接非缺省端口号的SQL Server平台。 V3.5.10 8:54 2009/12/22 --将OUT标签更名为Output。 V3.5.9 10:48 2009/8/19 --修订Bug:在Vista或Win7系统下主界面部分被遮盖显示不全的问题。 V3.5.8 --修订Bug:执行的存储过程没有返回结果集,在导出Excel时出现运行时错误。 V3.5.7 --界面标题栏增加当前连接数据信息。 --修订死循环Bug,死3次后退出执行。 --修订最末语句分号后面跟若干回车符执行死循环的Bug。 V3.5.6 --还是使用TextBox控件作为SQL命令的输入框,RichTextBox控件的滚动条功能不太好用; --使用字符算法实现了双击SQL命令框选当前行的功能(TextBox控件本身不支持)。 --修订了窗体在Resize时的Bug。 V3.5.5 --使用RichTextBox控件代替原有的TextBox控件SQL命令输入框(支持双击选整行功能)。 --使用‘;’和‘回车换行’符号联合作为SQL命令逐个提交的分割标志符。 V3.5.4 --修订SQL日志文件记录错误的Bug。 V3.5.3 --修订系统未安装任何打印机的情况下导出Excel失败的Bug(设置打印页面横向时失败)。 V3.5.2 --修订运行目录没有可写权限导致记录日志失败无法提交SQL语句的Bug。 V3.5.0 --新增记录SQL语句日志的功能。 V3.4.0 --新增导出查询结果集到Excel文档的功能。 V3.3.4 --修改了窗体内部控件自动放缩的控制算法; --修改数据显示窗口支持滚轮鼠标的上下左右翻滚操作。 V3.3.0 --修改了连接ORACLE的连接字符串,要求客户端安装ODAC组件(OLEDB); --数据下拉列表默认上次选择的数据项。 V2.0.0 --支持Sybase平台,要求客户端安装Sybase OLEDB组件; V1.0.0 --支持SQL Server平台,安装包自带ADO组件。
第18章 程序应用控制 483 18.1 提取信息 484 0795 判断驱动器类型并获取其属性 484 0796 如何得到本地机器的IP 484 0797 如何得到本地运行的EXE的路径 485 0798 得到计算机所有正在运行的进程 485 0799 获得Windows的启动模式 485 0800 获取鼠标的按钮个数及鼠标安装状态 485 0801 检测计算机是否存在网络连接 486 0802 如何判断计算机的联机状态 486 0803 获取计算机屏幕分辨率 486 0804 获取计算机当前登录的用户名称 486 18.2 系统控制 486 0805 远程关闭或重新启动计算机 486 0806 创建应用程序快捷方式 487 0807 启动Windows系统服务 488 0808 在C#应用程序控制输入法 488 0809 打开“区域和语言选项”对话框并指定选项卡 489 0810 如何执行命令行命令? 489 0811 如何修改计算机的默认打印机 490 0812 如何实现行业软件系统注销功能 490 0813 如何将计算机设置为休眠状态 490 0814 在Windows系统建立事件日志 491 0815 如何使PC喇叭发音 491 18.3 程序控制 491 0816 使用回车键控制鼠标焦点 491 0817 如何调用可执行应用程序 492 0818 TextBox上禁用鼠标右鍵 492 0819 如何实现屏幕截图 492 0820 如何将截取的图片保存为指定图片格式 493 0821 如何复制程序本身 493 0822 分段显示电话号码颜色 493 0823 软件版本号是如何组成的 493 0824 单击“关闭”按钮或按 Alt + F4 键时最小化窗口 494 0825 屏蔽RichTextBox控件 Ctrl + V 快捷键 495 18.4 其他 495 0826 将DataGridView控件数据导入Excel 495 0827 无法获取自定义环境变量的值 496 0828 将组件放到COM+服务器上去 496 0829 调用非托管的DLL文件 497 0830 如何将GridView控件数据导入Word 497 0831 如何将GridView控件数据导入Excel 497 0832 单片机如何实现在线调试 498 0833 单片机如何实现内存优化管理 498 0834 单片机实现文件系统管理 498 0835 杀死进程 498 0836 如何下载某网站上的图片资源 498 第19章 SQL查询相关技术 501 19.1 常用SQL查询技术 502 0837 如何在查询正确使用单引号“’” 502 0838 SQLSELECT语句的执行顺序 502 0839 在查询时查询数据为指定长度的数据 502 0840 如何利用WHERE参数过滤数据 503 0841 如何正确地理解和运用SQL的判式 503 0842 如何正确地理解和使用SQL的关键字 503 19.2 比较、逻辑运算符查询 504 0843 如何使用算术运算符号进行比较查询 504 0844 如何使用比较运算符号进行比较查询 504 0845 如何使用AND逻辑运算符查询 505 0846 如何使用OR逻辑运算符查询 506 0847 如何联合使用AND和OR运算符查询 506 0848 如何在查询正确使用逻辑操作符 507 0849 利用通配符进行查询 507 19.3 SQL关键字查询 508 0850 如何使用ESCAPE关键字规定转义字符 508 0851 如何使用BETWEEN进行范围查询 508 0852 如何使用NOT BETWEEN进行范围查询 509 0853 如何使用GROUP BY子句查询 509 0854 如何使用HAVING语句过滤分组数据 510 0855 如何使用ALL关键字查询 510 0856 如何使用CUBE关键字查询 511 19.4 表结构与性能 511 0857 检测信息是否存在 511 0858 @@CPU_BUSY获取CPU的工作时间 511 0859 如何获取磁盘读写次数 512 0860 获取SQL Server服务器名 512 0861 获取数据标识号 512 0862 判断用户是否访问数据的权限 512 0863 显示表列信息 512 0864 显示表任意列名称 513 0865 提高SQL性能加快执行速度 513 0866 控制批处理内语句的执行 513 0867 执行查询但是显示列信息 514 0868 获取连接或试图连接的次数 514 0869 获取当前数据的语言名 514 19.5 时间与谓词 514 0870 时间函数的使用 514 0871 设置数据时间表显形式 515 0872 格式化日期显示格式 515 0873 如何正确理解SQL的NULL值 516 0874 如何使用IsNull()函数来处理空值 516 0875 如何使用Nullif()函数来处理空值 516 0876 查询空值(NULL)的技巧 517 0877 利用关键字DISTINCT去除重复记录 517 0878 巧用TOP子句获取信息 518 0879 巧用CONTAINS谓词检索信息 518 0880 通过ISNULL替换信息 519 0881 比较COMPUTE和GROUP BY 519 0882 如何对指定时间段进行查询 519 0883 对某期间的数据进行查询的几种方法 519 0884 NOT与谓词进行组合条件的查询 520 19.6 聚合函数 520 0885 聚合函数SUM的使用 520 0886 聚合函数AVG的使用 521 0887 如何使用聚合函数MAX 521 0888 如何使用聚合函数MIN 522 0889 如何使用聚合函数COUNT 522 0890 如何使用聚合函数First或Last 523 19.7 子查询与连接查询 523 0891 union与连接之间的区别 523 0892 如何应用IN查询表的记录信息 524 0893 使用一个单行的子查询来更新列 524 0894 使用IN引入子查询限定查询范围 524 0895 在UPDATE语句应用子查询 525 0896 如何应用子查询 525 0897 EXISTS与子查询联合应用 525 0898 在FROM子句的子查询 525 0899 在DELETE语句应用子查询 526 0900 子查询与聚合函数的应用 526 0901 有效使用内连接 526 0902 如何使用LEFT OUTER JOIN查询 526 0903 如何使用RIGHT OUTER JOIN查询 527 0904 利用CASE语句查询结果 527 19.8 交叉表 528 0905 Access利用TRASFORM分析数据 528 0906 Access利用TRASFORM动态分析数据 529 0907 SQL Server实现静态交叉表 529 0908 SQL Server实现动态交叉表 531 19.9 常用数据操作 532 0909 如何对字符串进行查询 532 0910 如何进行单条数据的添加 533 0911 如何进行批量数据的添加 533 0912 如何对数据进行修改 534 0913 如何对数据进行删除 534 0914 对数据数据进行局部删除 534 19.10 高级应用 535 0915 如何使用临时表 535 0916 如何查询表的列名 535 0917 在查询如何防止输入指定符串 536 0918 查询指定长度的数据 536 0919 获取当前数据的详细信息 537 0920 在查询过程灵活定义与使用别名 538 19.11 视图、存储过程和触发器的使用 538 0921 如何正确认识视图 538 0922 如何获取数据的全部用户视图 539 0923 如何通过视图修改数据 539 0924 如何正确理解存储过程 540 0925 如何获取数据的全部存储过程 540 0926 如何正确认识触发器 541 0927 Update触发器在系统日志的应用 542 0928 触发器的嵌套使用 542 0929 获取数据的触发器 543 19.12 其他 544 0930 在查询程序使用变量 544 0931 对查询结果进行排序 544 0932 批量获取结果集信息 545 0933 对查询结果生成表 545 0934 实现数据类型转换 546 0935 获取当前数据的登录用户名 546 0936 如何正确理解数据键字 546 0937 将结果转换为XML形式 547 0938 追加查询结果到已存在的表 547 0939 利用对多个表的字段创建新记录集 547 0940 利用EXECUTE执行SQL语句 548 第20章 数据技术 549 20.1 Access数据使用 550 0941 如何为Access数据设置密码 550 0942 如何创建加密的Access数据 550 0943 建立Access数据连接 551 0944 与加密后的Access数据建立连接 551 0945 如何提取Access数据数据表名 551 0946 随机读取Access数据记录 552 0947 将Access数据导入到Excel(ASP.NET) 552 0948 在.NET 2.0框架下动态创建Access数据 553 0949 在.NET 2.0框架下动态创建Access数据表 553 0950 如何备份Access数据 554 20.2 SQL数据使用 554 0951 建立SQL Server数据连接 554 0952 如何使用ODBC访问SQL Server数据 555 0953 读取SQL Server数据表结构 556 0954 在C#分离SQL Server数据 557 0955 C#附加SQL Server数据 558 0956 C#附加单文件SQL Server数据 559 0957 备份SQL Server数据 559 0958 还原SQL Server数据 560 0959 开启SQL Server数据服务 561 0960 断开SQL Server数据服务 562 0961 如何判断SQL Server数据连接状态 562 0962 获取连接SQL Server数据的名称 563 0963 获取SQL Server的连接统计数据 563 0964 如何调用SQL Server存储过程 563 0965 如何生成SQL数据脚本 564 0966 SQL Server 2000无法安装的解决办法 565 20.3 其他 565 0967 如何判断记录是否为NULL 565 0968 建立Oracle数据连接 566 0969 如何在数据设置主键 566 0970 DataSet读取XML文件数据作为数据源 567 0971 如何读取Fox的DBF文件 567 0972 通用方法实现数据增、删、改功能 567 0973 通用方法获取查询结果DataSet数据集 568 0974 同时查询多条SQL语句 568 0975 如何判断是否查询到结果 568 0976 将图片以二进制格式存储到数据(asp.net) 569 0977 从DataReader对象读取数据的技巧 569 0978 随机显示数据记录 569 0979 通过DataTable获得数据表的主键 569 0980 将Access数据转化为SQL Server数据 570 0981 将SQL Server数据转化为Access数据 571 0982 如何避免数据死锁现象 572 0983 如何调用带输入参数的存储过程 572 0984 如何获取存储过程返回的结果集 573 0985 取得数据表某个单元格的值 573 0986 在ASP.NET2.0下将数据绑定DropDownList 573 0987 在ADO.NET实现数据的事务处理 574 0988 将任意文件保存到数据 574 0989 将存储在数据的文件提取出来 575 0990 合并具有相同数据表结构的查询结果 575 0991 使用DataTable进行数据检索 575 0992 使用DataView对数据进行检索和排序 576 0993 使用DataSet建立DataTable明细表 576
Part1第一部分: 相信大家找得到该书的源代码部分 也就是这部分内容 因此我便无偿奉送 让大家下载试试。 若感觉可以方可继续下载电子书部分。 1.本书1~21章所附代码的运行环境 操作系统:Windows Server 2003或Windows XP Professional 开发环境:Microsoft Visual Studio 2005 数据:SQL Server 2005 Web服务器:IIS 5.1及以上版本 2.本书所附光盘范例 第1章(\Chapter 01) 示例描述:本章演示ASP.NET 2.0网站的预编译以及学习ASP.NET 2.0的前置知识。 WebSite文件夹 创建的ASP.NET 2.0 Web站点。 www文件夹 第一个用C#开发的Web应用程序。 bianyi.bat 编译网站的批处理文件。 form.html 表单范例。 css.html CSS范例。 第3章(\Chapter 03) 示例描述:本章介绍C# 2.0程序设计基础。 3-01.cs 第一个C#程序。 3-02.cs 不导入命名空间来改写程序3-01.cs。 3-03.cs ReadLine()方法读数据。 3-04.cs 常量的使用。 3-05.cs 整型类型的使用。 3-06.cs 结构类型的使用。 3-07.cs 枚举类型的使用。 3-08.cs 用一个输入参数通过值传递一个变量给一个方法。 3-09.cs 一维数组的使用。 3-10.cs 使用代理类型。 3-11.cs 使用接口。 3-12.cs 装箱操作。 3-13.cs 字符串操作。 3-14.cs if语句使用。 3-15.cs switch语句使用。 3-16.cs while语句使用。 3-17.cs do-while语句使用。 3-18.cs for语句使用。 3-19.cs 异常捕获:try-catch语句使用。 3-20.cs 异常捕获:try-finally语句使用。 3-21.cs 异常捕获:try-catch-finally语句使用。 3-22.cs get和set对属性的值进行读写操作。 3-23.cs 方法的使用。 3-24.cs 继承演示。 3-25.cs 多态性演示。 第4 章(\Chapter 04) 示例描述:本章学习ASP.NET 2.0页面基本对象。 4-01.aspx aspx页面添加一个Lable标签。 4-02.aspx 读出Application的属性值。 4-03.aspx 读出SessionID的值。 4-04.aspx 创建Session对象。 4-05.aspx 读取传递的Session值并显示。 4-06.aspx 使用Response对象的Write()方法。 4-07.aspx 使用Response对象的End()方法。 4-08.html 以post方式提交数据到4-08.aspx的表单。 4-08.aspx 接收表单数据并进行处理。 4

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧