你的数据库信息是写到配置文件中的吧
那你就在点击单选按钮的时候去修改要绑定的数据库
string lanmu1database="从配置文件中读取关于栏目1的数据库信息";
string lanmu2database="从配置文件中读取关于栏目2的数据库信息";
string lanmu3database="从配置文件中读取关于栏目3的数据库信息";
在点击单选按钮时候 修改所访问数据库对应不同的string 的变量。
绑定变量目的是减小数据库的解析的次数select
*
from
table
where
field=
:fld:fld这个叫绑定变量,即,数据库解析时用占位符,后再传值执行
我们医院用的是深圳一家叫昂楷科技的数据库多重审计系统,对于绑定变量的支持不错,能支持好几种绑定变量的解析审计,我们医院的系统是ORACLE 10g。
会用ADO.NET执行这句SQL,然后返回数据结果吧?然后因为你的这句SQL只有一行一列的值,所以直接返回0行0列,或0行“COUNT”列就好,如下:
int count = Convert.ToInt32((dataset.Tables[0]).Rows[0][0].ToString());
或:
int count = Convert.ToInt32(datatable.Rows[0][0].ToString());
无论如何,数据泄露总是破坏性的;但更糟的是,要怎么向受影响的用户、投资人和证监会交代呢?一家公司上千万用户的个人数据,总不会自己长脚跑到黑市上躺着被卖吧?于是,在各种监管机构找上门来问一些很难堪的问题之前,北大青鸟带大家还是来看看这几个最常见的数据库安全漏洞吧。
数据库安全重要性上升
只要存储了任何人士的任意个人数据,无论是用户还是公司员工,数据库安全都是重中之重。然而,随着黑市对数据需求的上升,成功数据泄露利润的上涨,数据库安全解决方案也就变得比以往更为重要了。尤其是考虑到2016年堪称创纪录的数据泄露年的情况下。
身份盗窃资源中心的数据显示,美国2016年的数据泄露事件比上一年增长了40%,高达1,093起。商业领域是重灾区,紧随其后的是医疗保健行业。政府和教育机构也是常见目标。
常见数据库漏洞
1.部署问题
这就是数据库安全版的博尔特一蹬出起跑器就被鞋带绊倒。数据库经过广泛测试以确保能胜任应该做的所有工作,但有几家公司肯花时间保证数据库不干点儿什么不应该干的事儿呢?
解决办法:这个问题的解决办法十分明显:部署前做更多的测试,找出可被攻击者利用的非预期操作。
2.离线服务器数据泄露
公司数据库可能会托管在不接入互联网的服务器上,但这并不意味着对基于互联网的威胁完全免疫。无论有没有互联网连接,数据库都有可供黑客切入的网络接口。
解决办法:首先,将数据库服务器当成联网服务器一样看待,做好相应的安全防护。其次,用SSL或TSL加密通信平台加密其上数据。
3.错误配置的数据库
有太多太多的数据库都是被老旧未补的漏洞或默认账户配置参数出卖的。个中原因可能是管理员手头工作太多忙不过来,或者因为业务关键系统实在承受不住停机检查数据库的损失。无论原因为何,结果就是这么令人唏嘘。
解决办法:在整个公司中树立起数据库安全是首要任务的氛围,让数据库管理员有底气去花时间恰当配置和修复数据库。
4.SQL注入
SQL注入不仅仅是最常见的数据库漏洞,还是开放网页应用安全计划(OWASP)应用安全威胁列表上的头号威胁。该漏洞可使攻击者将SQL查询注入到数据库中,达成读取敏感数据、修改数据、执行管理操作乃至向操作系统发出指令等目的。
解决办法:开发过程中,对输入变量进行SQL注入测试。开发完成后,用防火墙保护好面向Web的数据库。
在Visual Studio 2005连接SQL Server 2000中,我们可能会知道,连接字符串会比较简单,一般远程连接的时候,只需要在Web.config文件配置如下:
appSettings
add key="ConnectionString" value="server=(local);database=MyDb;uid=sa;pwd=sa;Max pool size=1000;Connect
Timeout=20"/
/appSettings
然后在代码中通过调用下面的语句就可以实现数据库的连接了。
SqlConnection conn = new SqlConnection(ConfigurationSettings.AppSettings["ConnectionString"]);
在此前提只需要把身份验证设置成为SQL Server和Windows验证就可以了。
而在SQL Server 2005中,如果直接这样操作就会报下面的错误:
在建立与服务器的连接时出错。在连接到 SQL Server 2005 时,在默认的设置下 SQL Server 不允许进行远程连接可能会导致此失败。 (provider: 命名管道提供程序, error: 40 - 无法打开到 SQL Server 的连接) 。
我们就需要单独对SQL Server 2005进行配置,步骤如下:
1.配置SQL Server外围应用服务器,开启SQL2005远程连接功能:
操作方式如下,点击“配置工具”-“SQL Server外围应用配置器”,然后在打开的窗口中选择“服务和连接的外围应用配置器”-然后选择Database Engine节点下的 “远程连接”,选择“本地连接和远程连接”,同时选择“同时使用TCP/IP和named pipes”,确定后然后需要重新启动数据库服务就可以了。
2.把登陆设置改为SQL Server 和 Windows 身份验证模式,具体设置如下:
打开SQL Server Management Studio管理器,点击服务器上面右键然后查看属性,在安全性选项里面对服务身份验证选择“SQL Server 和 Windows 身份验证模式”。
3.修改SQL Server sa的密码,体设置如下:
在SQL Server Management Studio管理器中,展开服务器上的“安全性”-登陆名-在sa帐号上点右键属性,这样在“常规”的选择页中更改sa登陆帐号的密码。注意SQL Server2005中,不允许密码设置简单,否则会通不过。然后在选择页的“状态”的登录修改为启用。
4.数据库连接字符串:
数据库连接字符串有很多种,如:
Data Server=.\SQLEXPRESS;Initial Catalog=Northwind;User ID=sa;Password=sapassSql
Data Server=服务器名\SQLEXPRESS;Initial Catalog=Northwind;User ID=sa;Password= sapassSql
Data Server=localhost\SQLEXPRESS;Initial Catalog=Northwind;User ID=sa;Password= sapassSql
Data Server=.;Initial Catalog=Northwind;User ID=sa;Password= sapassSql
Data Server=服务器名;Initial Catalog=Northwind;User ID=sa;Password= sapassSql
具体的选择是和SQL Server2005的版本有关系,如果是SQL Server 2005 Express版本,则必须要有“\SQLEXPRESS”,因此如果字符串是定义为一个变量的时候应该写成Server=.\\SQLEXPRESS。
5.在.net2.0 Framework中注册SQL Server数据库:
找到.net2.0 Framework的安装路径,一般安装在 “C:\Windows\Microsoft.NET\Framework\v2.0.50727”目录下,然后在DOS中在指定目录下运行 “ASPNET_REGSQL”指令,就会出现ASP.NET SQL Server安装向导,点击“下一步”,然后选择“为应用程序服务配置SQL Server”,然后直接点击下一步,就会完成SQL Server注册界面。我们就会看到NorthWind数据库下面多了几张表。
6.设置web.config文件:
在应用程序中的web.config文件添加如下数据库连接的配置:
connectionStrings
add name="ConnectionSqlServer" connectionString="Data Source= .\SQLEXPRESS;Initial Catalog=Northwind; User ID=sa;Password= sapassSql" providerName="System.Data.SqlClient"/
/connectionStrings
这样我们便在Visual Studio 2005中可以轻松的调用SQL Server的数据连接了。
现在我们来对上面所做的步骤来测试数据的连接,我们打开Visual Studio 2005,在视图的“服务器资源管理器”来添加SQL Server 2005的连接,通过输入服务器名称和对应的SQL Server身份验证的sa用户名密码后,选取对应的数据库,然后点击“测试连接”,就会成功的连接到数据库了。
销售 是赞助 客户 做出最坏的选择。我认识 需要提供的基础 导致 客户 购买 的愿望,让客户 购买 目的 产品...
除了工作流程 之外,如果 是第一次在简欠的空间外 先容 本身 ,找到自己 口仪的东西 ?在那边,给 野带来的是...
很多 人都需要 写述职申报 , 写例子,但他们没有简单地列出已经产生 的工作 。昨天,给 野带来的是关于如何写...
亲爱的孩子们,支到尔的怀疑是否很奇怪 ,为什么支到父亲写给儿子的怀疑。它真的读了很多 的话,但 我们之间似乎有...
很多 人都在加入 训练。后来都邑 作懦本身 的训练口患,那么我们怎样才能写出 作懦本身 的训练口患呢?昨天在那...
每年停止 的时候,很多 私司都一 请求员工工作 年底 事件 总结申报 。对于 员工来说,如何才能做到 足够的自...