Win7环境下装SQL SERVER 2005 IIS的设置
作者:admin 日期:2012-01-30
PPT:25句名言改变你的生活
作者:admin 日期:2012-01-16
PPT:25句名言改变你的生活
外国人的PPT做得甚是大气,也比较有震撼力,用的图片也是很配主题.与大家分享
来源:http://www.slideshare.net/bright9977/25-quotes-that-transform-your-life
下载地址:
外国人的PPT做得甚是大气,也比较有震撼力,用的图片也是很配主题.与大家分享
来源:http://www.slideshare.net/bright9977/25-quotes-that-transform-your-life
下载地址:
很好的PPT:50句名言助你面对不可能
作者:admin 日期:2012-01-11
PPT制作经验分享
作者:admin 日期:2011-12-31
C# Winform 使用 MYSQL 新增,读取数据乱码问题
作者:admin 日期:2011-09-15
这个问题可终于解决了,搞了近一天的时间,汗.记录并分享一下解决办法.
问题描述;
1.C# Winform 连接MYSQL 对MySQL进行新增,读取数据操作,使用Mysql.MySql.Data组件进行数据连接及操作
2.mysql的版本本较低4.01 不能对Mysql的环境进行配置
现象:
1.新增数据正常操作,但是插入MYSQL数据库中的对应表中的数据成问号形式
2.Mysql表中中文数据显示正常,但通过datagridview读取显示?号
解决过程
1.在mysql 4.0.1的版本使用set names 'gb2312'这种语句是行不通的,同样去更改所对应的表的字段或字符集好像也是不起作用,5.0以上的版本没有使用过,所以不能提供正常说法,可以尝试一下
问题描述;
1.C# Winform 连接MYSQL 对MySQL进行新增,读取数据操作,使用Mysql.MySql.Data组件进行数据连接及操作
2.mysql的版本本较低4.01 不能对Mysql的环境进行配置
现象:
1.新增数据正常操作,但是插入MYSQL数据库中的对应表中的数据成问号形式
2.Mysql表中中文数据显示正常,但通过datagridview读取显示?号
解决过程
1.在mysql 4.0.1的版本使用set names 'gb2312'这种语句是行不通的,同样去更改所对应的表的字段或字符集好像也是不起作用,5.0以上的版本没有使用过,所以不能提供正常说法,可以尝试一下
C#连接MySQL 问题集锦及解决方案
作者:admin 日期:2011-09-12
gridview中的" "问题解决方法
作者:admin 日期:2011-05-04
gridview中的" "问题解决,碰到这个问题是在从excel导入数据过来时碰到的,导了一堆的 比较麻烦;
方法一:
如果gridview的boundfield是固定的,只要把每个datafield的htmlencode属性设为"False"
方法二:
使用Replace函数
Strings.Replace(TableCell.Text, " ", "")
方法三:
protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{
//// Get the currently selected row using the SelectedRow property.
GridViewRow row = GridView1.SelectedRow;
// Load data from selected row into textboxes
if (row.Cells[1].Text.Trim() != " ")
{
txtEditCust_ID.Text = row.Cells[1].Text.Trim();
}
}
方法四: 循环检查
//将 替换成空值
for (int i = 0; i < gdvList.Rows.Count; i++)
{
for (int j = 0; j < gdvList.Rows.Cells.Count; j++)
{
if (gdvList.Rows[i].Cells[j].Text == " ")
{
gdvList.Rows[i].Cells[j].Text = "";
}
}
}
http://topic.csdn.net/u/20070812/14/2ad407a7-d265-48b4-b448-5e87aa955b97.html[/i][/i]
方法一:
如果gridview的boundfield是固定的,只要把每个datafield的htmlencode属性设为"False"
方法二:
使用Replace函数
Strings.Replace(TableCell.Text, " ", "")
方法三:
protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{
//// Get the currently selected row using the SelectedRow property.
GridViewRow row = GridView1.SelectedRow;
// Load data from selected row into textboxes
if (row.Cells[1].Text.Trim() != " ")
{
txtEditCust_ID.Text = row.Cells[1].Text.Trim();
}
}
方法四: 循环检查
//将 替换成空值
for (int i = 0; i < gdvList.Rows.Count; i++)
{
for (int j = 0; j < gdvList.Rows.Cells.Count; j++)
{
if (gdvList.Rows[i].Cells[j].Text == " ")
{
gdvList.Rows[i].Cells[j].Text = "";
}
}
}
http://topic.csdn.net/u/20070812/14/2ad407a7-d265-48b4-b448-5e87aa955b97.html[/i][/i]
[译]SQL2005/2008错误18456 登录失败的 解决方案
作者:admin 日期:2011-04-12
Troubleshooting Login failed Error 18456
原文
http://sql-articles.com/articles/troubleshooting/troubleshooting-login-failed-error-18456Written
附件:
点击下载此文件
当使用sqlserver的用户登录的时候都会出现这个详错误代码为18456的错误.而详细信息则需要通ap_readerrorlog这个去获取.在这篇文章里,我将带你去查看产生此错的不同情况及相应的解决方案.
State1:
这个错误发生在sql server2000用户登录时,在sql的error logs日志里几乎没有很多的错误原因描述.这个问题的解决也比较棘手.但如果是sql server2005的话,每一次的登录失败都有一次一定的描述来判定是哪种情况导致登录失败.
STATE 2 & 5:
这种错误产生的主要原因是登录的用户不存在SQL SERVER中.这个错误主要发生在用户指定了一个错误的用户或拼写用户名出现错误时产生..我在我的SQL 2005实例中测试一个不存在的用户名,看到的就是如下的错误截图,日志中也有比较详细的记录.
2009-10-08 10:57:30.520 Logon Errors: 18456, Severity: 14, State: 5.
2009-10-08 10:57:30.520 Logon Login failed for user 'DOESNTEXIST'. [CLIENT: ]
STATE 6:
这种情况主要发生在用户希望windows帐户去直接访问数据库却在数据库用户中指定了一个SQL帐号.这样导致不能例如 .我使用一个windows帐户(dl7728\test)去例如,但是我在帐户中又指定了一个用户名,所以导致登录失败,让我们看看日志里是如何描述的.
2009-10-08 11:05:47.180 Logon Error: 18456, Severity: 14, State: 6.
2009-10-08 11:05:47.180 Logon Login failed for user 'dl7728\test'. [CLIENT: ]
STATE 7 & 8:
如果是SA的登录密码的错误,则会出错state为7.其它的登录方式也则state为8
2009-10-08 11:14:18.440 Logon Error: 18456, Severity: 14, State: 8.
2009-10-08 11:14:18.440 Logon Login failed for user 'docsadm'. [CLIENT: ]
STATE 9:
出现state9的错误则意味着密码可能是因为密码策略将密码认为是一个无效的密码.这个API的策略 更多的请查看链接
http://msdn.microsoft.com/library/default.asp?url=/library/enus/netmgmt/netmgmt/net_validate_output_arg.asp.
STATE 11 &12:
这种情况意味着通过域登录SQL Server的方式失败,即使可以通过域登录到操作系统,但还是不能登录进sql server.要想解决这个问题,则需要在域登录sql中赋予有登录的权限才行.
2009-10-08 12:24:01.470 Logon Error: 18456, Severity: 14, State: 11.
2009-10-08 12:24:01.470 Logon Login failed for user ‘X\s_aa’. [CLIENT: ]
STATE 13
这种情况主要是因为某些sql sever的服务停止了而产生.,也有可能产生错误代码为17142的错误
2009-10-08 12:31:28.620 spid57 Error: 17142, Severity: 14, State: 0.
2009-10-08 12:31:28.620 spid57 SQL Server service has been paused. No new connections will be allowed. To resume the service, use SQL Computer Manager or the Services application in Control Panel.
2009-10-08 12:31:28.620 Logon Error: 18456, Severity: 14, State: 13.
2009-10-08 12:31:28.620 Logon Login failed for user ''. [CLIENT: ]
STATE 16:
这种情况主要发生在sql server中的默认数据库不可用(删除或停止的情况).这个错误在SSMS的窗口中显示的是4064的错误代码.其它产的操作日志却记录为18456
2009-10-08 13:01:49.410 Logon Error: 18456, Severity: 14, State: 16.
2009-10-08 13:01:49.410 Logon Login failed for user 'aaa'. [CLIENT: ] .
这种情况可能通过将默认数据库启用或设置其它数据库为默认的数据库,重新例如就可以解决.
还有其它的state状态需要说明,但是我这里不能表述得很细致
STATE 18:
这种情况主要在刚刚增加的sql用户需要修改他的第一次密码的时候弹出错误代码.
STATE 38:
这种情况主要发生在默认的数据库在sql2008或sql2008R2K中不可用
STATE 40:
这种情况主要发生在sql2008或sql2008R2下,在创建了一个新的登录帐号并赋予给默认数据库的时候,数据库恰好处于停止状态或不可用的时候所创建的帐户.
原文
http://sql-articles.com/articles/troubleshooting/troubleshooting-login-failed-error-18456Written
附件:
点击下载此文件
当使用sqlserver的用户登录的时候都会出现这个详错误代码为18456的错误.而详细信息则需要通ap_readerrorlog这个去获取.在这篇文章里,我将带你去查看产生此错的不同情况及相应的解决方案.
State1:
这个错误发生在sql server2000用户登录时,在sql的error logs日志里几乎没有很多的错误原因描述.这个问题的解决也比较棘手.但如果是sql server2005的话,每一次的登录失败都有一次一定的描述来判定是哪种情况导致登录失败.
STATE 2 & 5:
这种错误产生的主要原因是登录的用户不存在SQL SERVER中.这个错误主要发生在用户指定了一个错误的用户或拼写用户名出现错误时产生..我在我的SQL 2005实例中测试一个不存在的用户名,看到的就是如下的错误截图,日志中也有比较详细的记录.
2009-10-08 10:57:30.520 Logon Errors: 18456, Severity: 14, State: 5.
2009-10-08 10:57:30.520 Logon Login failed for user 'DOESNTEXIST'. [CLIENT: ]
STATE 6:
这种情况主要发生在用户希望windows帐户去直接访问数据库却在数据库用户中指定了一个SQL帐号.这样导致不能例如 .我使用一个windows帐户(dl7728\test)去例如,但是我在帐户中又指定了一个用户名,所以导致登录失败,让我们看看日志里是如何描述的.
2009-10-08 11:05:47.180 Logon Error: 18456, Severity: 14, State: 6.
2009-10-08 11:05:47.180 Logon Login failed for user 'dl7728\test'. [CLIENT: ]
STATE 7 & 8:
如果是SA的登录密码的错误,则会出错state为7.其它的登录方式也则state为8
2009-10-08 11:14:18.440 Logon Error: 18456, Severity: 14, State: 8.
2009-10-08 11:14:18.440 Logon Login failed for user 'docsadm'. [CLIENT: ]
STATE 9:
出现state9的错误则意味着密码可能是因为密码策略将密码认为是一个无效的密码.这个API的策略 更多的请查看链接
http://msdn.microsoft.com/library/default.asp?url=/library/enus/netmgmt/netmgmt/net_validate_output_arg.asp.
STATE 11 &12:
这种情况意味着通过域登录SQL Server的方式失败,即使可以通过域登录到操作系统,但还是不能登录进sql server.要想解决这个问题,则需要在域登录sql中赋予有登录的权限才行.
2009-10-08 12:24:01.470 Logon Error: 18456, Severity: 14, State: 11.
2009-10-08 12:24:01.470 Logon Login failed for user ‘X\s_aa’. [CLIENT: ]
STATE 13
这种情况主要是因为某些sql sever的服务停止了而产生.,也有可能产生错误代码为17142的错误
2009-10-08 12:31:28.620 spid57 Error: 17142, Severity: 14, State: 0.
2009-10-08 12:31:28.620 spid57 SQL Server service has been paused. No new connections will be allowed. To resume the service, use SQL Computer Manager or the Services application in Control Panel.
2009-10-08 12:31:28.620 Logon Error: 18456, Severity: 14, State: 13.
2009-10-08 12:31:28.620 Logon Login failed for user ''. [CLIENT: ]
STATE 16:
这种情况主要发生在sql server中的默认数据库不可用(删除或停止的情况).这个错误在SSMS的窗口中显示的是4064的错误代码.其它产的操作日志却记录为18456
2009-10-08 13:01:49.410 Logon Error: 18456, Severity: 14, State: 16.
2009-10-08 13:01:49.410 Logon Login failed for user 'aaa'. [CLIENT: ] .
这种情况可能通过将默认数据库启用或设置其它数据库为默认的数据库,重新例如就可以解决.
还有其它的state状态需要说明,但是我这里不能表述得很细致
STATE 18:
这种情况主要在刚刚增加的sql用户需要修改他的第一次密码的时候弹出错误代码.
STATE 38:
这种情况主要发生在默认的数据库在sql2008或sql2008R2K中不可用
STATE 40:
这种情况主要发生在sql2008或sql2008R2下,在创建了一个新的登录帐号并赋予给默认数据库的时候,数据库恰好处于停止状态或不可用的时候所创建的帐户.
Compilation Error 解决方案汇集
作者:admin 日期:2011-02-11
再次遇见Compilation Error ,这次可就有办法对付了. 当然,这也算是一个BUG啦
方案一:
如果是在开发状态下编译出现Compilation Error的话
(1)清理解决方案 Clean the solution
(2)根据所报的错误提示,查找对应的页面划控件是否有重名控件的情况出现,如果有,请将其中一个控件重新命名
(3)关掉IIS服务后重新启动,再对solution重新编译
方案二:
主要是因为C:\Windows\Temp 没有写入的权限
在C:\WINDOWS\temp文件夹上面加上IIS_WPG 控制权限(修改、写入),重新启动IIS 。
方案一:
如果是在开发状态下编译出现Compilation Error的话
(1)清理解决方案 Clean the solution
(2)根据所报的错误提示,查找对应的页面划控件是否有重名控件的情况出现,如果有,请将其中一个控件重新命名
(3)关掉IIS服务后重新启动,再对solution重新编译
方案二:
主要是因为C:\Windows\Temp 没有写入的权限
在C:\WINDOWS\temp文件夹上面加上IIS_WPG 控制权限(修改、写入),重新启动IIS 。
PL-SQL问题集锦
作者:admin 日期:2010-12-07
好像是在学习Oracle的时候在碰到的一些问题的解决方案收集,分享给大家,希望能对大家有用
1.ORA-00054: 资源正忙, 但指定以 NOWAIT 方式获取资源
Reason1:web服务器占用了表,关掉web就行了。谢谢各位。
Reason2:他人在用同一个表空间或在同一时间共同操作
2.FRM-40505: orACLE 无法查询
ToolTips:把菜单换为默认菜单。运行出现“FRM-40505 orACLE无法查询”时,选择Help->Display Error。你将看到出错的查询语句,和具体的Oracle错误号
这个错误经常出现在一些数据库项没有对应column的情况下
1.ORA-00054: 资源正忙, 但指定以 NOWAIT 方式获取资源
Reason1:web服务器占用了表,关掉web就行了。谢谢各位。
Reason2:他人在用同一个表空间或在同一时间共同操作
2.FRM-40505: orACLE 无法查询
ToolTips:把菜单换为默认菜单。运行出现“FRM-40505 orACLE无法查询”时,选择Help->Display Error。你将看到出错的查询语句,和具体的Oracle错误号
这个错误经常出现在一些数据库项没有对应column的情况下
Global.asax文件失效的解决办法
作者:admin 日期:2010-11-23
用Global.asax来统计在线人数是个不错的办法,但是好像有时会失效的。我就恰巧碰到这个问题了。在本地高度正常,放到服务器上就不行了。
在程序里面抓取不到放在global.asax里面的Application的值,搜索了一下,这个办法解决了我的问题
环境是:Vs2010+Windows7+IE8
Solution1:
检查你的服务器上应用程序根目录是不是有个PrecompiledApp.config, 有的话删除试试!
删除后可能需要iisreset生效
这个办法确实简洁可以的。
Soltuion2:
在程序里面抓取不到放在global.asax里面的Application的值,搜索了一下,这个办法解决了我的问题
环境是:Vs2010+Windows7+IE8
Solution1:
检查你的服务器上应用程序根目录是不是有个PrecompiledApp.config, 有的话删除试试!
删除后可能需要iisreset生效
这个办法确实简洁可以的。
Soltuion2:
一份DBA面试题
作者:admin 日期:2010-11-13
一份DBA面试题 放在盘里很长时间,与大家分享,答案在PDF版
DBA面试题
一、单项选择题
1.系统分析的主要任务是完成新系统的 ( )
A.逻辑设计 B.可行性分析
C.物理设计 D.代码设计
2.在数据字典中,对外部实体的定义包括外部实体名称、编号、简述及 ( )
A.有关数据流的输入和输出 B.有关外部实体的存储
C.有关外部实体的处理 D.有关信息的说明
3.表格分配图是 ( )
A.数据流程调查使用的工具 B.编程工具
C.系统设计工具 D.管理业务调查使用的工具
4.联机实时处理方式适用于 ( )
A.需要大量的来自不同方面的数据的综合处理
B.需要反应迅速的数据处理
C.需要在一时间内累积数据后才能进行的数据处理
D.固定周期的数据处理
5.某车间根据工人每月完成工作量计算奖金,工作量数据是________属性。 ( )
A.固定值 B.固定个体变动
C.随机变动 D.主键
6.应用采成批处理方式的情况是 ( )
A.需要及时响应 B.数据采集费用高
C.已建汁算机网络 D.定期数据处理
7.MIS战略规:划小组负责人最好是 ( )
A.信息中心的主任 B.编程人员
C.组织的高层负责人 D.系统分析员
8.在系统分析阶段划分子系统,定义信息系统总体结构常用的工具是 ( )
A.功能/组织矩阵 B.功能/数据类矩阵
C.系统/数据类矩阵 D.产品/服务流程图
9.系统调查的主要内容有 ( )
A.计算机设备性能 B.管理业务状况
C.资金来源 D.MIS的运行效率
10.在详细调查过程中,对于调查面广,而调查的信息量不大的情况,最适合采用的调查
方法是 ( )
A.访问 B.发调查问卷
C.召开调查会 D.参加业务实践
11.在管理业务流程图中,O代表 ( )
A.系统中人员 B.系统外实体
C.数据流向 D.单据、报表和账目
12.管理信息系统的规划主要是规划管理信息系统 ( )
A.设计与实施工作 B.长期的、重大的发展方向与目标
C.与其它系统的关系 D.工作环境与条件
13.数据词典是数据流程图上所有成分的定义和解释的文字集合,其主要内容有 ( )
A.数据流、数据存储、数据显示、处理功能
B.数据输入、数据输出、处理功能、数据存储
C.数据流、数据元素,数据存储、处理功能、外部项
D.数据存储、数据流、处理功能、外部项
14.在下列模型中属于生产计划模型的是 ( )
A.企业中长期计划模型 B.量本利分析模型
C.网络计划模型 D.经济批量模型
15.现行系统详细调查的目的是 ( )
A.明确系统开发要解决的主要问题
B.弄清现行系统的基本功能和信息流程
C.明确系统的目标
D.论证系统开发的必要性和可能性
16.数据流程图中的外部实体是指 ( )
A.本系统的单位或人员 B.本系统外的单位或人员
C.输入的凭证单据 D.输出的凭证单据
17.在MIS数据收集中,采用仪器直接收集数据属于 ( )
A.来源性收集数据 B.根源性收集数据
C.准确性收集数据 D.真实性收集数据
18.可行性研究的主要成果,除可行性报告外,还有 ( )
A.系统开发建议书 B.现行系统的调查报告
C.拟建新系统方案 D.系统说明书
19.关于信息系统,以下说法正确的是 ( )
A.研制过程中,重点应放在程序编写上
B.为了提高系统效率,可以忽视用户要求
C.只能完全模拟人工进行事务处理
D.对于无结构或半结构化的决策任务,应提供一系列辅助决策的方法和手段
20.在MIS开发的生命周期法中,下列步骤中不属于系统分析阶段的是 ( )
A.编写程序 B.逻辑设计
C.可行性研究 D.代码设计
21.系统开发任务是否立项的决策依据是 ( )
A.可行性研究报告 B.系统说明书
C.拟建新系统方案 D.现行系统的调查报告
22.组成数据流程图的四个主要成分是 ( )
A.数据流、数据元素、处理过程、分类数据
B.数据有储、数据流、处理过程、外部实体
C.数据输入、数据输出、处理过程、数据存储
D.数据流、数据存储、数据显示、处理过程
23.系统分析报告是 ( )
A.系统评价的依据 B.系统设计的依据
C.系统规划的依据 D.程序设计的依据
24.成批处理适用于 的数据处理。 ( )
A.需要迅速响应 B.负荷易产生波动
C.需要累积后再进行 D.收集费用较高
25.根据数据的动态特性分析,通常存放病事假扣款数据项的文件类型是 ( )
A.主文件 B.周转文件
C.源文件 D.随机处理文件
26.数据流程图的概括性是指 ( )
A.完全舍去了具体的物质,只有数据的流动、加工处理和存储
B.是对整个系统管理流程从数据的角度进行概括
C.将业务流程中表现出来的物质流、信息流结构起来,完整地描述整个过程
D.是把信息中的各种不同业务处理过程联系起来,形成一个整体
27.新系统边界分析的任务是 ( )
A.明确新系统的范围 B.明确新系统与外部实体间的联系。
C.明确新系统的人机接121 D.明确新系统的业务流程和数据流程过程
28.系统分析的首要任务是 ( )
A.正确评价当前系统 B.尽量说明用户接受系统分析人员的意见
C.彻底了解管理方法 D.弄清用户要求
29.数据流程图中的外部实体是指 ( )
A.本系统的单位或人员 B.本系统外的单位或人员
C.输入的凭证单据 D.输出的凭证单据
30.系统分析阶段的工作是一个——的过程。 ( )
A.由具体到抽象 B.由抽象到具体
C.由逻辑到物理 D.由物理到逻辑
31.下列数据中,属于固定个体变动属性的数据是 ( )
A.成本系统中的定额材料消耗量
B.工资系统中的职工应得工资
C.工资系统中的水电费扣款
D.工资系统中的病事假扣款
32.资源分配模型属于管理模型的 ( )
A.综合计划模型 B.生产计划模型
C.作业计划模型 D.库存管理模型
33.系统分析报告的主要作用是 ( )
A.系统评价的依据 B.系统设计的依据
C.系统实施的依据 D.系统规划的依据
34.系统分析阶段的成果是 ( )
A.系统总体规划 B.新系统的逻辑模型
C.新系统的物理模型 D.系统说明书
35.绘制数据流程图应依照的设计思想是 ( )
A.自顶向下,逐步求精 B.自底向上,逐步求精
C.模块化 D.集成化
36.管理信息系统的研制是因为——而开始的。 ( )
A.现行的管理信息系统(人工的或计算机的)不能满足组织的要求
B.系统所承担的工作量大于系统的能力
C.上级主管部门的要求
D.管理现代经济的要求
37.数据字典的内容不包括 ( )
A.术语解释 B.数据项
C.数据结构 D.数据流程图中的元素
38.系统调查的主要内容有 ( )
A.计算机设备性能 B.管理业务状况
C.资金来源 D.MIS的运行效率
39.在MIS开发的生命周期法中,下列步骤中不属于系统分析阶段的是 ( )
A.编写程序 B.逻辑设计
C.可行性研究 D.详细设计
40.在某数据流程图中,一个元素的编号为D03—02,其含义为 ( )
A.第3个子系统中第一层图的第2个处理
B.第3个子系统中的第2个数据流
C.第3个子系统中的第2个数据存储
D.第3个子系统中的第2个外部实体
41.描述各部门之间发生的业务(单据和报表)联系可用 ( )
A.管理业务流程图 B.表格分配图
C.组织机构图 D.数据流程图
42.在MIS中为了获得有用的管理信息,首先要求 ( )
A.数据库规范化 B.打印报表清晰
C.输人数据真实可靠 D.应用程序正确
43.数据流程图的特性是具有 ( )
A.直观性和科学性 B.抽象性和概括性
C.真实性和完整性 D.科学性和概括性
44.一种存放固定值属性数据的共享文件称为 ( )
A.主文件 B.工作文件
C.处理文件 D.周转文件
45.描述各部门之间发生的业务(单据和报表)联系可用 ( )
A.管理业务流程图 B.表格分配图
C.组织机构图 D.数据流程图
46.在数据字典中,对外部实体的定义包括外部实体名称、编号、简述及 ( )
A.有关数据流的输入和输出 B.有关外部实体的存储
C.有关外部实体的处理 D.有关信息的说明
47.在数据流程图中的数据存储是指 ( )
A.单据 B.磁盘文件
C.数据库文件 D.存储数据的地方
48.资源分配模型属于管理模型中的 ( )
A.综合计划模型 B.生产汁划模型
C.作业计划模型 D.库存管理模型
答案请下载pdf版
DBA面试题
一、单项选择题
1.系统分析的主要任务是完成新系统的 ( )
A.逻辑设计 B.可行性分析
C.物理设计 D.代码设计
2.在数据字典中,对外部实体的定义包括外部实体名称、编号、简述及 ( )
A.有关数据流的输入和输出 B.有关外部实体的存储
C.有关外部实体的处理 D.有关信息的说明
3.表格分配图是 ( )
A.数据流程调查使用的工具 B.编程工具
C.系统设计工具 D.管理业务调查使用的工具
4.联机实时处理方式适用于 ( )
A.需要大量的来自不同方面的数据的综合处理
B.需要反应迅速的数据处理
C.需要在一时间内累积数据后才能进行的数据处理
D.固定周期的数据处理
5.某车间根据工人每月完成工作量计算奖金,工作量数据是________属性。 ( )
A.固定值 B.固定个体变动
C.随机变动 D.主键
6.应用采成批处理方式的情况是 ( )
A.需要及时响应 B.数据采集费用高
C.已建汁算机网络 D.定期数据处理
7.MIS战略规:划小组负责人最好是 ( )
A.信息中心的主任 B.编程人员
C.组织的高层负责人 D.系统分析员
8.在系统分析阶段划分子系统,定义信息系统总体结构常用的工具是 ( )
A.功能/组织矩阵 B.功能/数据类矩阵
C.系统/数据类矩阵 D.产品/服务流程图
9.系统调查的主要内容有 ( )
A.计算机设备性能 B.管理业务状况
C.资金来源 D.MIS的运行效率
10.在详细调查过程中,对于调查面广,而调查的信息量不大的情况,最适合采用的调查
方法是 ( )
A.访问 B.发调查问卷
C.召开调查会 D.参加业务实践
11.在管理业务流程图中,O代表 ( )
A.系统中人员 B.系统外实体
C.数据流向 D.单据、报表和账目
12.管理信息系统的规划主要是规划管理信息系统 ( )
A.设计与实施工作 B.长期的、重大的发展方向与目标
C.与其它系统的关系 D.工作环境与条件
13.数据词典是数据流程图上所有成分的定义和解释的文字集合,其主要内容有 ( )
A.数据流、数据存储、数据显示、处理功能
B.数据输入、数据输出、处理功能、数据存储
C.数据流、数据元素,数据存储、处理功能、外部项
D.数据存储、数据流、处理功能、外部项
14.在下列模型中属于生产计划模型的是 ( )
A.企业中长期计划模型 B.量本利分析模型
C.网络计划模型 D.经济批量模型
15.现行系统详细调查的目的是 ( )
A.明确系统开发要解决的主要问题
B.弄清现行系统的基本功能和信息流程
C.明确系统的目标
D.论证系统开发的必要性和可能性
16.数据流程图中的外部实体是指 ( )
A.本系统的单位或人员 B.本系统外的单位或人员
C.输入的凭证单据 D.输出的凭证单据
17.在MIS数据收集中,采用仪器直接收集数据属于 ( )
A.来源性收集数据 B.根源性收集数据
C.准确性收集数据 D.真实性收集数据
18.可行性研究的主要成果,除可行性报告外,还有 ( )
A.系统开发建议书 B.现行系统的调查报告
C.拟建新系统方案 D.系统说明书
19.关于信息系统,以下说法正确的是 ( )
A.研制过程中,重点应放在程序编写上
B.为了提高系统效率,可以忽视用户要求
C.只能完全模拟人工进行事务处理
D.对于无结构或半结构化的决策任务,应提供一系列辅助决策的方法和手段
20.在MIS开发的生命周期法中,下列步骤中不属于系统分析阶段的是 ( )
A.编写程序 B.逻辑设计
C.可行性研究 D.代码设计
21.系统开发任务是否立项的决策依据是 ( )
A.可行性研究报告 B.系统说明书
C.拟建新系统方案 D.现行系统的调查报告
22.组成数据流程图的四个主要成分是 ( )
A.数据流、数据元素、处理过程、分类数据
B.数据有储、数据流、处理过程、外部实体
C.数据输入、数据输出、处理过程、数据存储
D.数据流、数据存储、数据显示、处理过程
23.系统分析报告是 ( )
A.系统评价的依据 B.系统设计的依据
C.系统规划的依据 D.程序设计的依据
24.成批处理适用于 的数据处理。 ( )
A.需要迅速响应 B.负荷易产生波动
C.需要累积后再进行 D.收集费用较高
25.根据数据的动态特性分析,通常存放病事假扣款数据项的文件类型是 ( )
A.主文件 B.周转文件
C.源文件 D.随机处理文件
26.数据流程图的概括性是指 ( )
A.完全舍去了具体的物质,只有数据的流动、加工处理和存储
B.是对整个系统管理流程从数据的角度进行概括
C.将业务流程中表现出来的物质流、信息流结构起来,完整地描述整个过程
D.是把信息中的各种不同业务处理过程联系起来,形成一个整体
27.新系统边界分析的任务是 ( )
A.明确新系统的范围 B.明确新系统与外部实体间的联系。
C.明确新系统的人机接121 D.明确新系统的业务流程和数据流程过程
28.系统分析的首要任务是 ( )
A.正确评价当前系统 B.尽量说明用户接受系统分析人员的意见
C.彻底了解管理方法 D.弄清用户要求
29.数据流程图中的外部实体是指 ( )
A.本系统的单位或人员 B.本系统外的单位或人员
C.输入的凭证单据 D.输出的凭证单据
30.系统分析阶段的工作是一个——的过程。 ( )
A.由具体到抽象 B.由抽象到具体
C.由逻辑到物理 D.由物理到逻辑
31.下列数据中,属于固定个体变动属性的数据是 ( )
A.成本系统中的定额材料消耗量
B.工资系统中的职工应得工资
C.工资系统中的水电费扣款
D.工资系统中的病事假扣款
32.资源分配模型属于管理模型的 ( )
A.综合计划模型 B.生产计划模型
C.作业计划模型 D.库存管理模型
33.系统分析报告的主要作用是 ( )
A.系统评价的依据 B.系统设计的依据
C.系统实施的依据 D.系统规划的依据
34.系统分析阶段的成果是 ( )
A.系统总体规划 B.新系统的逻辑模型
C.新系统的物理模型 D.系统说明书
35.绘制数据流程图应依照的设计思想是 ( )
A.自顶向下,逐步求精 B.自底向上,逐步求精
C.模块化 D.集成化
36.管理信息系统的研制是因为——而开始的。 ( )
A.现行的管理信息系统(人工的或计算机的)不能满足组织的要求
B.系统所承担的工作量大于系统的能力
C.上级主管部门的要求
D.管理现代经济的要求
37.数据字典的内容不包括 ( )
A.术语解释 B.数据项
C.数据结构 D.数据流程图中的元素
38.系统调查的主要内容有 ( )
A.计算机设备性能 B.管理业务状况
C.资金来源 D.MIS的运行效率
39.在MIS开发的生命周期法中,下列步骤中不属于系统分析阶段的是 ( )
A.编写程序 B.逻辑设计
C.可行性研究 D.详细设计
40.在某数据流程图中,一个元素的编号为D03—02,其含义为 ( )
A.第3个子系统中第一层图的第2个处理
B.第3个子系统中的第2个数据流
C.第3个子系统中的第2个数据存储
D.第3个子系统中的第2个外部实体
41.描述各部门之间发生的业务(单据和报表)联系可用 ( )
A.管理业务流程图 B.表格分配图
C.组织机构图 D.数据流程图
42.在MIS中为了获得有用的管理信息,首先要求 ( )
A.数据库规范化 B.打印报表清晰
C.输人数据真实可靠 D.应用程序正确
43.数据流程图的特性是具有 ( )
A.直观性和科学性 B.抽象性和概括性
C.真实性和完整性 D.科学性和概括性
44.一种存放固定值属性数据的共享文件称为 ( )
A.主文件 B.工作文件
C.处理文件 D.周转文件
45.描述各部门之间发生的业务(单据和报表)联系可用 ( )
A.管理业务流程图 B.表格分配图
C.组织机构图 D.数据流程图
46.在数据字典中,对外部实体的定义包括外部实体名称、编号、简述及 ( )
A.有关数据流的输入和输出 B.有关外部实体的存储
C.有关外部实体的处理 D.有关信息的说明
47.在数据流程图中的数据存储是指 ( )
A.单据 B.磁盘文件
C.数据库文件 D.存储数据的地方
48.资源分配模型属于管理模型中的 ( )
A.综合计划模型 B.生产汁划模型
C.作业计划模型 D.库存管理模型
答案请下载pdf版
oracle:IF语句 Loop循环 Cursor的用法(二)
作者:admin 日期:2010-09-27
Oracle:IF语句 Loop循环 Cursor的用法(一)
作者:admin 日期:2010-09-25
九月是荒废的一月,因为工作 生活中的种种不如意,使很多本该完成的事情都没有去做.心思越重,心则致远.我还是要过我自己的生活,未来的事情,希望能不给自己添赌.
这个我一时忘记是从哪里获取来的,只是IF..Else与Loop的结合使用在PL-SQL中运用得很多,发挥的作用也是不言而喻的.
那就从最基本的开始吧,我这里也只能给出Example代码,权当复习一下,与大家分享
1.IF语句
基本的语句:
格式: IF 条件 THEN
执行.
END IF
Example:
set serveroutput on
DECLARE
x NUMBER(3) := 9;
BEGIN
IF x < 10 THEN
dbms_output.put_line('X is less than 10');
END IF;
END;
/
2.IF - ELSE 语句
格式:
IF <条件> THEN
<执行语句>
ELSE
<执行语句>
END IF;
Example:
set serveroutput on
DECLARE
x NUMBER(3) := 10;
BEGIN
IF x < 10 THEN
dbms_output.put_line('X is less than 10');
ELSE
dbms_output.put_line('X is not less than 10');
END IF;
END;
/
3.IF - ELSIF - ELSE 语句
格式:
IF <执行的条件>THEN
<执行代码>
ELSIF <执行的条件>THEN
<执行代码>
ELSIF <执行的条件>THEN
<执行代码>
ELSE
<执行代码>
END IF;
Example:
set serveroutput on
DECLARE
x NUMBER(3) := 47;
BEGIN
IF x < 10 THEN
dbms_output.put_line('X 小于 10');
ELSIF x = 10 THEN
dbms_output.put_line('X 等于 10');
ELSIF x < 100 THEN
dbms_output.put_line('X 在 11 与 99 之间');
ELSE
dbms_output.put_line('X 大于 99');
END IF;
END;
/
Basic Loop
测试表:
Create TABLE loop_test (test_col VARCHAR2(5));
1.Loop
格式:
LOOP
<执行代码>
END LOOP;
Example:
DECLARE
i PLS_INTEGER := 1;
BEGIN
LOOP
i := i + 1;
Insert INTO loop_test VALUES (i);
IF i > 99 THEN
EXIT;
END IF;
END LOOP;
COMMIT;
END;
/
Select * FROM loop_test;
注:基本的LOOP循环的执行需要通过代码去判断何时开始与结束
2.While Loop
如果不能确定循环的基数时,采用WHILE LOOP.While LOOP是保证至少执行了一次循环
WHILE <执行的条件>
LOOP
<执行代码>
END LOOP;
DECLARE
i PLS_INTEGER := 999;
BEGIN
WHILE i < 1100 LOOP
i := i + 1;
Insert INTO loop_test VALUES (i);
END LOOP;
COMMIT;
END;
/
Select * FROM loop_test;
3.FOR Loop
格式:
-- incrementing
FOR <变量>IN <开始数> .. <结束数>
LOOP
<执行代码>
END LOOP;
-- decrementing
FOR <变量>IN REVERSE <开始数> .. <结束数>
LOOP
<执行代码>
END LOOP;
Example:
BEGIN
FOR i IN 2000 .. 2100 LOOP
Insert INTO loop_test VALUES (i);
END LOOP;
COMMIT;
END;
/
Select * FROM loop_test;
BEGIN
FOR i IN REVERSE 3000 .. 3100 LOOP
Insert INTO loop_test VALUES (i);
END LOOP;
COMMIT;
END;
/
Select * FROM loop_test;
Continue的用法
格式:
LOOP
<执行代码>
CONTINUE;
<执行代码>
END LOOP;
Example:
set serveroutput on
Create or REPLACE PROCEDURE cont_test (val IN POSITIVEN) IS
BEGIN
FOR i IN 1 .. 3 LOOP
dbms_output.put_line('i=' || TO_CHAR(i));
IF val = 2 THEN
CONTINUE;
END IF;
dbms_output.put_line('Did not jump to the top of the loop');
END LOOP;
END cont_test;
/
exec cont_test(3);
exec cont_test(2);
这个我一时忘记是从哪里获取来的,只是IF..Else与Loop的结合使用在PL-SQL中运用得很多,发挥的作用也是不言而喻的.
那就从最基本的开始吧,我这里也只能给出Example代码,权当复习一下,与大家分享
1.IF语句
基本的语句:
格式: IF 条件 THEN
执行.
END IF
Example:
复制内容到剪贴板 程序代码
set serveroutput on
DECLARE
x NUMBER(3) := 9;
BEGIN
IF x < 10 THEN
dbms_output.put_line('X is less than 10');
END IF;
END;
/
2.IF - ELSE 语句
格式:
IF <条件> THEN
<执行语句>
ELSE
<执行语句>
END IF;
Example:
复制内容到剪贴板 程序代码
set serveroutput on
DECLARE
x NUMBER(3) := 10;
BEGIN
IF x < 10 THEN
dbms_output.put_line('X is less than 10');
ELSE
dbms_output.put_line('X is not less than 10');
END IF;
END;
/
3.IF - ELSIF - ELSE 语句
格式:
IF <执行的条件>THEN
<执行代码>
ELSIF <执行的条件>THEN
<执行代码>
ELSIF <执行的条件>THEN
<执行代码>
ELSE
<执行代码>
END IF;
Example:
复制内容到剪贴板 程序代码
set serveroutput on
DECLARE
x NUMBER(3) := 47;
BEGIN
IF x < 10 THEN
dbms_output.put_line('X 小于 10');
ELSIF x = 10 THEN
dbms_output.put_line('X 等于 10');
ELSIF x < 100 THEN
dbms_output.put_line('X 在 11 与 99 之间');
ELSE
dbms_output.put_line('X 大于 99');
END IF;
END;
/
Basic Loop
测试表:
Create TABLE loop_test (test_col VARCHAR2(5));
1.Loop
格式:
LOOP
<执行代码>
END LOOP;
Example:
复制内容到剪贴板 程序代码
DECLARE
i PLS_INTEGER := 1;
BEGIN
LOOP
i := i + 1;
Insert INTO loop_test VALUES (i);
IF i > 99 THEN
EXIT;
END IF;
END LOOP;
COMMIT;
END;
/
Select * FROM loop_test;
注:基本的LOOP循环的执行需要通过代码去判断何时开始与结束
2.While Loop
如果不能确定循环的基数时,采用WHILE LOOP.While LOOP是保证至少执行了一次循环
WHILE <执行的条件>
LOOP
<执行代码>
END LOOP;
复制内容到剪贴板 程序代码
DECLARE
i PLS_INTEGER := 999;
BEGIN
WHILE i < 1100 LOOP
i := i + 1;
Insert INTO loop_test VALUES (i);
END LOOP;
COMMIT;
END;
/
Select * FROM loop_test;
3.FOR Loop
格式:
-- incrementing
FOR <变量>IN <开始数> .. <结束数>
LOOP
<执行代码>
END LOOP;
-- decrementing
FOR <变量>IN REVERSE <开始数> .. <结束数>
LOOP
<执行代码>
END LOOP;
Example:
复制内容到剪贴板 程序代码
BEGIN
FOR i IN 2000 .. 2100 LOOP
Insert INTO loop_test VALUES (i);
END LOOP;
COMMIT;
END;
/
Select * FROM loop_test;
BEGIN
FOR i IN REVERSE 3000 .. 3100 LOOP
Insert INTO loop_test VALUES (i);
END LOOP;
COMMIT;
END;
/
Select * FROM loop_test;
Continue的用法
格式:
LOOP
<执行代码>
CONTINUE;
<执行代码>
END LOOP;
Example:
复制内容到剪贴板 程序代码
set serveroutput on
Create or REPLACE PROCEDURE cont_test (val IN POSITIVEN) IS
BEGIN
FOR i IN 1 .. 3 LOOP
dbms_output.put_line('i=' || TO_CHAR(i));
IF val = 2 THEN
CONTINUE;
END IF;
dbms_output.put_line('Did not jump to the top of the loop');
END LOOP;
END cont_test;
/
exec cont_test(3);
exec cont_test(2);
异常:HRESULT: 0x80070057 (E_INVALIDARG) 的处理
作者:admin 日期:2010-08-26
碰到这个异常的原因很偶然:
现象:
Solution在ReBuild过程中断电了,来电恢复了,重析编译整个Solution不报错,但在浏览页面时始终无法正常浏览,而在design的视图中,每个aspx的首行代码都报错。
解决过程:
搜索找到很多国内的方案,有的建议重新引用AjaxControlToolkit.dll,还有就是清除asp.net的缓存文件,但都没有看到想要的效果,最后在一个国外MSDN的贴子(http://social.msdn.microsoft.com/Forums/en-US/csharpide/thread/352c58ec-65d8-4d77-ac7b-d2338c621ef3)中看到种种处理办法.
相关方法可以尝试一下,不能保证所有的方案都能达到效果,但应该也八九不离十了吧。呵呵。
方案1:清空Temporary ASP.NET Files文件夹的文件,重新编译
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\MyWebService and recompiled and it worked fine.
这个方法是网上推荐得最多的方案,好像也可行,也不可行。里面有些文件不能直接删除,需要通过特殊手段进行删除。
方案2:卸载系统上所有的Net Framework的版本,IIS,重新安装Net Framework,IIS
这个方法好像比较麻烦,而且也不太能确定能达到解决异常的效果。就网上看到的结果而言,大多数人这样操作并没有解决问题。这里要注意安装的顺序
•Uninstall .NET (Runtime and SDK)->Uninstall IIS->Install .NET (Runtime and SDK)->Install IIS
方案3:这个方法我没看懂,就不解释了,貌似比较复杂Background: The assembly causing me trouble was built in house and I did not have the source code.
Required: You need the Visual Studio SDK for ildasm.exe
Steps:
1.) Disassemble the .dll with the command ildasm.exe AssemblyName.dll /out:AssemblyName.il
2.) Open the newly created AssemblyName.il with a text editor and search for "permissionset"
3.) Find and delete the following lines:
.permissionset reqmin
= {[mscorlib]System.Security.Permissions.PermissionSetAttribute = {property string 'Name' = string('nobody')},
[mscorlib]System.Security.Permissions.SecurityPermissionAttribute = {property bool 'Execution' = bool(true)}}
4.) Save and rebuild the assembly with the following command: ilasm.exe AssemblyName.il /dll
5.) Throw the new dll in your bin directory or if it's strong named and needed in the GAC you can put it there.
方案4:清除 系统盘:\用户\用户名称\AppData\Local\Temp\Temporary ASP.NET Files里面的文件
C:\Users\<name>\AppData\Local\Temp\Temporary ASP.NET Files
我是用这个方案搞掂的,恰巧我的是win7的系统.不过好像这个与方案1配合使用较好.注意:Vista系统与Window7系统这个尤为适合
一点心得,与大家分享。欢迎指正。
现象:
Solution在ReBuild过程中断电了,来电恢复了,重析编译整个Solution不报错,但在浏览页面时始终无法正常浏览,而在design的视图中,每个aspx的首行代码都报错。
解决过程:
搜索找到很多国内的方案,有的建议重新引用AjaxControlToolkit.dll,还有就是清除asp.net的缓存文件,但都没有看到想要的效果,最后在一个国外MSDN的贴子(http://social.msdn.microsoft.com/Forums/en-US/csharpide/thread/352c58ec-65d8-4d77-ac7b-d2338c621ef3)中看到种种处理办法.
相关方法可以尝试一下,不能保证所有的方案都能达到效果,但应该也八九不离十了吧。呵呵。
方案1:清空Temporary ASP.NET Files文件夹的文件,重新编译
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\MyWebService and recompiled and it worked fine.
这个方法是网上推荐得最多的方案,好像也可行,也不可行。里面有些文件不能直接删除,需要通过特殊手段进行删除。
方案2:卸载系统上所有的Net Framework的版本,IIS,重新安装Net Framework,IIS
这个方法好像比较麻烦,而且也不太能确定能达到解决异常的效果。就网上看到的结果而言,大多数人这样操作并没有解决问题。这里要注意安装的顺序
•Uninstall .NET (Runtime and SDK)->Uninstall IIS->Install .NET (Runtime and SDK)->Install IIS
方案3:这个方法我没看懂,就不解释了,貌似比较复杂Background: The assembly causing me trouble was built in house and I did not have the source code.
Required: You need the Visual Studio SDK for ildasm.exe
Steps:
1.) Disassemble the .dll with the command ildasm.exe AssemblyName.dll /out:AssemblyName.il
2.) Open the newly created AssemblyName.il with a text editor and search for "permissionset"
3.) Find and delete the following lines:
.permissionset reqmin
= {[mscorlib]System.Security.Permissions.PermissionSetAttribute = {property string 'Name' = string('nobody')},
[mscorlib]System.Security.Permissions.SecurityPermissionAttribute = {property bool 'Execution' = bool(true)}}
4.) Save and rebuild the assembly with the following command: ilasm.exe AssemblyName.il /dll
5.) Throw the new dll in your bin directory or if it's strong named and needed in the GAC you can put it there.
方案4:清除 系统盘:\用户\用户名称\AppData\Local\Temp\Temporary ASP.NET Files里面的文件
C:\Users\<name>\AppData\Local\Temp\Temporary ASP.NET Files
我是用这个方案搞掂的,恰巧我的是win7的系统.不过好像这个与方案1配合使用较好.注意:Vista系统与Window7系统这个尤为适合
一点心得,与大家分享。欢迎指正。
NPOI动态获取数据源绑定Gridview显示
作者:admin 日期:2010-08-10
第一次用这个东西,还是比较顺利,用起来也比较好 记录一下
1.引用
using NPOI;
using NPOI.HSSF;
using NPOI.DDF;
using NPOI.POIFS;
using NPOI.HSSF.UserModel;
using NPOI.HPSF;
using NPOI.POIFS.FileSystem;
2.主要代码
/// <summary>
/// 绑定数据
/// </summary>
protected void BindExcelData()
{
//先上传 再打开
HSSFWorkbook workbook = new HSSFWorkbook(this.fupFile.FileContent);
HSSFSheet sheet = workbook.GetSheetAt(0);
DataTable table = new DataTable();
HSSFRow headerRow = sheet.GetRow(0);
int cellCount = headerRow.LastCellNum;
//一定要对单元格类型作判断 否则会报错 cannot get a string value from a numeric cell
for (int i = headerRow.FirstCellNum; i < cellCount; i++)
{
if (headerRow.GetCell(i) == null || headerRow.GetCell(i).StringCellValue.Trim() == "")
{
// 如果遇到第一个空列,则不再继续向后读取
cellCount = i + 1;
break;
}
DataColumn column = new DataColumn(headerRow.GetCell(i).StringCellValue);
table.Columns.Add(column);
}
int rowCount = sheet.LastRowNum;
for (int i = (sheet.FirstRowNum + 1); i <= sheet.LastRowNum; i++)
{
HSSFRow row = sheet.GetRow(i);
if (row == null || row.GetCell(0) == null || row.GetCell(0).ToString().Trim() == "")
{
// 如果遇到第一个空行,则不再继续向后读取
break;
}
DataRow dataRow = table.NewRow();
for (int j = row.FirstCellNum; j < cellCount - 1; j++)
{
if (row.GetCell(j) != null)
{
dataRow[j] = row.GetCell(j).ToString();
}
}
table.Rows.Add(dataRow);
}
//workbook = null;
//sheet = null;
this.gdvList.DataSource = table;
this.gdvList.AutoGenerateColumns = true;
this.gdvList.DataBind();
gdvList.DataKeyNames = new string[] { "IMEI" };
this.gdvList.PageSize = 20000;
lblCount.Text = gdvList.Rows.Count.ToString();
}
3.要注意的地方
NPOI对日期格式的转换,显示出来的日期不是我们常用的yyyy-MM-dd格式,需要做特殊判断
public static string ConvertDate(string date)
{
string[] orginDate = date.Trim().Split('-');
string year = orginDate[2].ToString().Trim();
string day = orginDate[1].ToString().Trim();
string month = orginDate[0].ToString().Trim();
if (day.Length == 1)
{
day = "0" + day.ToString();
}
if (month.Length == 1)
{
month = "0" + month.ToString().Trim();
}
if (year.Length == 2)
{
year = "20" + year.ToString().Trim();
}
return year + "-" + month + "-" + day;
}
1.引用
using NPOI;
using NPOI.HSSF;
using NPOI.DDF;
using NPOI.POIFS;
using NPOI.HSSF.UserModel;
using NPOI.HPSF;
using NPOI.POIFS.FileSystem;
2.主要代码
复制内容到剪贴板 程序代码
/// <summary>
/// 绑定数据
/// </summary>
protected void BindExcelData()
{
//先上传 再打开
HSSFWorkbook workbook = new HSSFWorkbook(this.fupFile.FileContent);
HSSFSheet sheet = workbook.GetSheetAt(0);
DataTable table = new DataTable();
HSSFRow headerRow = sheet.GetRow(0);
int cellCount = headerRow.LastCellNum;
//一定要对单元格类型作判断 否则会报错 cannot get a string value from a numeric cell
for (int i = headerRow.FirstCellNum; i < cellCount; i++)
{
if (headerRow.GetCell(i) == null || headerRow.GetCell(i).StringCellValue.Trim() == "")
{
// 如果遇到第一个空列,则不再继续向后读取
cellCount = i + 1;
break;
}
DataColumn column = new DataColumn(headerRow.GetCell(i).StringCellValue);
table.Columns.Add(column);
}
int rowCount = sheet.LastRowNum;
for (int i = (sheet.FirstRowNum + 1); i <= sheet.LastRowNum; i++)
{
HSSFRow row = sheet.GetRow(i);
if (row == null || row.GetCell(0) == null || row.GetCell(0).ToString().Trim() == "")
{
// 如果遇到第一个空行,则不再继续向后读取
break;
}
DataRow dataRow = table.NewRow();
for (int j = row.FirstCellNum; j < cellCount - 1; j++)
{
if (row.GetCell(j) != null)
{
dataRow[j] = row.GetCell(j).ToString();
}
}
table.Rows.Add(dataRow);
}
//workbook = null;
//sheet = null;
this.gdvList.DataSource = table;
this.gdvList.AutoGenerateColumns = true;
this.gdvList.DataBind();
gdvList.DataKeyNames = new string[] { "IMEI" };
this.gdvList.PageSize = 20000;
lblCount.Text = gdvList.Rows.Count.ToString();
}
3.要注意的地方
NPOI对日期格式的转换,显示出来的日期不是我们常用的yyyy-MM-dd格式,需要做特殊判断
复制内容到剪贴板 程序代码
public static string ConvertDate(string date)
{
string[] orginDate = date.Trim().Split('-');
string year = orginDate[2].ToString().Trim();
string day = orginDate[1].ToString().Trim();
string month = orginDate[0].ToString().Trim();
if (day.Length == 1)
{
day = "0" + day.ToString();
}
if (month.Length == 1)
{
month = "0" + month.ToString().Trim();
}
if (year.Length == 2)
{
year = "20" + year.ToString().Trim();
}
return year + "-" + month + "-" + day;
}
Web开发电子期刊 2010年第5期(第45期)
作者:admin 日期:2010-06-29
FlashPaper2在Windows7不能使用的解决方案
作者:admin 日期:2010-06-10
FlashPaper2比起acrobat reader来说小巧得多,用来转pdf及swf都很不错。可是好像不能在windows7下正常使用。
报错原因是找不到flashpaper打印机
Error: Could not find FlashPaper Printer
如图:
G了一下,在Adobe有相关的页面链接
http://kb2.adobe.com/cps/670/2fc670f6.html
我把这个打印机的动驱动也上传上来,免得大家查找
报错原因是找不到flashpaper打印机
Error: Could not find FlashPaper Printer
如图:
G了一下,在Adobe有相关的页面链接
http://kb2.adobe.com/cps/670/2fc670f6.html
我把这个打印机的动驱动也上传上来,免得大家查找
Web开发电子期刊 2010年第4期(第44期)
作者:admin 日期:2010-05-24
感谢所有文章的原创作者
本期内容:
NET
ASP.NET在线压缩与在线解压缩
Excel导入SQL数据库
对实体类进行排序
C#几个常用经典算法
Asp.net(C#)对文件操作的方法(读取,删除,批量拷贝,删除...)
DatagridView 常用功能代码
Asp.net 将word转换成html
Asp.net页面出错时的处理方法
Visual Studio常用小技巧
求最大整数,求最小整数,求组数,求分组数
Asp.net ajax 弹不出alert对话框的解决办法
XmlDocument序列化到Session
JAVA
spring典型配置完整实例
TimerTask定时任务使用示例
spring框架实现事务管理的理解
Java文件压缩
spring中读取xml配置文件、获取bean的几种方式
Java IO流各种使用方式总结
Java Socket多线程如何支持服务器模型
Java Socket会话如何实施共享
Java线程池在运行后的结果反查
Java Socket线程的设计原理介绍
常见hibernate面试题
CSV文件读取与生成以及Excel文件的读取生成
JAVAscript/HTML
javascript中replace(regExp, function)用法
CSS面试经典题
使文本框自动适应内容的高度
html meta标签属性用法集合
静态页面与动态页面各自的执行机制
JS获得指定时间的星期信息
JSON的格式
Javascript 验证函数集合
用Javascript将网页内容导出到Excel
JQuery动画弹出窗体支持多种展现方式
Jquery 实现弹出层效果
Js实现div拖动控制
随滚动条移动的层
Js url 编码 和C# url 编码
SQL SERVER
sql server数据库性能的优化
支持定位当前页,自定义排序的分页SQL
SQL Server 数据库故障修复顶级技巧
SQL SERVER与ACCESS,EXCEL的数据转换
表的设计命名的十个注意点
数据库设计流程
T_SQL 开发的13个Tips
T-SQL循环打印一年中所有的日期(WHILE循环)
SQL高级语句
Oracle
oracle 比较字符串包含关系
oracle 合并列数据
oracle数据库中的(+)连接如何操作
oracle后台进程的功能简介
oracle查询语句应用经验总结
oracle数据库与FoxPro数据如何转换
oracle DATA GUARD的的功能概述
oracle数据库sqlplus常用命令
oracle的主外键约束记录
生活 职场
人际关系经验
你人脉网中应该有的10种人
办公室影响同事关系的九种行为
我路过别人的故事,眼眶里却满含泪水
烧开一壶水的智慧
一封写给自己的信
在幻变的生命里 岁月偷不走的是价值
成功者必备的12个好习惯
Oracle PL/SQL:IF语句的使用
作者:admin 日期:2010-05-23
原文:http://psoug.org/reference/control_struct.html
IF语句的使用
A.基本的IF条件语句:
基本语法:
IF <condition> THEN
<code here>
END IF;
Example:
SQL> set serveroutput on;
SQL> declare
x number(3):=9;
begin
if x<10 then
dbms_output.put_line('x is less than10');
end if;
end;
/
结果:
x is less than10
PL/SQL procedure successfully completed
B.IF - ELSE 语句
基本语法:
IF <condition> THEN
<code here>
ELSE
<code here>
END IF;
Example:
DECLARE
x NUMBER(3) := 10;
BEGIN
IF x < 10 THEN
dbms_output.put_line('X is less than 10');
ELSE
dbms_output.put_line('X is not less than 10');
END IF;
END;
/
结果:
X is not less than 10
PL/SQL procedure successfully completed
C:IF - ELSIF - ELSE 语句
基本语法:
IF <condition> THEN
<code here>
ELSIF <condition> THEN
<code here>
ELSIF <condition> THEN
<code here>
ELSE
<code here>
END IF;
Example:
set serveroutput on
DECLARE
x NUMBER(3) := 47;
BEGIN
IF x < 10 THEN
dbms_output.put_line('X is less than 10');
ELSIF x = 10 THEN
dbms_output.put_line('X is equal to 10');
ELSIF x < 100 THEN
dbms_output.put_line('X is between 11 and 99');
ELSE
dbms_output.put_line('X is greater than 99');
END IF;
END;
/
结果:
X is between 11 and 99
PL/SQL procedure successfully completed
D:与NULL值比较处理
Example:
declare
v NUMBER;
begin
if v = 1 then
DBMS_OUTPUT.put_line('Equal to 1');
elsif v!= 1 then
DBMS_OUTPUT.put_line('Not equal to 1');
elsif v = v then
DBMS_OUTPUT.put_line('Equal to itself');
else
DBMS_OUTPUT.put_line('Undefined result');
end if;
v:=v+1;
DBMS_OUTPUT.put_line('New value: <'||v||'>');
end;
/
结果:
Undefined result
New value: <>
PL/SQL procedure successfully completed
IF语句的使用
A.基本的IF条件语句:
基本语法:
复制内容到剪贴板 程序代码
IF <condition> THEN
<code here>
END IF;
Example:
复制内容到剪贴板 程序代码
SQL> set serveroutput on;
SQL> declare
x number(3):=9;
begin
if x<10 then
dbms_output.put_line('x is less than10');
end if;
end;
/
结果:
x is less than10
PL/SQL procedure successfully completed
B.IF - ELSE 语句
基本语法:
复制内容到剪贴板 程序代码
IF <condition> THEN
<code here>
ELSE
<code here>
END IF;
Example:
复制内容到剪贴板 程序代码
DECLARE
x NUMBER(3) := 10;
BEGIN
IF x < 10 THEN
dbms_output.put_line('X is less than 10');
ELSE
dbms_output.put_line('X is not less than 10');
END IF;
END;
/
结果:
X is not less than 10
PL/SQL procedure successfully completed
C:IF - ELSIF - ELSE 语句
基本语法:
复制内容到剪贴板 程序代码
IF <condition> THEN
<code here>
ELSIF <condition> THEN
<code here>
ELSIF <condition> THEN
<code here>
ELSE
<code here>
END IF;
Example:
复制内容到剪贴板 程序代码
set serveroutput on
DECLARE
x NUMBER(3) := 47;
BEGIN
IF x < 10 THEN
dbms_output.put_line('X is less than 10');
ELSIF x = 10 THEN
dbms_output.put_line('X is equal to 10');
ELSIF x < 100 THEN
dbms_output.put_line('X is between 11 and 99');
ELSE
dbms_output.put_line('X is greater than 99');
END IF;
END;
/
结果:
X is between 11 and 99
PL/SQL procedure successfully completed
D:与NULL值比较处理
Example:
复制内容到剪贴板 程序代码
declare
v NUMBER;
begin
if v = 1 then
DBMS_OUTPUT.put_line('Equal to 1');
elsif v!= 1 then
DBMS_OUTPUT.put_line('Not equal to 1');
elsif v = v then
DBMS_OUTPUT.put_line('Equal to itself');
else
DBMS_OUTPUT.put_line('Undefined result');
end if;
v:=v+1;
DBMS_OUTPUT.put_line('New value: <'||v||'>');
end;
/
结果:
Undefined result
New value: <>
PL/SQL procedure successfully completed